kind: pipeline type: kubernetes name: default concurrency: limit: 1 trigger: event: - push branch: - master - main - development steps: - name: replace hosts and user variables image: ubuntu:impish environment: DEPLOY_HOSTNAME: from_secret: deploy_hostname SPT_ITEMS_HOSTNAME: from_secret: spt_items_hostname DEPLOY_USER: from_secret: deploy_username DEPLOY_SSH_KEY_PASSPHRASE: from_secret: deploy_ssh_key_passphrase DEPLOY_PRIVATE_KEY: from_secret: deploy_ssh_key commands: - sed -i 's/{{ SPT_ITEMS_HOSTNAME }}/'"$SPT_ITEMS_HOSTNAME"'/g' ./items/frontend/.env.example - mv ./items/frontend/.env.example ./items/frontend/.env - echo "$DEPLOY_PRIVATE_KEY" > private.key && chmod 600 private.key - sed -i 's/{{ DEPLOY_HOSTNAME }}/'"$DEPLOY_HOSTNAME"'/g' ./.ansible-items/inventory - sed -i 's/{{ DEPLOY_SSH_KEY_PASSPHRASE }}/'"$DEPLOY_SSH_KEY_PASSPHRASE"'/g' ./.ansible-items/inventory - sed -i 's/{{ DEPLOY_USER }}/'"$DEPLOY_USER"'/g' ./.ansible-items/inventory # - name: build frontend # image: node:lts-alpine3.14 # commands: # - node -v # - npm -v # - yarn --version # - yarn --cwd ./items/frontend install # - yarn --cwd ./items/frontend build --pure-lockfile # - rm -rf ./items/api/public/static/* # - mv ./items/frontend/build/* ./items/api/public # - rm ./items/api/public/index.html - name: check ansible syntax image: plugins/ansible:3 settings: playbook: ./.ansible-items/playbook.yml inventory: ./.ansible-items/inventory galaxy: ./.ansible-items/requirements.yml syntax_check: true when: branch: - development - name: apply ansible playbook image: plugins/ansible:3 settings: playbook: ./.ansible-items/playbook.yml inventory: ./.ansible-items/inventory galaxy: ./.ansible-items/requirements.yml verbose: 4 environment: DEPLOY_HOSTNAME: from_secret: deploy_hostname SPT_ITEMS_HOSTNAME: from_secret: spt_items_hostname DEPLOY_USER: from_secret: deploy_username DEPLOY_USER_GROUP: from_secret: deploy_user_group SPT_ITEMS_PATH: from_secret: deploy_path when: branch: - master - main