aboutsummaryrefslogtreecommitdiff
path: root/secrets/envrc.sh (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Output all generated files on ./generated/, refactor .envrc variablesEuAndreh2019-06-101-0/+0
|
* Re enable $DESTROY_VOLUME toggleEuAndreh2019-06-101-0/+0
|
* Import GPG key before provisioningEuAndreh2019-06-101-0/+0
|
* Encrypt attached logEuAndreh2019-06-101-0/+0
|
* Send logs via email after finishing provision.shEuAndreh2019-06-101-0/+0
| | | | The email will be send for both sucessfull and failed runs.
* Disable $DESTROY_VOLUME operational toggleEuAndreh2019-06-101-0/+0
|
* Change SSH portEuAndreh2019-06-101-0/+0
|
* Provision DNS entries using DigitalOcean instead of DNS registrarEuAndreh2019-06-101-0/+0
| | | | | | | | | | | | | This way we can implement dynamic (provision-time) Floating IP, instead of a hardcoded pre-created Floating IP address. Related changes: - remove =terraform-godaddy= provider, use =digitalocean_record= instead; - create =generated-known-hosts= after provisioning instead of during =setup.sh=: use the =$(terraform output public_floating_ip)= value to make this file dynamic; - remote the =$PINNED_IP= and =$TF_VAR_floating_ip= variables; - add type and descriptions to variable declarations in Terraform recipe.
* Change $TLDEuAndreh2019-06-091-0/+0
|
* Rotate DNS registrar keysEuAndreh2019-06-091-0/+0
|
* Use same NIX_PATH locally and on the CIEuAndreh2019-06-091-0/+0
|
* Use terraform-godaddy and Terraform 0.11EuAndreh2019-06-081-0/+0
| | | | | | | | | | | | The =terraform-godaddy= package supports only Terraform 0.11 as of now. It is not packaged by default by nixpkgs, and the =postInstall= hook is required because Terraform looks for providers usinthe the =terraform-provider-$name= template, which the package doesn't follow. I had to remove the loop on vps.tf since it requires Terraform 0.12. I'll either wait for =terraform-godaddy= to upgrade to 0.12 or try to do it myself if it bothers me enough.
* Add credentials for manipulating DNS entries.EuAndreh2019-06-081-0/+0
|
* Use nextcloud.${TLD} instead of cloud.${TLD} as CNAME for Nextcloud installationEuAndreh2019-06-081-0/+0
|
* Add ${DESTROY_VOLUME} operational toggleEuAndreh2019-06-061-0/+0
| | | | | | | | | | | | | This way I can dynamically control whether to destroy and recreate all the existing infrastructure entirely from scratch. The advantages of doing so are: - test the non-existence of local state on every deployment; - make sure I can always recreate everything from scratch. The disadvantages are: - slower deployment times; - longer downtime during deployments.
* Use non-standard port for SSHEuAndreh2019-06-051-0/+0
|
* Use Ansible instead of Bash for provisioningEuAndreh2019-06-051-0/+0
| | | | | | | | | | | | | | | | | | The deployment is not quite working, and I'm unable to test right now: DigitalOcean is returning 503 for my requests. As of this commit, I can run =ansible-playbook provider.yml= more than once and it will actually be idempotent. Notes: - SSH fingerprint are now taken from the public key file instead of manually supplying it in the terraform template using the =digitalocean_ssh_key= resource; - use Ansible instead of ad-hoc Bash scripts for provisioning the Droplets created by Terraform; - use the =filename.env.extension= to create the concrete files in CI; - use the =user_data= to add the know SSH key pair to the newly created Droplet; - add =rotate-ssh-keys.sh= utils;
* Use Floating IP on DropletEuAndreh2019-05-281-0/+0
|
* Remove git rev-parse from .envrcEuAndreh2019-05-281-0/+0
|
* Rotate secretsEuAndreh2019-05-281-0/+0
|
* Split Bash variable declaration from assignment (shellcheck offense)EuAndreh2019-05-281-0/+0
|
* Add backup routing before possibly tearing down machineEuAndreh2019-05-281-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 variables to properly tag a backupEuAndreh2019-05-271-0/+0
|
* Add Nextcloud recipe to docker-compose.yamlEuAndreh2019-05-271-0/+0
|
* Use Bash variables for domain names and container portsEuAndreh2019-05-271-0/+0
|
* Use more robust Bash cd approachEuAndreh2019-05-261-0/+0
|
* Restart docker-compose after deploymentEuAndreh2019-05-251-0/+0
|
* Remove docker-compose.yml from git-cryptEuAndreh2019-05-251-0/+0
|
* Add simple DigitalOcean droplet skeleton for TerraformEuAndreh2019-05-251-0/+0
|
* Start docker-compose.yml skeleton with WallabagEuAndreh2019-05-251-0/+0
|
* Add simple stub VM definitionEuAndreh2019-05-251-0/+0