Website Deployment
The deployment happens on commit and merge on master
branch and it is handled by DroneCI and Ansible.
Deployment flow
The deployment pipeline lives in:
- .drone-docker.yml for the official DroneCI
- .drone-kubernetes.yml for anyone testing this on a DroneCI in Kubernetes
On development and feature branches, the deployment flow is:
- Cloning the project
- Replacing values for ansible inventory file using DroneCI secrets
- Checking the playbook syntax
- Running the playbook in dry-run mode
On master, the deployment flow is:
- Cloning the project
- Replacing values for ansible inventory file using DroneCI secrets
- Checking the playbook syntax
- Running the playbook in dry-run mode
- Executing the playbook
The playbook
It has only one instruction: Go to the directory in the server and git pull
to update everything.