aboutsummaryrefslogtreecommitdiff
path: root/default.nix (unfollow)
Commit message (Collapse)AuthorFilesLines
2019-05-28Remove git rev-parse from .envrcEuAndreh1-1/+1
2019-05-28Suppress output of docker-compose configEuAndreh1-1/+1
This derivation sources =.envrc= and it's output can potentially leak secret environment variables from it.
2019-05-28Fix docker-compose config stepEuAndreh1-1/+2
Add gitMinimal package to baseTasks to allow any derivation to =source .envrc= freely. dockerComposeLint sources it to properly lint the file that will be ran.
2019-05-27Add more descriptive error message for FIXME derivation testEuAndreh1-1/+5
2019-05-27Fix formatting of default.nix (linter offense)EuAndreh1-7/+2
2019-05-27Revert Terraform to "default" versionEuAndreh1-1/+1
2019-05-26Use Terraform 0.12.0 in nix-shell and CIEuAndreh1-2/+7
2019-05-26Format default.nix (nixfmt offense)EuAndreh1-7/+2
2019-05-26Use nix-shell --pure to run scriptsEuAndreh1-2/+8
Instead of adding them to the =packages= section of .build.yml.
2019-05-26Run shellcheck on Bash files stored in git-cryptEuAndreh1-2/+1
2019-05-26Automate provisioning and deployment of VPSEuAndreh1-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.
2019-05-25Don't run shellcheck on encrypted Bash codeEuAndreh1-1/+2
2019-05-25Format default.nix (nixfmt offense)EuAndreh1-10/+7
2019-05-25Fix formatTerraform stageEuAndreh1-1/+1
2019-05-25Add dockerComposeLint job stageEuAndreh1-4/+15
2019-05-25Add lint checks and a pipeline to check using NixEuAndreh1-0/+93