Commit graph

145 commits

Author SHA1 Message Date
bfa31bad07
add ssh key to not need root user 2025-04-06 11:22:39 +02:00
429a4cbe23
using root account get and keep access presuming pre-existing key 2025-04-05 15:26:24 +02:00
6a1db9750d
bash-based deployment
deduplicate flake inputs

make re-exports explicit again

Revert "deduplicate flake inputs"

This reverts commit 95769084ce.

switch launch shell to root flake's nixpkgs, see #279

use flake-sourced nixos-anywhere in tf, to reproduce modules for nix

properly pass repo dir for prod, be it with hard-coded TF init

move tf init out of python over read-only nix env

skip tf lock in views.py over read-only nix env

specify XDG_CACHE_HOME, workaround to error writing to /var/empty/.cache

update

document updating TF module

get TF in prod to the same 'installable ... does not correspond to a Nix language value' for non-flakes

seemingly gets further when a similar command is tried from terminal.
as per https://github.com/NixOS/nix/issues/8752#issuecomment-1694714693,
this may have to do with aligning the current working directory.

rm launch flake, as i seem to have reached similar progress without it

update nixos-anywhere to fix error 'installable ... does not correspond to a Nix language value'

rm comment

untrack TF generated provider/module stuff - local dev now requires following launch/README.md

for now gitignore .auto.tfvars.json used to track TF module of nixos-anywhere

in case we want that file for something else, we can move this (and its
ignore) to something separate.

use a mutable HOME in TF for nixos-anywhere to make a `.ssh` dir in - will this not backfire?

change ssh user to root

allow accessing test vms from fedi201's machine ssh key, closes #286

allow accessing test vms from fedi201's machine ssh key, closes #286

update nixpkgs to unstable - resolves manual deploy error on bootloader already on newer version

switch to bash deployment

tmp
2025-04-05 13:55:10 +02:00
94420f112f
allow accessing test vms from fedi201's machine ssh key, closes #286 2025-04-05 13:54:51 +02:00
ea8c61a712
A bunch more test machines 2025-04-02 15:06:17 +02:00
e25ff10872 Work around weird Proxmox behaviour with test02 (#282)
Reviewed-on: Fediversity/Fediversity#282
Reviewed-by: kiara Grouwstra <kiara@procolix.eu>
Co-authored-by: Nicolas “Niols” Jeannerod <nicolas.jeannerod@moduscreate.com>
Co-committed-by: Nicolas “Niols” Jeannerod <nicolas.jeannerod@moduscreate.com>
2025-03-27 15:48:35 +01:00
53658e9880
trigger nixops from panel
adds a deploy button to the panel form - covers the local part of #76.

As a workaround to pass info (from our user form) into nixops4 uses
environment variable `DEPLOYMENT` thru nix's
`--extra-experimental-features configurable-impure-env`.
2025-03-19 09:51:23 +01:00
3364d6c972 fix: NixOS deployment code
- simplify the configuration module

  the `package` attribute makes little sense to be user-configurable,
  since it will always need to be the derivation defined in this very
  repository. for debugging one may as well change the original code itself.

- unbreak deployment

  setting `CREDENTIALS_DIRECTORY` disabled the systemd mechanism set up
  in the configuration module.

- remove unneeded configuration for deployment

- unbreak integration tests

  before that missed waiting for the service to create some
  state before running the application-level tests.
2025-03-19 09:48:41 +01:00
7afae84b6c Add pub key Lois 2025-03-12 12:01:50 +01:00
4db91bd0b7
Transmit initial user from JSON to services 2025-02-28 10:57:31 +01:00
6e386a9fd6 Merge pull request 'Generate machines' list automatically' (#209) from Niols/Fediversity:generate-machines-list-by-hand into main
Reviewed-on: Fediversity/Fediversity#209
Reviewed-by: kiara Grouwstra <kiara@procolix.eu>
2025-02-27 22:06:57 +01:00
9cc1e40b5d Merge pull request 'deploy fedipanel' (#201) from kiara/Fediversity:deploy-panel into main
Reviewed-on: Fediversity/Fediversity#201
Reviewed-by: Nicolas Jeannerod <nicolas.jeannerod@moduscreate.com>
2025-02-27 22:06:24 +01:00
0b18938eaa
Support specifying disk size 2025-02-27 16:45:11 +01:00
52e4dc8aec
Make ShellCheck happy 2025-02-27 16:45:11 +01:00
816099eb1f
Document regenerating the list of machines 2025-02-27 16:45:11 +01:00
8ba000307f
Generate list of machines from config 2025-02-27 16:45:11 +01:00
b42d654ab6
Track machines' descriptions 2025-02-27 16:45:11 +01:00
f34f2e45ab
Get panel config as a block - use eg. mastodon.enable 2025-02-27 11:43:44 +01:00
c66889f58f
Better naming of makeMakeDeployment arguments 2025-02-27 11:35:55 +01:00
cbed66c934
Report errors in subprocesses 2025-02-27 11:35:55 +01:00
0c75a4053e
Report already deleted VM in a clean way 2025-02-27 11:35:55 +01:00
beb225faf7
Better logging of VM removal 2025-02-27 11:35:55 +01:00
e27cc6e96a
Generalise test deployment; get config from JSON 2025-02-27 11:35:54 +01:00
f828afd5d5
minimum setup i got working for deployment 2025-02-27 09:07:13 +01:00
e819dc4bcc
Stop mentioning non-existing deployments 2025-02-26 09:15:10 +01:00
90efd14e54
Remove unused VMs
This has been done in sync with @kevin who removed them from the
Procolix infrastructure as well.
2025-02-26 09:15:10 +01:00
e7e175ef78
Fix typo 2025-02-26 09:14:47 +01:00
1d4004ccf4
update fedipanel import references 2025-02-25 17:11:50 +01:00
6182ba192c
Make ShellCheck happy 2025-02-25 17:10:25 +01:00
d5264a52a1
panel: override STATIC_ROOT 2025-02-25 16:11:40 +01:00
3354c89503
WIP: deploy fedipanel
Closes #101
2025-02-25 16:11:40 +01:00
4e30363c5f
Generate list of machines from machines subdir 2025-02-25 11:57:21 +01:00
2e346d1de7
Move test machines configuration to test-machines directory 2025-02-25 11:57:21 +01:00
c74145fe24
Split machine definitions into subdirectories 2025-02-25 11:57:21 +01:00
3f9c174d97
Get rid of the deployment/ directory 2025-02-25 11:57:20 +01:00
f4153a048c
Reintroduce test machines deployment 2025-02-25 11:57:20 +01:00
f6960010cd
One deployment per machine; bundle test machines 2025-02-25 11:57:20 +01:00
bc8ad08228
Make removal script support ids or names 2025-02-25 11:57:20 +01:00
636e4636f7
Add test machines 2025-02-25 11:57:20 +01:00
cd47d884f7
Cleaner grabing of options 2025-02-25 11:57:20 +01:00
11fd13a982
Allow injecting a private key in the provisioned VM 2025-02-25 11:57:20 +01:00
bd270999f3
Integrate hostPublicKey with the options 2025-02-25 11:57:20 +01:00
01e2fc8a6f
Update documentation accordingly 2025-02-25 11:57:12 +01:00
4ae3fc27be
Have the provisioning script grab options from the flake 2025-02-25 11:36:55 +01:00
4fda719992
Expose VM options in the flake 2025-02-25 11:36:55 +01:00
10874c995e
Split sections in options 2025-02-25 11:36:55 +01:00
af4a0a0784
Add options for sockets, cores and memory 2025-02-25 11:36:55 +01:00
71d1c612a4
Get rid of fedi300
It has been off for a long while now. We will just add a VM again if
there is one ever.
2025-02-25 11:36:54 +01:00
0813eca20c
Add options for Proxmox and Proxmox VM id 2025-02-25 11:36:54 +01:00
1677c9f8d7 Remove environment.systemPackages from VMs (#176)
Closes #25

Co-authored-by: kiara Grouwstra <kiara@procolix.eu>
Reviewed-on: Fediversity/Fediversity#176
Reviewed-by: kiara Grouwstra <kiara@procolix.eu>
Co-authored-by: Nicolas “Niols” Jeannerod <nicolas.jeannerod@moduscreate.com>
Co-committed-by: Nicolas “Niols” Jeannerod <nicolas.jeannerod@moduscreate.com>
2025-02-24 14:54:28 +01:00