GitHub bot avtomatik necə ediləcək? (Node.js)

Unsplash-də Rayan Quintalın şəkli

Profil seçimləri haqqında, GitHub, namizədin kodlaşdırma ehtirasını qiymətləndirmək üçün yaxşı bir yoldur.

Tipik müsahib əvvəlcə geliştiricinin şəbəkəsini yoxlayaraq davam edəcək, yaşıl meydanlar nə qədər çox olarsa, bir o qədər yaxşıdır. Xüsusi olaraq bazar və şənbə günləri.

Ssenari (index.js):

const app = tələb ("экспресс") () const util = tələb ("" istifadə ") const gözləmə = util.promisify (setTimeout) const exec = util.promisify (tələb (" uşaq_process "). exec) const CronJob = tələb ( "cron") .CronJob 
const job = yeni CronJob ("0 * * * *", () => script (), null, əsl, "America / Los_Angeles") job.start ()
async funksiyası skript () {const newFile = Math.random (). toString (36) .substring (7) cəhd edin {gözləyin exec (`toxunma faylları / $ {newFile} .js`) .stec icra gözləyir (` əlavə et əlavə edin). `) .tam gözləyin gözləyin (5000) icra gözləyin (` git törətmək -m "yeni törətmə" `) .qədər gözləyin gözləyin (7000) icra gözləyin (` git push`) .dərisi gözləyin (8000) icra gözləyin (`rm -r faylları / $ {newFile} .js`) .fəaliyyət gözləyin (2000) gözləyin console.log ("bitir")} tutmaq (e) {console.log (e)}}
app.listen (process.env.PORT || 5000, () => console.log ("node çalışır"))

Necə qaçmaq olar?

# github'u SSH vasitəsi ilə çəkdiyinizə əmin olun. Https ilə çəkmək əlbətdə deyil.
$ npm tashabb $ npm təcili cron $ node index.js quraşdırın

Ssenari nə edir?

  • Cron, qabıq əmrlərini icra edən bir uşağa kürü tökür
  • shell əmrləri bir fayl yaradır, github repo-nu itələyin və sonra fay faylı silin

Fəndlər:

  • Cron işini tənzimləmək üçün bu veb saytı tövsiyə edirəm: https://crontab.guru/ (istədiyinizi birbaşa istədiyiniz kimi əldə edə bilərsiniz: https://crontab.guru/every-2-hours, https://crontab.guru / hər 20 dəqiqədən bir)
  • Qızartılmamaq üçün xüsusi bir repo verin;)
  • Təbii sərt coder kimi görünmək üçün tapşırıqların vaxtını təsadüfi etmək üçün çox sayda cron işini qurun
  • Bunu bulud serverinizə əlavə edin

Zəhmət olmasa, bir az claps qoyun, yoxsa Medium-da bir alqış botu yaratmalıyıq.