Sobes.tech
Junior

Mire fut a runner pipeline a GitLab CI-ben?

sobes.tech MI

Válasz az MI-től

A GitLab Runner egy ügynök, amely végrehajtja a pipeline feladatait. A Runner különböző platformokon futtatható:

  • Virtuális gép vagy fizikai szerver: Hagyományos módszer, amely teljes kontrollt biztosít a környezet felett.
  • Konténerek (Docker): Lehetővé teszi minden feladat izolált, szabványos környezetben történő futtatását. Ez a legnépszerűbb módszer.
  • Kubernetes: A GitLab Runner rendelkezik Kubernetes végrehajtóval (executor), amely minden feladatot külön podban futtat.
  • Felhőszolgáltatók: Néhány felhőszolgáltató szolgáltatásokat kínál konténerek vagy virtuális gépek futtatására, amelyeket Runnerként lehet használni.
  • macOS / Windows: Ezeken az operációs rendszereken futtatható a runner, specifikus projektek fordítására.

A runner konfigurálásakor meg kell adni egy "executor"-t, amely meghatározza, hogyan hajtódnak végre a feladatok. A leggyakoribbak: docker, shell, kubernetes.

Docker executor használatával például a .gitlab-ci.yml fájlban így lehet definiálni egy runnert:

stages:
  - build

build_job:
  stage: build
  script:
    - echo "Projekt építése..."

Ebben a példában a build_job feladat egy olyan runnert fog használni, amely konfigurálva van a docker executorral. A GitLab Runner megkapja ezt a feladatot, és egy új Docker konténerben fogja futtatni, a konfigurációban megadott vagy a .gitlab-ci.yml-ben szereplő (ha image van megadva) Docker kép segítségével.