Sobes.tech
Middle

GitLab Runner qanday ishlaydi?

sobes.tech AI

AIdan javob

GitLab Runner — bu CI/CD vazirini ishga tushiradigan agent. U API orqali GitLab CI/CD bilan ma'lumot almashadi. GitLabda hodisa yuz berganda, pipeline (masalan, commit) boshlanganda, GitLab so'rov yuboradi. Runner vazifani oladi, repositoryni klonlaydi, .gitlab-ci.yml da yozilgan buyruqlarni bajaradi va natijani GitLabga yuboradi.

Asosiy ishlash jihatlari:

  • Runner turlari: Shared, Specific, Group. Ularning ko'rinish doirasi va loyihalar uchun mavjudligi bilan farq qiladi.
  • Executor (Ijrochi): Vazifalar bajariladigan muhitni belgilaydi. Mashhur ijrochilar: shell, docker, kubernetes, virtualbox, ssh. Ijrochini tanlash, izolatsiya va bajarish muhitiga ta'sir qiladi.
  • Ro'yxatdan o'tkazish: Runner GitLabga token yordamida ro'yxatdan o'tadi, uni aniq instansiya, guruh yoki loyiha bilan bog'laydi.
  • Polling (so'rov): Runner vaqti-vaqti bilan GitLabni yangi vazifalar uchun so'rov qiladi.
  • config.toml: Runner konfiguratsiya fayli bo'lib, sozlamalarni, ijrochi turini, parallel vazifalar sonini va boshqa parametrlarni belgilaydi.

config.toml tuzilmasi misoli:

# global sozlamalar
concurrent = 4

# runner sozlamalari
[[runners]]
  name = "my-docker-runner"
  url = "https://gitlab.com/"
  token = "YOUR_RUNNER_TOKEN"
  executor = "docker" # ijrochini tanlash
  [runners.docker]
    tls_verify = false
    image = "ubuntu:latest" # docker ijrochisi uchun rasm
    privileged = false
    disable_entrypoint_overwrite = false
    oom_kill_disable = false
    disable_cache = false
    volumes = ["/cache"]
    shm_size = 0
  [runners.cache]
    [runners.cache.s3]
    [runners.cache.gcs]