aboutsummaryrefslogtreecommitdiff
path: root/default.nix (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Remove default.nix and shell.nixEuAndreh2020-11-181-22/+0
|
* Fix testsEuAndreh2020-10-231-1/+1
|
* Run nixfmtEuAndreh2020-10-231-2/+1
|
* Add bash scripts for tests instead of NixEuAndreh2020-10-231-34/+20
|
* Remove exclusion patterns from default.nixEuAndreh2020-09-221-4/+2
|
* Filter encrypted files from lintingEuAndreh2020-08-101-2/+2
|
* Migration: Remove Ansible and Docker code, move only to NixOSEuAndreh2020-08-101-15/+0
|
* WIP: Move to Vultr and NixOSEuAndreh2020-08-101-1/+1
|
* default.nix: Add file package to shell build inputsEuAndreh2019-06-131-0/+1
| | | | Used in 'setup.sh'.
* default.nix: Use shell helper functions from utils.nixEuAndreh2019-06-121-21/+10
|
* Provision DNS entries using DigitalOcean instead of DNS registrarEuAndreh2019-06-101-15/+1
| | | | | | | | | | | | | 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.
* Don't use terraform-full derivationEuAndreh2019-06-091-3/+1
|
* s/terraformGodaddy/terraformGodaddyBuild/EuAndreh2019-06-091-1/+1
|
* Expose build of terraform-godaddy under subtasks attribute setEuAndreh2019-06-091-1/+1
|
* ci dbg: Revert "Revert "Update modSha256 for terraform-godaddy""EuAndreh2019-06-081-1/+1
| | | | This reverts commit 4d04172f9027203e3656f74bd8cecdc0d9c45e69.
* Revert "Update modSha256 for terraform-godaddy"EuAndreh2019-06-081-1/+1
| | | | This reverts commit 5ad5984f47860bdf3a85abeddef18d17c2095e69.
* Format default.nix (nixfmt linter offense)EuAndreh2019-06-081-2/+3
|
* Update modSha256 for terraform-godaddyEuAndreh2019-06-081-1/+1
|
* Use terraform-godaddy and Terraform 0.11EuAndreh2019-06-081-2/+17
| | | | | | | | | | | | 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.
* Update terraform to 0.12EuAndreh2019-06-081-1/+1
|
* Make message when for shellEnvironment when running tests more readableEuAndreh2019-06-061-1/+1
|
* Add Ansible to shell derivationEuAndreh2019-06-051-0/+1
| | | | Required to run =ansible-playbook= in the CI pipeline.
* Remove ansible-lintEuAndreh2019-06-051-8/+0
| | | | It wasn't trivial to configure: Ansible tried to work on /homeless-shelter :facepalm:
* 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 derivationEuAndreh2019-06-041-7/+16
| | | | | 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.
* 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 configEuAndreh2019-05-281-1/+1
| | | | | This derivation sources =.envrc= and it's output can potentially leak secret environment variables from it.
* Fix docker-compose config stepEuAndreh2019-05-281-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.
* 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 scriptsEuAndreh2019-05-261-2/+8
| | | | Instead of adding them to the =packages= section of .build.yml.
* 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