use deployed environment for launching nixops4 from the panel

This commit is contained in:
Valentin Gagarin 2025-06-06 12:14:34 +02:00
parent 1b832c1f5b
commit 5a514b96e9
4 changed files with 5 additions and 11 deletions

View file

@ -1,6 +1,4 @@
{
lib,
pkgs,
...
}:
let
@ -9,10 +7,4 @@ in
{
REPO_DIR = toString ../.;
# explicitly use nix, as e.g. lix does not have configurable-impure-env
BIN_PATH = lib.makeBinPath [
# explicitly use nix, as e.g. lix does not have configurable-impure-env
pkgs.nix
# nixops error maybe due to our flake git hook: executing 'git': No such file or directory
pkgs.git
];
}

View file

@ -181,6 +181,10 @@ in
path = [
python-environment
manage-service
# XXX(@fricklerhandwerk): NixOps4 needs a Nix available.
pkgs.nix
# TODO(@fricklerhandwerk): Only needed because we invoke NixOps4 via `nix develop`, remove once that's gone.
pkgs.git
];
preStart = ''
# Auto-migrate on first run or if the package has changed

View file

@ -240,8 +240,6 @@ if user_settings_file is not None:
# The correct thing to do here would be using a helper function such as with `get_secret()` that will catch the exception and explain what's wrong and where to put the right values.
# Replacing the `USER_SETTINGS_FILE` mechanism following the comment there would probably be a good thing.
# PATH to expose to launch button
bin_path=env['BIN_PATH']
# path of the root flake to trigger nixops from, see #94.
# to deploy this should be specified, for dev just use a relative path.
repo_dir = env["REPO_DIR"]

View file

@ -89,7 +89,7 @@ class DeploymentStatus(ConfigurationForm):
def deployment(self, config: BaseModel):
env = {
"PATH": settings.bin_path,
"PATH": os.environ.get("PATH"),
# pass in form info to our deployment
"DEPLOYMENT": config.json()
}