1
0
Fork 0

reduce test vm footprint

This commit is contained in:
ibizaman 2024-03-17 11:01:27 -07:00
parent 6430e2566a
commit 8ccfe44df9
12 changed files with 88 additions and 1 deletions

View file

@ -608,7 +608,7 @@ in
environment.systemPackages = [ environment.systemPackages = [
# Needed for a few apps. Would be nice to avoid having to put that in the environment and instead override https://github.com/NixOS/nixpkgs/blob/261abe8a44a7e8392598d038d2e01f7b33cf26d0/nixos/modules/services/web-apps/nextcloud.nix#L1035 # Needed for a few apps. Would be nice to avoid having to put that in the environment and instead override https://github.com/NixOS/nixpkgs/blob/261abe8a44a7e8392598d038d2e01f7b33cf26d0/nixos/modules/services/web-apps/nextcloud.nix#L1035
pkgs.ffmpeg pkgs.ffmpeg-headless
# Needed for the recognize app. # Needed for the recognize app.
pkgs.nodejs pkgs.nodejs

View file

@ -1,5 +1,6 @@
{ pkgs, lib, ... }: { pkgs, lib, ... }:
let let
pkgs' = pkgs;
# TODO: Test login # TODO: Test login
commonTestScript = appname: { nodes, ... }: commonTestScript = appname: { nodes, ... }:
let let
@ -58,6 +59,9 @@ let
../../modules/blocks/postgresql.nix ../../modules/blocks/postgresql.nix
../../modules/blocks/nginx.nix ../../modules/blocks/nginx.nix
../../modules/services/arr.nix ../../modules/services/arr.nix
(pkgs'.path + "/nixos/modules/profiles/minimal.nix")
(pkgs'.path + "/nixos/modules/profiles/headless.nix")
(pkgs'.path + "/nixos/modules/profiles/qemu-guest.nix")
]; ];
shb.arr.${appname} = { shb.arr.${appname} = {

View file

@ -1,5 +1,7 @@
{ pkgs, lib, ... }: { pkgs, lib, ... }:
let let
pkgs' = pkgs;
# TODO: Test login # TODO: Test login
commonTestScript = { nodes, ... }: commonTestScript = { nodes, ... }:
let let
@ -43,6 +45,9 @@ in
nodes.server = { config, pkgs, ... }: { nodes.server = { config, pkgs, ... }: {
imports = [ imports = [
(pkgs'.path + "/nixos/modules/profiles/minimal.nix")
(pkgs'.path + "/nixos/modules/profiles/headless.nix")
(pkgs'.path + "/nixos/modules/profiles/qemu-guest.nix")
{ {
options = { options = {
shb.backup = lib.mkOption { type = lib.types.anything; }; shb.backup = lib.mkOption { type = lib.types.anything; };
@ -71,6 +76,9 @@ in
nodes.server = { config, pkgs, ... }: { nodes.server = { config, pkgs, ... }: {
imports = [ imports = [
(pkgs'.path + "/nixos/modules/profiles/minimal.nix")
(pkgs'.path + "/nixos/modules/profiles/headless.nix")
(pkgs'.path + "/nixos/modules/profiles/qemu-guest.nix")
{ {
options = { options = {
shb.backup = lib.mkOption { type = lib.types.anything; }; shb.backup = lib.mkOption { type = lib.types.anything; };
@ -120,6 +128,9 @@ in
nodes.server = { config, pkgs, ... }: { nodes.server = { config, pkgs, ... }: {
imports = [ imports = [
(pkgs'.path + "/nixos/modules/profiles/minimal.nix")
(pkgs'.path + "/nixos/modules/profiles/headless.nix")
(pkgs'.path + "/nixos/modules/profiles/qemu-guest.nix")
{ {
options = { options = {
shb.backup = lib.mkOption { type = lib.types.anything; }; shb.backup = lib.mkOption { type = lib.types.anything; };

View file

@ -1,5 +1,7 @@
{ pkgs, lib, ... }: { pkgs, lib, ... }:
let let
pkgs' = pkgs;
ldapAdminPassword = "ldapAdminPassword"; ldapAdminPassword = "ldapAdminPassword";
in in
{ {
@ -8,6 +10,9 @@ in
nodes.machine = { config, pkgs, ... }: { nodes.machine = { config, pkgs, ... }: {
imports = [ imports = [
(pkgs'.path + "/nixos/modules/profiles/minimal.nix")
(pkgs'.path + "/nixos/modules/profiles/headless.nix")
(pkgs'.path + "/nixos/modules/profiles/qemu-guest.nix")
{ {
options = { options = {
shb.backup = lib.mkOption { type = lib.types.anything; }; shb.backup = lib.mkOption { type = lib.types.anything; };

View file

@ -1,5 +1,7 @@
{ pkgs, lib, ... }: { pkgs, lib, ... }:
let let
pkgs' = pkgs;
# TODO: Test login # TODO: Test login
commonTestScript = { nodes, ... }: commonTestScript = { nodes, ... }:
let let
@ -43,6 +45,9 @@ in
nodes.server = { config, pkgs, ... }: { nodes.server = { config, pkgs, ... }: {
imports = [ imports = [
(pkgs'.path + "/nixos/modules/profiles/minimal.nix")
(pkgs'.path + "/nixos/modules/profiles/headless.nix")
(pkgs'.path + "/nixos/modules/profiles/qemu-guest.nix")
{ {
options = { options = {
shb.backup = lib.mkOption { type = lib.types.anything; }; shb.backup = lib.mkOption { type = lib.types.anything; };
@ -70,6 +75,9 @@ in
nodes.server = { config, pkgs, ... }: { nodes.server = { config, pkgs, ... }: {
imports = [ imports = [
(pkgs'.path + "/nixos/modules/profiles/minimal.nix")
(pkgs'.path + "/nixos/modules/profiles/headless.nix")
(pkgs'.path + "/nixos/modules/profiles/qemu-guest.nix")
{ {
options = { options = {
shb.backup = lib.mkOption { type = lib.types.anything; }; shb.backup = lib.mkOption { type = lib.types.anything; };

View file

@ -1,5 +1,7 @@
{ pkgs, lib, ... }: { pkgs, lib, ... }:
let let
pkgs' = pkgs;
# TODO: Test login # TODO: Test login
commonTestScript = { nodes, ... }: commonTestScript = { nodes, ... }:
let let
@ -43,6 +45,9 @@ in
nodes.server = { config, pkgs, ... }: { nodes.server = { config, pkgs, ... }: {
imports = [ imports = [
(pkgs'.path + "/nixos/modules/profiles/minimal.nix")
(pkgs'.path + "/nixos/modules/profiles/headless.nix")
(pkgs'.path + "/nixos/modules/profiles/qemu-guest.nix")
{ {
options = { options = {
shb.backup = lib.mkOption { type = lib.types.anything; }; shb.backup = lib.mkOption { type = lib.types.anything; };
@ -71,6 +76,9 @@ in
nodes.server = { config, pkgs, ... }: { nodes.server = { config, pkgs, ... }: {
imports = [ imports = [
(pkgs'.path + "/nixos/modules/profiles/minimal.nix")
(pkgs'.path + "/nixos/modules/profiles/headless.nix")
(pkgs'.path + "/nixos/modules/profiles/qemu-guest.nix")
{ {
options = { options = {
shb.backup = lib.mkOption { type = lib.types.anything; }; shb.backup = lib.mkOption { type = lib.types.anything; };
@ -119,6 +127,9 @@ in
nodes.server = { config, pkgs, ... }: { nodes.server = { config, pkgs, ... }: {
imports = [ imports = [
(pkgs'.path + "/nixos/modules/profiles/minimal.nix")
(pkgs'.path + "/nixos/modules/profiles/headless.nix")
(pkgs'.path + "/nixos/modules/profiles/qemu-guest.nix")
{ {
options = { options = {
shb.backup = lib.mkOption { type = lib.types.anything; }; shb.backup = lib.mkOption { type = lib.types.anything; };
@ -169,6 +180,9 @@ in
nodes.server = { config, pkgs, ... }: { nodes.server = { config, pkgs, ... }: {
imports = [ imports = [
(pkgs'.path + "/nixos/modules/profiles/minimal.nix")
(pkgs'.path + "/nixos/modules/profiles/headless.nix")
(pkgs'.path + "/nixos/modules/profiles/qemu-guest.nix")
{ {
options = { options = {
shb.backup = lib.mkOption { type = lib.types.anything; }; shb.backup = lib.mkOption { type = lib.types.anything; };

View file

@ -1,10 +1,16 @@
{ pkgs, lib, ... }: { pkgs, lib, ... }:
let
pkgs' = pkgs;
in
{ {
auth = pkgs.nixosTest { auth = pkgs.nixosTest {
name = "ldap-auth"; name = "ldap-auth";
nodes.server = { config, pkgs, ... }: { nodes.server = { config, pkgs, ... }: {
imports = [ imports = [
(pkgs'.path + "/nixos/modules/profiles/minimal.nix")
(pkgs'.path + "/nixos/modules/profiles/headless.nix")
(pkgs'.path + "/nixos/modules/profiles/qemu-guest.nix")
{ {
options = { options = {
shb.ssl.enable = lib.mkEnableOption "ssl"; shb.ssl.enable = lib.mkEnableOption "ssl";

View file

@ -1,5 +1,7 @@
{ pkgs, lib, ... }: { pkgs, lib, ... }:
let let
pkgs' = pkgs;
shblib = pkgs.callPackage ../../lib {}; shblib = pkgs.callPackage ../../lib {};
in in
{ {
@ -45,6 +47,9 @@ in
nodes.machine = { config, pkgs, ... }: nodes.machine = { config, pkgs, ... }:
{ {
imports = [ imports = [
(pkgs'.path + "/nixos/modules/profiles/minimal.nix")
(pkgs'.path + "/nixos/modules/profiles/headless.nix")
(pkgs'.path + "/nixos/modules/profiles/qemu-guest.nix")
{ {
options = { options = {
libtest.config = lib.mkOption { libtest.config = lib.mkOption {

View file

@ -1,4 +1,7 @@
{ pkgs, lib, ... }: { pkgs, lib, ... }:
let
pkgs' = pkgs;
in
{ {
# This test, although simple, makes sure all provisioning went fine. # This test, although simple, makes sure all provisioning went fine.
auth = pkgs.nixosTest { auth = pkgs.nixosTest {
@ -6,6 +9,9 @@
nodes.machine = { config, pkgs, ... }: { nodes.machine = { config, pkgs, ... }: {
imports = [ imports = [
(pkgs'.path + "/nixos/modules/profiles/minimal.nix")
(pkgs'.path + "/nixos/modules/profiles/headless.nix")
(pkgs'.path + "/nixos/modules/profiles/qemu-guest.nix")
{ {
options = { options = {
shb.ssl.enable = lib.mkEnableOption "ssl"; shb.ssl.enable = lib.mkEnableOption "ssl";

View file

@ -1,5 +1,6 @@
{ pkgs, lib, ... }: { pkgs, lib, ... }:
let let
pkgs' = pkgs;
adminUser = "root"; adminUser = "root";
adminPass = "rootpw"; adminPass = "rootpw";
@ -129,6 +130,9 @@ in
nodes.server = { config, pkgs, ... }: { nodes.server = { config, pkgs, ... }: {
imports = [ imports = [
(pkgs'.path + "/nixos/modules/profiles/minimal.nix")
(pkgs'.path + "/nixos/modules/profiles/headless.nix")
(pkgs'.path + "/nixos/modules/profiles/qemu-guest.nix")
{ {
options = { options = {
shb.backup = lib.mkOption { type = lib.types.anything; }; shb.backup = lib.mkOption { type = lib.types.anything; };
@ -169,6 +173,9 @@ in
nodes.server = { config, pkgs, ... }: { nodes.server = { config, pkgs, ... }: {
imports = [ imports = [
(pkgs'.path + "/nixos/modules/profiles/minimal.nix")
(pkgs'.path + "/nixos/modules/profiles/headless.nix")
(pkgs'.path + "/nixos/modules/profiles/qemu-guest.nix")
{ {
options = { options = {
shb.backup = lib.mkOption { type = lib.types.anything; }; shb.backup = lib.mkOption { type = lib.types.anything; };

View file

@ -1,10 +1,16 @@
{ pkgs, lib, ... }: { pkgs, lib, ... }:
let
pkgs' = pkgs;
in
{ {
peerWithoutUser = pkgs.nixosTest { peerWithoutUser = pkgs.nixosTest {
name = "postgresql-peerWithoutUser"; name = "postgresql-peerWithoutUser";
nodes.machine = { config, pkgs, ... }: { nodes.machine = { config, pkgs, ... }: {
imports = [ imports = [
(pkgs'.path + "/nixos/modules/profiles/minimal.nix")
(pkgs'.path + "/nixos/modules/profiles/headless.nix")
(pkgs'.path + "/nixos/modules/profiles/qemu-guest.nix")
../../modules/blocks/postgresql.nix ../../modules/blocks/postgresql.nix
]; ];
@ -40,6 +46,9 @@
nodes.machine = { config, pkgs, ... }: { nodes.machine = { config, pkgs, ... }: {
imports = [ imports = [
(pkgs'.path + "/nixos/modules/profiles/minimal.nix")
(pkgs'.path + "/nixos/modules/profiles/headless.nix")
(pkgs'.path + "/nixos/modules/profiles/qemu-guest.nix")
../../modules/blocks/postgresql.nix ../../modules/blocks/postgresql.nix
]; ];
@ -88,6 +97,9 @@
nodes.machine = { config, pkgs, ... }: { nodes.machine = { config, pkgs, ... }: {
imports = [ imports = [
(pkgs'.path + "/nixos/modules/profiles/minimal.nix")
(pkgs'.path + "/nixos/modules/profiles/headless.nix")
(pkgs'.path + "/nixos/modules/profiles/qemu-guest.nix")
../../modules/blocks/postgresql.nix ../../modules/blocks/postgresql.nix
]; ];
@ -124,6 +136,9 @@
nodes.machine = { config, pkgs, ... }: { nodes.machine = { config, pkgs, ... }: {
imports = [ imports = [
(pkgs'.path + "/nixos/modules/profiles/minimal.nix")
(pkgs'.path + "/nixos/modules/profiles/headless.nix")
(pkgs'.path + "/nixos/modules/profiles/qemu-guest.nix")
../../modules/blocks/postgresql.nix ../../modules/blocks/postgresql.nix
]; ];

View file

@ -1,10 +1,16 @@
{ pkgs, lib, ... }: { pkgs, lib, ... }:
let
pkgs' = pkgs;
in
{ {
test = pkgs.nixosTest { test = pkgs.nixosTest {
name = "ssl-test"; name = "ssl-test";
nodes.server = { config, pkgs, ... }: { nodes.server = { config, pkgs, ... }: {
imports = [ imports = [
(pkgs'.path + "/nixos/modules/profiles/minimal.nix")
(pkgs'.path + "/nixos/modules/profiles/headless.nix")
(pkgs'.path + "/nixos/modules/profiles/qemu-guest.nix")
../../modules/blocks/ssl.nix ../../modules/blocks/ssl.nix
]; ];