diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index d8ad27961aa4ef7083a82130cf30b847b519a6ef..80d804e66e077b6989c957f0d0be22520ea87a25 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -15,6 +15,21 @@ variables: 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 + +++ + + .get_version: script: @@ -111,7 +126,7 @@ clean:packages: - if: '$CI_COMMIT_REF_PROTECTED == "true"' -clean:dev:release: +clean:release:dev: stage: clean tags: - gitlab_clean @@ -124,7 +139,7 @@ clean:dev:release: - if: '$CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH' -clean:dev:packages: +clean:packages:dev: stage: clean tags: - gitlab_clean @@ -137,7 +152,7 @@ clean:dev:packages: - if: '$CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH' -upload:packages:wiki: +upload:packages:doc:wiki: stage: upload tags: - gitlab_package @@ -160,7 +175,7 @@ upload:packages:wiki: - if: '$CI_COMMIT_REF_PROTECTED == "true"' -release:wiki: +release:doc:wiki: stage: release tags: - release @@ -208,6 +223,47 @@ release:wiki: - 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' + + release:gitlab: stage: release tags: