forked from Fediversity/Fediversity
intended to swap out nixos-anywhere for terraform-nixos, over: - don't need nixos-anywhere to install nixos; we preload nixos to VMs - [awkward non-flake usage](https://nix-community.github.io/nixos-anywhere/howtos/use-without-flakes.html#3-set-nixos-version-to-use) - seemed not to pick up on config changes, as observed by test VMs losing their panel keys after TF sync however, it seems that terraform-nixos has its own flaws: - its output using a random id, i.e. forcing to push even on no changes - so far did not get ssh authentication to work
36 lines
794 B
Nix
36 lines
794 B
Nix
{
|
|
lib,
|
|
pkgs,
|
|
sources ? import ../npins,
|
|
...
|
|
}:
|
|
pkgs.stdenv.mkDerivation {
|
|
name = "tf-repo";
|
|
src = ../.;
|
|
buildInputs = [
|
|
(import ./tf.nix { inherit lib pkgs; })
|
|
];
|
|
buildPhase = ''
|
|
runHook preBuild
|
|
pushd launch/
|
|
|
|
# pass terraform-nixos path to TF through variable
|
|
# when switching TF to nix take this directly from `inputs`
|
|
# https://codeberg.org/kiara/e2ed-hetzner/commit/84b2a349d3e48ea2a17340bceff762d834fd4046
|
|
echo "{\"terraform-nixos\": \"${sources.terraform-nixos}\"}" > .auto.tfvars.json
|
|
|
|
# point to the relevant providers
|
|
tofu init -input=false
|
|
|
|
popd
|
|
runHook postBuild
|
|
'';
|
|
# FIXME: can the above even work without a connection?
|
|
installPhase = ''
|
|
runHook preInstall
|
|
|
|
cp -r . $out
|
|
|
|
runHook postInstall
|
|
'';
|
|
}
|