Simple TODO application written in PHP hosted on Google Cloud Compute Engine.
- Create service account and generate JSON key (see docs/dev_notes.md);
- Create Cloud Storage bucket named <gcp_project_id>-tf-state;
- Manually run GitHub Action or commit something;
- PHP, HTML, CSS
- Google Cloud Compute Engine
- GitHub Actions
- Ansible
- Super Linter https://github.com/marketplace/actions/super-linter/
- Terraform on Google Cloud
- Run Super Linter pre-commit hook.
- Run Super Linter on GitHub runner.
- Create GCE instance using Terraform.
- Copy runner SSH keys to GCE instance.
- Setup the VM using Ansible playbook.
- Deploy site using Ansible playbook.
Google Compute Engine GitHub Actions example https://github.com/google-github-actions/setup-gcloud/blob/main/example-workflows/gce/.github/workflows/gce.yaml/