diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 66b479718ed10400062d9182ca3b1b863fb0d7e9..190228018125ffa2d883f2d15fb9a0a62d9199f6 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -14,20 +14,6 @@ variables: PACKAGE_REGISTRY_URL: "${GITLAB_API_PROJECT_URL}/packages/generic/${PROJECT_NAME}" WIKI_FOLDER: Wiki - - DOC_CHANGELOG_FILE: ZolaApp/content/changelog/projects/103_api.md - DOC_FILE_BEGIN: | - +++ - title = "Dojo Backend API" - slug = "dojo-backend-api" - weight = 103 - template = "docs/page.html" - - [extra] - lead = "Changelog of The Dojo Backend API." - toc = true - top = false - +++ @@ -87,6 +73,12 @@ code_quality:lint: - npm install - npm run lint + rules: + - if: $CI_COMMIT_TAG + when: never + - if: $CI_PIPELINE_SOURCE == "merge_request_event" + when: manual + - when: on_success code_quality:sonarqube: @@ -106,7 +98,11 @@ code_quality:sonarqube: script: - sonar-scanner rules: - - if: '$CI_COMMIT_TAG =~ "/^$/"' + - if: $CI_COMMIT_TAG + when: never + - if: $CI_PIPELINE_SOURCE == "merge_request_event" + when: manual + - when: on_success test:build: @@ -119,7 +115,11 @@ test:build: - npm install - npm run build rules: - - if: '$CI_COMMIT_TAG =~ "/^$/"' + - if: $CI_COMMIT_TAG + when: never + - if: $CI_PIPELINE_SOURCE == "merge_request_event" + when: manual + - when: on_success clean:release: @@ -131,7 +131,7 @@ clean:release: - !reference [.get_version, script] - !reference [.clean_release, script] rules: - - if: '$CI_COMMIT_REF_PROTECTED == "true"' + - if: $CI_COMMIT_REF_PROTECTED == "true" clean:packages: @@ -143,7 +143,7 @@ clean:packages: - !reference [.get_version, script] - !reference [.clean_packages, script] rules: - - if: '$CI_COMMIT_REF_PROTECTED == "true"' + - if: $CI_COMMIT_REF_PROTECTED == "true" clean:release:dev: @@ -156,7 +156,7 @@ clean:release:dev: - VERSION="${VERSION}${VERSION_DEV_SUFFIX}" - !reference [.clean_release, script] rules: - - if: '$CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH' + - if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH clean:packages:dev: @@ -169,7 +169,7 @@ clean:packages:dev: - VERSION="${VERSION}${VERSION_DEV_SUFFIX}" - !reference [.clean_packages, script] rules: - - if: '$CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH' + - if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH upload:packages:doc:wiki: @@ -192,7 +192,7 @@ upload:packages:doc:wiki: # Send package - 'curl --header "JOB-TOKEN: $CI_JOB_TOKEN" --upload-file ${WIKI_ARCHIVE_PATH} "${PACKAGE_URL_WIKI}";' rules: - - if: '$CI_COMMIT_REF_PROTECTED == "true"' + - if: $CI_COMMIT_REF_PROTECTED == "true" release:doc:wiki: @@ -240,48 +240,7 @@ release:doc:wiki: # Push the change back to the master branch of the wiki - git push origin "HEAD:main" rules: - - if: '$CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH' - - -release:doc:changelog: - stage: release - tags: - - release - image: ubuntu:latest - script: - # Install dependencies - - apt-get update -y - - apt-get install -y openssh-client git unzip sshpass --fix-missing - - # Add SSH key - - eval `ssh-agent -s` - - echo "$DOC_GIT_SSH_PRIVATE_KEY" | tr -d '\r' | ssh-add - > /dev/null - - - mkdir -p ~/.ssh - - chmod 700 ~/.ssh - - - echo "$DOC_GIT_SSH_PUBLIC_KEY" >> ~/.ssh/id_rsa.pub - - echo "$DOC_GIT_SSH_PRIVATE_KEY" >> ~/.ssh/id_rsa - - - '[[ -f /.dockerenv ]] && echo -e "Host *\n\tStrictHostKeyChecking no\n\n" > ~/.ssh/config' - - # Set git config - - git config --global user.email "dojo@minelli.me" - - git config --global user.name "[Gitlab CI/CD] ${PROJECT_NAME}" - - # Pull repo - - git clone ssh://git@ssh.hesge.ch:10572/dojo_project/projects/ui/dojodoc.git - - # Do something after pulling your repo - - echo "${DOC_FILE_BEGIN}$(cat CHANGELOG.md)" > dojodoc/${DOC_CHANGELOG_FILE} - - # Push repo changes into current repo - - cd dojodoc - - git add ${DOC_CHANGELOG_FILE} - - git commit -m "[Gitlab CI/CD] ${PROJECT_NAME} => Automatic update of changelog" || echo "No changes, nothing to commit!" - - git push - rules: - - if: '$CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH' + - if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH release:gitlab: @@ -321,4 +280,4 @@ release:gitlab: --header "JOB-TOKEN: $CI_JOB_TOKEN" \ --request POST "${GITLAB_API_PROJECT_URL}/releases" rules: - - if: '$CI_COMMIT_REF_PROTECTED == "true"' + - if: $CI_COMMIT_REF_PROTECTED == "true"