aboutsummaryrefslogtreecommitdiff
path: root/default.nix (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Run shellcheck on Bash files stored in git-cryptEuAndreh2019-05-261-2/+1
|
* Automate provisioning and deployment of VPSEuAndreh2019-05-261-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | 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.
* Don't run shellcheck on encrypted Bash codeEuAndreh2019-05-251-1/+2
|
* Format default.nix (nixfmt offense)EuAndreh2019-05-251-10/+7
|
* Fix formatTerraform stageEuAndreh2019-05-251-1/+1
|
* Add dockerComposeLint job stageEuAndreh2019-05-251-4/+15
|
* Add lint checks and a pipeline to check using NixEuAndreh2019-05-251-0/+93