Commit Graph

517 Commits

Author SHA1 Message Date
bors[bot]
d26abc5d6d
Merge #95
95: Reduce memory consumption r=Mic92 a=Mic92



Co-authored-by: Jörg Thalheim <joerg@thalheim.io>
2023-05-07 20:45:00 +00:00
Jörg Thalheim
848a9cd4fc switch to non-interactive installer
Massive size decrease: 820 MB -> 321 MB
2023-05-07 22:40:16 +02:00
Jörg Thalheim
23ec5bc947 README: fix markup 2023-05-07 22:40:16 +02:00
Jörg Thalheim
3028a09680 reduce memory consumption 2023-05-07 22:40:16 +02:00
bors[bot]
419184cff6
Merge #94
94: bash is no longer required r=Mic92 a=Mic92



Co-authored-by: Jörg Thalheim <joerg@thalheim.io>
2023-05-07 19:55:26 +00:00
Jörg Thalheim
f76de710e7 tests/from-nixos: fix powering machine after nixos upgrade 2023-05-07 21:54:55 +02:00
Jörg Thalheim
1ba300c246 tests: fix disco config 2023-05-07 20:20:57 +02:00
Jörg Thalheim
cdf2124738 update flakes 2023-05-07 20:20:49 +02:00
Jörg Thalheim
9c6964bdbc bash is no longer required
since nixos-images upgraded: https://github.com/nix-community/nixos-images/pull/98
2023-05-07 15:58:30 +02:00
bors[bot]
840b9804fe
Merge #89
89: feat: detect bash & setsid presence and fail if they are not on the target r=phaer a=RaitoBezarius



Co-authored-by: Raito Bezarius <masterancpp@gmail.com>
2023-05-03 16:12:43 +00:00
Raito Bezarius
33ab44a23d feat: detect bash & setsid presence and fail if they are not on the target
In #88, I stumbled on this trying to install an OpenWRT target.
This is a band-aid for helpful errors and avoiding "half broken" states.

In an upcoming PR, I will suggest a solution which will produce static
binaries for what is needed and use them on the host.
2023-05-03 18:07:48 +02:00
bors[bot]
17cc299abb
Merge #87
87: build-on-remote: fix check for store_paths r=Mic92 a=Lassulus



Co-authored-by: lassulus <git@lassul.us>
2023-04-27 10:47:36 +00:00
lassulus
af10a53ab3 build-on-remote: fix check for store_paths 2023-04-27 12:30:11 +02:00
bors[bot]
28be7391b4
Merge #86
86: add --build-on-remote flag r=Mic92 a=Lassulus



Co-authored-by: lassulus <git@lassul.us>
2023-04-27 09:46:54 +00:00
lassulus
dc27d00293 add --build-on-remote flag 2023-04-25 15:49:24 +02:00
bors[bot]
7563cf5863
Merge #81
81: terraform/nixos-rebuild: do not ignore deploy errors by default r=jfroche a=jfroche



Co-authored-by: Jean-François Roche <jfroche@pyxel.be>
2023-04-05 20:48:42 +00:00
bors[bot]
78a91e94a3
Merge #83
83: Add link to blogpost r=phaer a=phaer



Co-authored-by: Paul Haerle <hello@phaer.org>
2023-04-05 14:11:49 +00:00
Paul Haerle
f503e9024b
Add link to blogpost
@tfc has written a nice walk-through on his blog at: https://galowicz.de/2023/04/05/single-command-server-bootstrap/ . This links to it in README.md
2023-04-05 14:26:39 +02:00
Jean-François Roche
a82a84da8a terraform/nixos-rebuild: do not ignore deploy errors by default
Add option to ignore systemd errors during deployment.

Co-authored-by: Jörg Thalheim <Mic92@users.noreply.github.com>
2023-04-04 17:10:28 +02:00
bors[bot]
be2221a9bd
Merge #80
80: fix(rebuild): use sudo if rebuild with another user than root r=jfroche a=jfroche



Co-authored-by: Jean-François Roche <jfroche@pyxel.be>
2023-04-04 14:29:56 +00:00
Jean-François Roche
4371932193 fix(rebuild): use sudo if rebuild with another user than root
In order to switch the NixOS configuration, we must have root access.
If we are connecting to the target host with a non-root user, we use the "sudo" command.

We could instead use `nixos-rebuild --use-remote-sudo --target-host` but it
would evaluate the nixos system again.
2023-03-31 21:33:05 +02:00
bors[bot]
ac1eaaf67b
Merge #79
79: fix small security race r=Mic92 a=zimbatm



Co-authored-by: zimbatm <zimbatm@zimbatm.com>
2023-03-29 18:05:43 +00:00
zimbatm
eafa9cfce5
nixos-rebuild: fix double trap
Only one callback can be installed per signal in Bash. Because the
previous `trap` removes the whole temporary workdir, the one around the
SSH key is redundant.
2023-03-29 16:17:29 +02:00
zimbatm
1120774e38
nixos-rebuild: fix SSH key security race
Make sure the ssh_key file is always 0700
2023-03-29 16:17:28 +02:00
bors[bot]
ee5c39fcb1
Merge #78
78: terraform: allow nixos-rebuild to use specified private key for deployment r=Lassulus a=jfroche



Co-authored-by: Jean-François Roche <jfroche@affinitic.be>
Co-authored-by: Samuel Rounce <srounce@users.noreply.github.com>
2023-03-29 10:13:49 +00:00
Samuel Rounce
5adb698f51
fix(terraform/nixos-rebuild): typo in variables.sh 2023-03-29 09:09:21 +01:00
Jean-François Roche
16143cd8c0 terraform: allow nixos-rebuild to use specified private key for deployment
`nixos-rebuild/deploy.sh` script enable ssh authentication with a given private key
through the `SSH_KEY` environment variable.

Add additional variable for the private key used for the deployment.
To encourage the use of ssh-agent and discourage the storage of deployment keys in the terraform state
we do not set the install ssh key as the default for the deployment key.

Co-authored-by: Jörg Thalheim <Mic92@users.noreply.github.com>
2023-03-28 00:28:48 +02:00
bors[bot]
ad954defb3
Merge #77
77: wait for machine to be shutdown after deploy r=Lassulus a=Mic92



Co-authored-by: Jörg Thalheim <joerg@thalheim.io>
2023-03-05 10:44:49 +00:00
Jörg Thalheim
5be3e00d57 wait for machine to be shutdown after deploy 2023-03-04 17:13:54 +01:00
bors[bot]
b7e335a5f8
Merge #76
76: nixos-rebuild: allow to change deploy user r=Lassulus a=Mic92



Co-authored-by: Jörg Thalheim <joerg@thalheim.io>
2023-03-04 13:33:08 +00:00
Jörg Thalheim
48fe2fa8cc nixos-rebuild: allow to change deploy user 2023-03-04 13:53:20 +01:00
bors[bot]
6d0e9235bd
Merge #75
75: nixos-rebuild: allow to change deploy user r=Lassulus a=Mic92



Co-authored-by: Jörg Thalheim <joerg@thalheim.io>
2023-03-03 14:31:47 +00:00
Jörg Thalheim
c2f70ed844 nixos-rebuild: allow to change deploy user 2023-03-03 14:47:03 +01:00
bors[bot]
63b9af6c33
Merge #74
74: make nix find the right flake r=Mic92 a=Mic92



Co-authored-by: Jörg Thalheim <joerg@thalheim.io>
2023-03-01 10:47:37 +00:00
Jörg Thalheim
c0c5fcce92 make nix find the right flake 2023-03-01 11:36:25 +01:00
bors[bot]
ff743f3183
Merge #72
72: Terraform module fixes r=Mic92 a=Mic92



Co-authored-by: Jörg Thalheim <joerg@thalheim.io>
2023-02-24 11:47:28 +00:00
bors[bot]
a1d93f94df
Merge #73
73: quote flake attr to allow dots in nixos hostname r=Mic92 a=Mic92



Co-authored-by: Jörg Thalheim <joerg@thalheim.io>
2023-02-24 07:29:31 +00:00
Jörg Thalheim
dfd9b256b1 quote flake attr to allow dots in nixos hostname 2023-02-24 08:28:30 +01:00
Jörg Thalheim
ed67349b96 terraform: improve module description 2023-02-23 17:10:09 +01:00
Jörg Thalheim
29b0f1b5f2 terraform: add instance_id to trigger reinstall 2023-02-23 16:15:52 +01:00
Jörg Thalheim
ed0ab16c58 terraform: drop dependency on the retry program 2023-02-23 16:15:52 +01:00
Jörg Thalheim
ac7f3b86a5 terraform: actually passthru kexec-url to nixos-anywhere 2023-02-22 16:42:55 +01:00
Jörg Thalheim
bedcb063cc fixup ssh key name for rsync 2023-02-22 16:42:55 +01:00
Jörg Thalheim
2abdb32c67 terraform/nix-build: fix building from non-flake 2023-02-22 16:42:55 +01:00
Jörg Thalheim
23bbd22fb2 add debug logging option 2023-02-22 16:42:55 +01:00
Jörg Thalheim
57a6ec5ffc terraform/install: fix nixos-anywhere flake attribute name 2023-02-22 16:42:49 +01:00
bors[bot]
bc0e634c95
Merge #21
21: add terraform role and some minor changes r=Lassulus a=Lassulus



Co-authored-by: lassulus <lassulus@lassul.us>
Co-authored-by: lassulus <git@lassul.us>
2023-02-14 07:22:16 +00:00
lassulus
9e00da86f5 add newline to ssh key provided via env 2023-02-14 07:34:24 +01:00
lassulus
411fb9bd76 terraform: init modules 2023-02-14 07:34:24 +01:00
lassulus
1b976d803c tests: fix running tests directly with nix-build 2023-02-14 07:34:24 +01:00