prog:gitlab
Ceci est une ancienne révision du document !
Table des matières
Configuration
.gitlab-ci.yml
Windows
Pour appeler une commande nécessitant l'opérateur Call &, il faut passer par le multiligne :
- | & $Env:VARIABLE
Variables d'environnement
CI_PIPELINE_SOURCE
Les variables d'environnement ne sont pas les mêmes en fonction du pipeline source.
CI_PIPELINE_SOURCE=merge_request_event CI_MERGE_REQUEST_TARGET_BRANCH_NAME=main CI_MERGE_REQUEST_SOURCE_BRANCH_NAME=125-secure_ci CI_COMMIT_BRANCH=
CI_PIPELINE_SOURCE=push CI_COMMIT_BRANCH=125-secure_ci CI_MERGE_REQUEST_TARGET_BRANCH_NAME= CI_MERGE_REQUEST_SOURCE_BRANCH_NAME=
API
Ici, le token doit avec un accès “API”.
Admin
Supprimer tous les artefacts
curl --request DELETE --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/projects/1/artifacts"
Remove artifacts from CI manually Archive du 28/02/2017 le 19/11/2024
Python
Utiliser GitPython] et sa [[https://gitpython.readthedocs.io/en/stable/|documentation.
gl = Gitlab(url=GITLAB_URL, private_token=GITLAB_TOKEN) gl.auth() project_docker_ci = gl.projects.get(PROJECT_DOCKERCI_ID) pipeline_docker_ci = project_docker_ci.pipelines.create({"ref": REF_DOCKERCI_ID}) jobs_docker_ci = pipeline_docker_ci.jobs.list(get_all=True) # Restart all jobs for job in jobs_docker_ci: real_job = project_docker_ci.jobs.get(job.id) real_job.refresh() print(f"Starting {real_job.name} with previous status {id.status}") real_job.play()
Et pour le typage:
from gitlab.v4.objects import ProjectJob
prog/gitlab.1764587324.txt.gz · Dernière modification : de root
