kind: pipeline type: docker name: deployement steps: - name: build-web image: node commands: - (cd web && npm install && npm run build) - name: push-translation image: python:3 environment: TRADUORA_W_CLIENT: from_secret: TRADUORA_W_CLIENT TRADUORA_W_SECRET: from_secret: TRADUORA_W_SECRET commands: - pip3 install requests - (cd lang && ./sync_translation.py --client $TRADUORA_W_CLIENT --secret $TRADUORA_W_SECRET --push) when: branch: - master event: - push - name: translate-html image: python:3 commands: - pip3 install jinja2 - (cd templates/ && ./translate.py) - name: deploy-testing image: debian commands: - apt-get -qq update && apt-get -qq install git > /dev/null - sed -i 's/target_version = git/target_version = testing/' configuration.default.ini - version=$(git rev-parse HEAD) - echo "current git commit is $version" - echo $version > /mnt/botamusique/testing-version - sed -i "s/version = 'git'/version = '$version'/" mumbleBot.py - rm -rf .git* - rm -rf web - mkdir /tmp/botamusique - cp -r . /tmp/botamusique/ - tar -czf /mnt/botamusique/sources-testing.tar.gz -C /tmp botamusique volumes: - name: repo path: /mnt/botamusique/ when: branch: - master event: - push - name: docker-testing image: plugins/docker settings: repo: azlux/botamusique username: from_secret: docker_username password: from_secret: docker_password tags: testing when: branch: - master event: - push - name: deploy-stable image: debian environment: TRADUORA_W_CLIENT: from_secret: TRADUORA_W_CLIENT TRADUORA_W_SECRET: from_secret: TRADUORA_W_SECRET commands: - apt-get -qq update && apt-get -qq install jq curl git pandoc python3-requests > /dev/null - (cd lang && ./sync_translation.py --client $TRADUORA_W_CLIENT --secret $TRADUORA_W_SECRET --push) - sed -i 's/target_version = git/target_version = stable/' configuration.default.ini - git fetch --tags - version=$(git describe --abbrev=0 --tags) - echo "version is $version" - echo $version > /mnt/botamusique/version - sed -i "s/version = 'git'/version = '$version'/" mumbleBot.py - curl --silent "https://api.github.com/repos/azlux/botamusique/releases/latest" | jq -r '.body' | pandoc --from gfm --to html - --output - > /mnt/botamusique/changelog - rm -rf .git* - rm -rf web - mkdir /tmp/botamusique - cp -r . /tmp/botamusique/ - tar -czf /mnt/botamusique/sources-stable.tar.gz -C /tmp botamusique volumes: - name: repo path: /mnt/botamusique/ when: event: - tag - name: docker-stable image: plugins/docker settings: repo: azlux/botamusique username: from_secret: docker_username password: from_secret: docker_password tags: latest when: event: - tag volumes: - name: repo host: path: /media/raid5/data/packages/repos/apt/botamusique/ trigger: event: exclude: - cron --- kind: pipeline type: docker name: cron steps: - name: fetch-translation image: debian environment: TRADUORA_R_CLIENT: from_secret: TRADUORA_R_CLIENT TRADUORA_R_SECRET: from_secret: TRADUORA_R_SECRET GITHUB_API: from_secret: GITHUB_API commands: - apt update && apt install -y git python3-requests hub - git remote set-url origin https://azlux:$GITHUB_API@github.com/azlux/botamusique/ - | if git fetch origin bot-traduora; then git branch bot-traduora FETCH_HEAD else git branch bot-traduora fi - git checkout bot-traduora - (cd lang/ && ./sync_translation.py --client $TRADUORA_R_CLIENT --secret $TRADUORA_R_SECRET --fetch) - git add lang/* - git status - | if (GIT_COMMITTER_NAME='Traduora Bot' GIT_COMMITTER_EMAIL='noreply@azlux.fr' git commit -m 'Bot: Update translation' --author "Traduora Bot "); then git remote set-url origin https://azlux:$GITHUB_API@github.com/azlux/botamusique/ git push origin bot-traduora sleep 2 GITHUB_USER="azlux" GITHUB_TOKEN="$GITHUB_API" hub pull-request -m "Bot: TRADUORA Update" fi trigger: event: - cron cron: - auto-fetch-lang