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 DEPLOYMENT_USER: from_secret: deploy_username commands: - sed -i 's/{{ SPT_ITEMS_HOSTNAME }}/'"$SPT_ITEMS_HOSTNAME"'/g' ./items/frontend/.env.example - mv ./items/frontend/.env.example ./items/frontend/.env - sed -i 's/{{ DEPLOY_HOSTNAME }}/'"$DEPLOY_HOSTNAME"'/g' ./.ansible-items/inventory - sed -i 's/{{ DEPLOYMENT_USER }}/'"$DEPLOYMENT_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: shirito/drone-ansible:latest 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: shirito/drone-ansible:latest settings: playbook: ./.ansible-items/playbook.yml inventory: ./.ansible-items/inventory galaxy: ./.ansible-items/requirements.yml private_key: from_secret: deploy_ssh_key private-key-passphrase: from_secret: deploy_ssh_key_password environment: DEPLOY_HOSTNAME: from_secret: deploy_hostname SPT_ITEMS_HOSTNAME: from_secret: spt_items_hostname DEPLOYMENT_USER: from_secret: deploy_username DEPLOYMENT_USER_GROUP: from_secret: deploy_user_group SPT_ITEMS_PATH: from_secret: deploy_path when: branch: - master - main