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 ef345a7fcb
commit 2a6ab6de21
4 changed files with 8 additions and 9 deletions

View file

@ -9,10 +9,4 @@ in
{ {
REPO_DIR = toString ../.; REPO_DIR = toString ../.;
# explicitly use nix, as e.g. lix does not have configurable-impure-env # 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,13 @@ in
path = [ path = [
python-environment python-environment
manage-service manage-service
# TODO(@fricklerhandwerk): not sure why we the following
# XXX(@kiara): explicitly use Nix, as e.g. Lix does not have `--configurable-impure-env`
# XXX(@fricklerhandwerk): NixOps4 brings its own Nix IIUC, and so that should go out when we remove `nix develop`
pkgs.nix
# XXX(@kiara): nixops error maybe due to our flake git hook: executing 'git': No such file or directory
# XXX(@fricklerhandwerk): We shouldn't need Git at all. Also maybe due to `nix develop`?
pkgs.git
]; ];
preStart = '' preStart = ''
# Auto-migrate on first run or if the package has changed # 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. # 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. # 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. # path of the root flake to trigger nixops from, see #94.
# to deploy this should be specified, for dev just use a relative path. # to deploy this should be specified, for dev just use a relative path.
repo_dir = env["REPO_DIR"] repo_dir = env["REPO_DIR"]

View file

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