| Commit message (Collapse) | Author | Age | Files | Lines | |
|---|---|---|---|---|---|
| * | Use Floating IP on Droplet | EuAndreh | 2019-05-28 | 1 | -0/+0 |
| | | |||||
| * | Remove git rev-parse from .envrc | EuAndreh | 2019-05-28 | 1 | -0/+0 |
| | | |||||
| * | Rotate secrets | EuAndreh | 2019-05-28 | 1 | -0/+0 |
| | | |||||
| * | Split Bash variable declaration from assignment (shellcheck offense) | EuAndreh | 2019-05-28 | 1 | -0/+0 |
| | | |||||
| * | Add backup routing before possibly tearing down machine | EuAndreh | 2019-05-28 | 1 | -0/+0 |
| | | | | | | | | | | | Create a new backup entry before running =terraform apply=, which may (or may not) destroy the current machine. This shouldn't be an issue for the backup itself, since all of the data should be stored in a separate Block Storage Volume, but we can take advantage of the sevices already needing to be taken down in order to perform a full backup of the data. | ||||
| * | Add secrets/borg_remote{.pub} SSH keypair | EuAndreh | 2019-05-28 | 2 | -0/+0 |
| | | |||||
| * | Rename ./secrets/id_rsa{.pub} -> ./secrets/vps_box{.pub} | EuAndreh | 2019-05-28 | 2 | -0/+0 |
| | | |||||
| * | Add variables to properly tag a backup | EuAndreh | 2019-05-27 | 1 | -0/+0 |
| | | |||||
| * | Add Nextcloud recipe to docker-compose.yaml | EuAndreh | 2019-05-27 | 1 | -0/+0 |
| | | |||||
| * | Use Bash variables for domain names and container ports | EuAndreh | 2019-05-27 | 1 | -0/+0 |
| | | |||||
| * | Use more robust Bash cd approach | EuAndreh | 2019-05-26 | 1 | -0/+0 |
| | | |||||
| * | Automate provisioning and deployment of VPS | EuAndreh | 2019-05-26 | 2 | -0/+0 |
| | | | | | | | | | | | | | | | | | | | | | | | | | In order to perform that I had to remove Terraform's =.tfstate= files from the repository. Terraform does support "backends" for storing the state files, but I settled for storing it on a separate repo (vps-state). For now it solves the state management problem: - it has history of states; - all state files are GPG encrypted; - there's no coordination however, but only the CI should perform a deploy in order to avoid race conditions. I had to add GPG and SSH keys to sr.ht to achieve that: - SSH public key to my profile to authorize it to push to vps-state repo; - SSH private key to the secret builds.sr.ht environment to enable push to the repository from the pipeline; - GPG public key to git-crypt to make it possible for the pipeline to unlock the encrypted content; - GPG private key to the secret builds.sr.ht environment to enable decrypting git-crypt content from the pipeline. In order to avoid divergent environment from local and CI, the ./provision.sh script is ran through nix-shell. | ||||
| * | Update .tfstate files | EuAndreh | 2019-05-25 | 2 | -0/+0 |
| | | |||||
| * | Restart docker-compose after deployment | EuAndreh | 2019-05-25 | 1 | -0/+0 |
| | | |||||
| * | Check-in Terraform .tfstate files using git-crypt | EuAndreh | 2019-05-25 | 2 | -0/+0 |
| | | |||||
| * | Don't use pub_key and pvt_key as input variables | EuAndreh | 2019-05-25 | 2 | -0/+0 |
| | | | | | Embed SSH keypair directly into git-crypt. | ||||
| * | Remove docker-compose.yml from git-crypt | EuAndreh | 2019-05-25 | 2 | -0/+0 |
| | | |||||
| * | Add simple DigitalOcean droplet skeleton for Terraform | EuAndreh | 2019-05-25 | 1 | -0/+0 |
| | | |||||
| * | Use specific folder for volumes | EuAndreh | 2019-05-25 | 1 | -0/+0 |
| | | |||||
| * | Start docker-compose.yml skeleton with Wallabag | EuAndreh | 2019-05-25 | 2 | -0/+0 |
| | | |||||
| * | Remove existing NixOps configuration | EuAndreh | 2019-05-25 | 1 | -0/+0 |
| | | |||||
| * | Test nixcloud-webservices | EuAndreh | 2019-05-25 | 1 | -0/+0 |
| | | |||||
| * | Add simple stub VM definition | EuAndreh | 2019-05-25 | 2 | -0/+0 |
