From 2504892432f2eb17ef6319f17273e7a036f4f333 Mon Sep 17 00:00:00 2001 From: "Vincent Namy (EDU_GE)" <vincent.namy@edu.ge.ch> Date: Thu, 26 Dec 2024 15:38:39 +0100 Subject: [PATCH] =?UTF-8?q?Mettre=20=C3=A0=20jour=20le=20fichier=20.gitlab?= =?UTF-8?q?-ci.yml?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitlab-ci.yml | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index e69de29..040f76d 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -0,0 +1,35 @@ +stages: + - format + +format_files: + stage: format + image: python:3.10 + before_script: + - pip install jq nbformat + script: + - git fetch --unshallow || true + - git fetch origin $CI_COMMIT_REF_NAME + - git checkout $CI_COMMIT_SHA + # Identifier les fichiers modifiés + - MODIFIED_JSON_FILES=$(git diff --name-only $CI_COMMIT_BEFORE_SHA $CI_COMMIT_SHA | grep '\.json$' || true) + - MODIFIED_IPYNB_FILES=$(git diff --name-only $CI_COMMIT_BEFORE_SHA $CI_COMMIT_SHA | grep '\.ipynb$' || true) + - echo "Modified JSON files:" $MODIFIED_JSON_FILES + - echo "Modified IPYNB files:" $MODIFIED_IPYNB_FILES + # Formatage des fichiers JSON + - for file in $MODIFIED_JSON_FILES; do + jq . "$file" > "$file.formatted" && mv "$file.formatted" "$file"; + done + # Formatage des fichiers IPYNB + - for file in $MODIFIED_IPYNB_FILES; do + python -m nbformat --to notebook --input "$file" --output "$file.formatted" && mv "$file.formatted" "$file"; + done + # Ajouter et pousser les modifications + - git config --global user.email "ci-bot@example.com" + - git config --global user.name "CI Bot" + - git add $MODIFIED_JSON_FILES $MODIFIED_IPYNB_FILES + - git commit -m "Formatted JSON and IPYNB files" || echo "No changes to commit." + - git push origin $CI_COMMIT_REF_NAME + rules: + - changes: + - "*.json" + - "*.ipynb" -- GitLab