Middle
Kaip veikia GitLab Runner?
sobes.tech AI
Atsakymas iš AI
GitLab Runner - tai agentas, kuris vykdo CI/CD užduotis. Jis keičiasi duomenimis su GitLab CI/CD naudodamas API. Kai GitLab įvyksta įvykis, kuris paleidžia pipeline'ą (pavyzdžiui, commit), GitLab siunčia užklausą runner'ui. Runner'is paima užduotį, klonuoja saugyklą, vykdo komandas, aprašytas .gitlab-ci.yml, ir siunčia rezultatą atgal į GitLab.
Pagrindiniai darbo aspektai:
- Runner'ų tipai: Shared, Specific, Group. Skiriasi matomumo sritis ir prieinamumas projektams.
- Executor (Vykdytojas): Nustato aplinką, kurioje bus vykdomos užduotys. Populiarūs vykdytojai:
shell,docker,kubernetes,virtualbox,ssh. Vykdytojo pasirinkimas veikia izoliaciją ir vykdymo aplinką. - Registracija: Runner'is registruojasi GitLab naudojant token'ą, susiejant jį su konkrečiu instancijos, grupės ar projekto.
- Pollinimas: Runner'is periodiškai tikrina GitLab dėl naujų užduočių.
config.toml: Konfigūracijos failas, nustatantis runner'io parametrus, įskaitant vykdytojo tipą, paralelinių užduočių skaičių ir kitus parametrus.
Pavyzdinė config.toml struktūra:
# globaliniai nustatymai
concurrent = 4
# runner'io nustatymai
[[runners]]
name = "mano-docker-runner"
url = "https://gitlab.com/"
token = "JŪSŲ_RUNNER_TOKEN"
executor = "docker" # vykdytojo pasirinkimas
[runners.docker]
tls_verify = false
image = "ubuntu:latest" # vaizdas naudojant docker vykdytoją
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]