Website Deployment
The deployment happens on commit and merge on master
branch. It is automatically handled by DroneCI and Ansible.
The deployment pipeline lives in:
- .drone-docker.yml for the official DroneCI
- .drone-kubernetes.yml for anyone testing this on a DroneCI in Kubernetes
Deployment flow
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.