nixosTestLib: fix various linting issues

This commit is contained in:
Jörg Thalheim
2025-07-02 16:22:58 +02:00
parent ea93d8fec7
commit c509f333e4
4 changed files with 19 additions and 17 deletions

View File

@@ -1,7 +1,6 @@
"""Nix store setup utilities for VM tests"""
import os
import shutil
import subprocess
from pathlib import Path
@@ -10,7 +9,8 @@ def setup_nix_in_nix(closure_info: str | None) -> None:
"""Set up Nix store inside test environment
Args:
closure_info: Path to closure info directory containing store-paths file, or None if no closure info
closure_info: Path to closure info directory containing store-paths file,
or None if no closure info
"""
tmpdir = Path(os.environ.get("TMPDIR", "/tmp"))
@@ -22,7 +22,7 @@ def setup_nix_in_nix(closure_info: str | None) -> None:
os.environ["NIX_CONFIG"] = "substituters = \ntrusted-public-keys = "
# Set up environment variables for test environment
os.environ["HOME"] = tmpdir
os.environ["HOME"] = str(tmpdir)
os.environ["NIX_STATE_DIR"] = f"{tmpdir}/nix"
os.environ["NIX_CONF_DIR"] = f"{tmpdir}/etc"
os.environ["IN_NIX_SANDBOX"] = "1"
@@ -41,11 +41,12 @@ def setup_nix_in_nix(closure_info: str | None) -> None:
with store_paths_file.open() as f:
store_paths = f.read().strip().split("\n")
# Copy store paths to test store using external cp command (handles symlinks better)
# Copy store paths to test store using external cp command
# (handles symlinks better)
subprocess.run(
["cp", "--recursive", "--target", f"{tmpdir}/store"] +
[path.strip() for path in store_paths if path.strip()],
check=True
["cp", "--recursive", "--target", f"{tmpdir}/store"]
+ [path.strip() for path in store_paths if path.strip()],
check=True,
)
# Load Nix database

View File

@@ -23,7 +23,7 @@ def check_host_port_open(port: int) -> bool:
s.settimeout(1)
result = s.connect_ex(("localhost", port))
return result == 0
except Exception as e:
except OSError as e:
print(f"Port check failed: {e}")
return False

View File

@@ -1,6 +1,7 @@
"""SSH and test setup utilities"""
import subprocess
from pathlib import Path
from typing import NamedTuple
from .nix_setup import setup_nix_in_nix
@@ -34,15 +35,14 @@ def setup_test_environment(
setup_port_forwarding(target, host_port)
ssh_key = os.path.join(temp_dir, "id_ed25519")
with open(ssh_key, "w") as f:
with open(assets_ssh_privkey) as src:
f.write(src.read())
os.chmod(ssh_key, 0o600)
ssh_key = Path(temp_dir) / "id_ed25519"
with ssh_key.open("w") as f, Path(assets_ssh_privkey).open() as src:
f.write(src.read())
ssh_key.chmod(0o600)
# Copy test flake to temp directory
flake_dir = os.path.join(temp_dir, "test-flake")
subprocess.run(["cp", "-r", clan_core_for_checks, flake_dir], check=True)
subprocess.run(["chmod", "-R", "+w", flake_dir], check=True)
flake_dir = Path(temp_dir) / "test-flake"
subprocess.run(["cp", "-r", clan_core_for_checks, flake_dir], check=True) # noqa: S603, S607
subprocess.run(["chmod", "-R", "+w", flake_dir], check=True) # noqa: S603, S607
return TestEnvironment(host_port, ssh_key, flake_dir)
return TestEnvironment(host_port, str(ssh_key), str(flake_dir))

View File

@@ -41,4 +41,5 @@ ignore = [
"ANN", # type annotations
"COM812", # trailing comma
"ISC001", # string concatenation
"T201", # print statements
]