- Download the Ansible roles:
The state of the used roles:
| Role name | GitHub Action | GitLab CI | Version |
|---|---|---|---|
| bootstrap | |||
| ntp |
ansible-galaxy install -r roles/requirements.yml- Download the terraform providers and modules:
cd terraform
terraform init- Set the DigitalOcean and CloudFlare credentials:
export TF_VAR_do_token="REPLACE_ME_WITH_THE_DO_TOKEN"
export TF_VAR_cloudflare_api_token="REPLACE_ME_WITH_THE_CF_TOKEN"NOTE: Currently broken with an intent to move the required steps to user_data in Terraform.
Apply the playbook:
./playbook.yml
This will:
- Create the infrastructure using Terraform.
- Install Docker. (Including all requirements.)
- Create the
rancher/ranchercontainer.
Finally, login. (URL displayed at the end of the play.)
.
├── ansible.cfg - To tell Ansible how to work.
├── playbook.yml - The playbook to run.
├── group_vars - Variables used by Ansible.
├── roles - Where roles will be stored.
│ └── requirements.yml - What roles to download.
└── terraform - A description of the infrastrucure.