aboutsummaryrefslogtreecommitdiff
path: root/default.nix (follow)
Commit message (Expand)AuthorAgeFilesLines
* Make message when for shellEnvironment when running tests more readableEuAndreh2019-06-061-1/+1
* Add Ansible to shell derivation•••Required to run =ansible-playbook= in the CI pipeline. EuAndreh2019-06-051-0/+1
* Remove ansible-lint•••It wasn't trivial to configure: Ansible tried to work on /homeless-shelter :facepalm: EuAndreh2019-06-051-8/+0
* Add ansible lint in test stageEuAndreh2019-06-051-0/+8
* Fix subtasks.dockerComposeLint derivationEuAndreh2019-06-051-0/+2
* Fix "dotfiles" name left overEuAndreh2019-06-041-1/+1
* Build shell buildInputs in test derivation•••This way we make sure the =shell= derivation always builds, instead of seeing these kinds of failure during CI runs when it's trying to deploy. EuAndreh2019-06-041-7/+16
* Add utils.nix and remove common derivations from default.nixEuAndreh2019-06-041-79/+24
* Inline definition of rootSrcEuAndreh2019-06-041-2/+1
* Remove git rev-parse from .envrcEuAndreh2019-05-281-1/+1
* Suppress output of docker-compose config•••This derivation sources =.envrc= and it's output can potentially leak secret environment variables from it. EuAndreh2019-05-281-1/+1
* Fix docker-compose config step•••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. EuAndreh2019-05-281-1/+2
* Add more descriptive error message for FIXME derivation testEuAndreh2019-05-271-1/+5
* Fix formatting of default.nix (linter offense)EuAndreh2019-05-271-7/+2
* Revert Terraform to "default" versionEuAndreh2019-05-271-1/+1
* Use Terraform 0.12.0 in nix-shell and CIEuAndreh2019-05-261-2/+7
* Format default.nix (nixfmt offense)EuAndreh2019-05-261-7/+2
* Use nix-shell --pure to run scripts•••Instead of adding them to the =packages= section of .build.yml. EuAndreh2019-05-261-2/+8
* Run shellcheck on Bash files stored in git-cryptEuAndreh2019-05-261-2/+1
* Automate provisioning and deployment of VPS•••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. EuAndreh2019-05-261-1/+2
* 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