diff --git a/nix_test.go b/nix_test.go index cdbcc71..fd5872b 100644 --- a/nix_test.go +++ b/nix_test.go @@ -159,7 +159,7 @@ func TestUnusedResources(t *testing.T) { }{ { runtime: ContainerRuntimeDocker, - want: `{ pkgs, ... }: + want: `{ pkgs, lib, ... }: { # Runtime @@ -173,7 +173,7 @@ func TestUnusedResources(t *testing.T) { }, { runtime: ContainerRuntimePodman, - want: `{ pkgs, ... }: + want: `{ pkgs, lib, ... }: { # Runtime diff --git a/templates/container.nix.tmpl b/templates/container.nix.tmpl index bfbaab0..7106971 100644 --- a/templates/container.nix.tmpl +++ b/templates/container.nix.tmpl @@ -73,7 +73,7 @@ systemd.services."{{.Runtime}}-{{.Name}}" = { {{- if .SystemdConfig.Service}} serviceConfig = { {{- range $k, $v := .SystemdConfig.Service.Options}} - {{$k}} = {{toNixValue $v}}; + {{$k}} = lib.mkOverride 500 {{toNixValue $v}}; {{- end}} }; {{- end}} @@ -87,7 +87,7 @@ systemd.services."{{.Runtime}}-{{.Name}}" = { {{- if .SystemdConfig.Unit.Options}} unitConfig = { {{- range $k, $v := .SystemdConfig.Unit.Options}} - {{$k}} = {{toNixValue $v}}; + {{$k}} = lib.mkOverride 500 {{toNixValue $v}}; {{- end}} }; {{- end}} diff --git a/templates/main.nix.tmpl b/templates/main.nix.tmpl index b910bd2..fd3d7bc 100644 --- a/templates/main.nix.tmpl +++ b/templates/main.nix.tmpl @@ -1,8 +1,8 @@ {{- if .Version -}} # Auto-generated using compose2nix v{{.Version}}. -{ pkgs, ... }: +{ pkgs, lib, ... }: {{- else -}} -{ pkgs, ... }: +{ pkgs, lib, ... }: {{- end}} { diff --git a/testdata/TestDocker_RemoveVolumes_out.nix b/testdata/TestDocker_RemoveVolumes_out.nix index 69648a8..88db5f3 100644 --- a/testdata/TestDocker_RemoveVolumes_out.nix +++ b/testdata/TestDocker_RemoveVolumes_out.nix @@ -1,4 +1,4 @@ -{ pkgs, ... }: +{ pkgs, lib, ... }: { # Runtime @@ -42,8 +42,8 @@ }; systemd.services."docker-jellyseerr" = { serviceConfig = { - Restart = "on-failure"; - RestartSec = "5s"; + Restart = lib.mkOverride 500 "on-failure"; + RestartSec = lib.mkOverride 500 "5s"; }; startLimitBurst = 3; startLimitIntervalSec = 120; @@ -93,11 +93,11 @@ }; systemd.services."docker-myproject-sabnzbd" = { serviceConfig = { - Restart = "always"; - RuntimeMaxSec = 10; + Restart = lib.mkOverride 500 "always"; + RuntimeMaxSec = lib.mkOverride 500 10; }; unitConfig = { - Description = "This is the sabnzbd container!"; + Description = lib.mkOverride 500 "This is the sabnzbd container!"; }; after = [ "docker-network-myproject-default.service" @@ -141,8 +141,8 @@ }; systemd.services."docker-photoprism-mariadb" = { serviceConfig = { - Restart = "always"; - RestartSec = "3m0s"; + Restart = lib.mkOverride 500 "always"; + RestartSec = lib.mkOverride 500 "3m0s"; }; startLimitBurst = 10; startLimitIntervalSec = 86400; @@ -213,7 +213,7 @@ }; systemd.services."docker-torrent-client" = { serviceConfig = { - Restart = "on-failure"; + Restart = lib.mkOverride 500 "on-failure"; }; startLimitBurst = 3; startLimitIntervalSec = 86400; @@ -269,10 +269,10 @@ }; systemd.services."docker-traefik" = { serviceConfig = { - Restart = "none"; + Restart = lib.mkOverride 500 "none"; }; unitConfig = { - AllowIsolate = true; + AllowIsolate = lib.mkOverride 500 true; }; partOf = [ "docker-compose-myproject-root.target" diff --git a/testdata/TestDocker_SystemdMount_out.nix b/testdata/TestDocker_SystemdMount_out.nix index 0d04786..24e8b0e 100644 --- a/testdata/TestDocker_SystemdMount_out.nix +++ b/testdata/TestDocker_SystemdMount_out.nix @@ -1,4 +1,4 @@ -{ pkgs, ... }: +{ pkgs, lib, ... }: { # Runtime @@ -42,8 +42,8 @@ }; systemd.services."docker-jellyseerr" = { serviceConfig = { - Restart = "on-failure"; - RestartSec = "5s"; + Restart = lib.mkOverride 500 "on-failure"; + RestartSec = lib.mkOverride 500 "5s"; }; startLimitBurst = 3; startLimitIntervalSec = 120; @@ -95,11 +95,11 @@ }; systemd.services."docker-myproject-sabnzbd" = { serviceConfig = { - Restart = "always"; - RuntimeMaxSec = 10; + Restart = lib.mkOverride 500 "always"; + RuntimeMaxSec = lib.mkOverride 500 10; }; unitConfig = { - Description = "This is the sabnzbd container!"; + Description = lib.mkOverride 500 "This is the sabnzbd container!"; }; after = [ "docker-network-myproject-default.service" @@ -145,8 +145,8 @@ }; systemd.services."docker-photoprism-mariadb" = { serviceConfig = { - Restart = "always"; - RestartSec = "3m0s"; + Restart = lib.mkOverride 500 "always"; + RestartSec = lib.mkOverride 500 "3m0s"; }; startLimitBurst = 10; startLimitIntervalSec = 86400; @@ -219,7 +219,7 @@ }; systemd.services."docker-torrent-client" = { serviceConfig = { - Restart = "on-failure"; + Restart = lib.mkOverride 500 "on-failure"; }; startLimitBurst = 3; startLimitIntervalSec = 86400; @@ -277,10 +277,10 @@ }; systemd.services."docker-traefik" = { serviceConfig = { - Restart = "none"; + Restart = lib.mkOverride 500 "none"; }; unitConfig = { - AllowIsolate = true; + AllowIsolate = lib.mkOverride 500 true; }; partOf = [ "docker-compose-myproject-root.target" diff --git a/testdata/TestDocker_WithProject_out.nix b/testdata/TestDocker_WithProject_out.nix index ac8f1dd..4cfaa93 100644 --- a/testdata/TestDocker_WithProject_out.nix +++ b/testdata/TestDocker_WithProject_out.nix @@ -1,4 +1,4 @@ -{ pkgs, ... }: +{ pkgs, lib, ... }: { # Runtime @@ -42,8 +42,8 @@ }; systemd.services."docker-jellyseerr" = { serviceConfig = { - Restart = "on-failure"; - RestartSec = "5s"; + Restart = lib.mkOverride 500 "on-failure"; + RestartSec = lib.mkOverride 500 "5s"; }; startLimitBurst = 3; startLimitIntervalSec = 120; @@ -93,11 +93,11 @@ }; systemd.services."docker-myproject-sabnzbd" = { serviceConfig = { - Restart = "always"; - RuntimeMaxSec = 10; + Restart = lib.mkOverride 500 "always"; + RuntimeMaxSec = lib.mkOverride 500 10; }; unitConfig = { - Description = "This is the sabnzbd container!"; + Description = lib.mkOverride 500 "This is the sabnzbd container!"; }; after = [ "docker-network-myproject-default.service" @@ -141,8 +141,8 @@ }; systemd.services."docker-photoprism-mariadb" = { serviceConfig = { - Restart = "always"; - RestartSec = "3m0s"; + Restart = lib.mkOverride 500 "always"; + RestartSec = lib.mkOverride 500 "3m0s"; }; startLimitBurst = 10; startLimitIntervalSec = 86400; @@ -213,7 +213,7 @@ }; systemd.services."docker-torrent-client" = { serviceConfig = { - Restart = "on-failure"; + Restart = lib.mkOverride 500 "on-failure"; }; startLimitBurst = 3; startLimitIntervalSec = 86400; @@ -269,10 +269,10 @@ }; systemd.services."docker-traefik" = { serviceConfig = { - Restart = "none"; + Restart = lib.mkOverride 500 "none"; }; unitConfig = { - AllowIsolate = true; + AllowIsolate = lib.mkOverride 500 true; }; partOf = [ "docker-compose-myproject-root.target" diff --git a/testdata/TestDocker_out.nix b/testdata/TestDocker_out.nix index c6f8b31..e68a6fa 100644 --- a/testdata/TestDocker_out.nix +++ b/testdata/TestDocker_out.nix @@ -1,4 +1,4 @@ -{ pkgs, ... }: +{ pkgs, lib, ... }: { # Runtime @@ -41,8 +41,8 @@ }; systemd.services."docker-jellyseerr" = { serviceConfig = { - Restart = "on-failure"; - RestartSec = "5s"; + Restart = lib.mkOverride 500 "on-failure"; + RestartSec = lib.mkOverride 500 "5s"; }; startLimitBurst = 3; startLimitIntervalSec = 120; @@ -91,11 +91,11 @@ }; systemd.services."docker-myproject-sabnzbd" = { serviceConfig = { - Restart = "always"; - RuntimeMaxSec = 10; + Restart = lib.mkOverride 500 "always"; + RuntimeMaxSec = lib.mkOverride 500 10; }; unitConfig = { - Description = "This is the sabnzbd container!"; + Description = lib.mkOverride 500 "This is the sabnzbd container!"; }; after = [ "docker-network-myproject-default.service" @@ -138,8 +138,8 @@ }; systemd.services."docker-photoprism-mariadb" = { serviceConfig = { - Restart = "always"; - RestartSec = "3m0s"; + Restart = lib.mkOverride 500 "always"; + RestartSec = lib.mkOverride 500 "3m0s"; }; startLimitBurst = 10; startLimitIntervalSec = 86400; @@ -209,7 +209,7 @@ }; systemd.services."docker-torrent-client" = { serviceConfig = { - Restart = "on-failure"; + Restart = lib.mkOverride 500 "on-failure"; }; startLimitBurst = 3; startLimitIntervalSec = 86400; @@ -264,10 +264,10 @@ }; systemd.services."docker-traefik" = { serviceConfig = { - Restart = "none"; + Restart = lib.mkOverride 500 "none"; }; unitConfig = { - AllowIsolate = true; + AllowIsolate = lib.mkOverride 500 true; }; partOf = [ "docker-compose-myproject-root.target" diff --git a/testdata/TestPodman_WithProject_out.nix b/testdata/TestPodman_WithProject_out.nix index 43908b6..1522c8a 100644 --- a/testdata/TestPodman_WithProject_out.nix +++ b/testdata/TestPodman_WithProject_out.nix @@ -1,4 +1,4 @@ -{ pkgs, ... }: +{ pkgs, lib, ... }: { # Runtime @@ -47,8 +47,8 @@ }; systemd.services."podman-jellyseerr" = { serviceConfig = { - Restart = "on-failure"; - RestartSec = "5s"; + Restart = lib.mkOverride 500 "on-failure"; + RestartSec = lib.mkOverride 500 "5s"; }; startLimitBurst = 3; startLimitIntervalSec = 120; @@ -92,11 +92,11 @@ }; systemd.services."podman-myproject-sabnzbd" = { serviceConfig = { - Restart = "always"; - RuntimeMaxSec = 10; + Restart = lib.mkOverride 500 "always"; + RuntimeMaxSec = lib.mkOverride 500 10; }; unitConfig = { - Description = "This is the sabnzbd container!"; + Description = lib.mkOverride 500 "This is the sabnzbd container!"; }; after = [ "podman-network-myproject-default.service" @@ -138,8 +138,8 @@ }; systemd.services."podman-photoprism-mariadb" = { serviceConfig = { - Restart = "always"; - RestartSec = "3m0s"; + Restart = lib.mkOverride 500 "always"; + RestartSec = lib.mkOverride 500 "3m0s"; }; startLimitBurst = 10; startLimitIntervalSec = 86400; @@ -203,7 +203,7 @@ }; systemd.services."podman-torrent-client" = { serviceConfig = { - Restart = "on-failure"; + Restart = lib.mkOverride 500 "on-failure"; }; startLimitBurst = 3; startLimitIntervalSec = 86400; @@ -257,10 +257,10 @@ }; systemd.services."podman-traefik" = { serviceConfig = { - Restart = "none"; + Restart = lib.mkOverride 500 "none"; }; unitConfig = { - AllowIsolate = true; + AllowIsolate = lib.mkOverride 500 true; }; partOf = [ "podman-compose-myproject-root.target" diff --git a/testdata/TestPodman_out.nix b/testdata/TestPodman_out.nix index 8897677..663515c 100644 --- a/testdata/TestPodman_out.nix +++ b/testdata/TestPodman_out.nix @@ -1,4 +1,4 @@ -{ pkgs, ... }: +{ pkgs, lib, ... }: { # Runtime @@ -46,8 +46,8 @@ }; systemd.services."podman-jellyseerr" = { serviceConfig = { - Restart = "on-failure"; - RestartSec = "5s"; + Restart = lib.mkOverride 500 "on-failure"; + RestartSec = lib.mkOverride 500 "5s"; }; startLimitBurst = 3; startLimitIntervalSec = 120; @@ -90,11 +90,11 @@ }; systemd.services."podman-myproject-sabnzbd" = { serviceConfig = { - Restart = "always"; - RuntimeMaxSec = 10; + Restart = lib.mkOverride 500 "always"; + RuntimeMaxSec = lib.mkOverride 500 10; }; unitConfig = { - Description = "This is the sabnzbd container!"; + Description = lib.mkOverride 500 "This is the sabnzbd container!"; }; after = [ "podman-network-myproject-default.service" @@ -135,8 +135,8 @@ }; systemd.services."podman-photoprism-mariadb" = { serviceConfig = { - Restart = "always"; - RestartSec = "3m0s"; + Restart = lib.mkOverride 500 "always"; + RestartSec = lib.mkOverride 500 "3m0s"; }; startLimitBurst = 10; startLimitIntervalSec = 86400; @@ -199,7 +199,7 @@ }; systemd.services."podman-torrent-client" = { serviceConfig = { - Restart = "on-failure"; + Restart = lib.mkOverride 500 "on-failure"; }; startLimitBurst = 3; startLimitIntervalSec = 86400; @@ -252,10 +252,10 @@ }; systemd.services."podman-traefik" = { serviceConfig = { - Restart = "none"; + Restart = lib.mkOverride 500 "none"; }; unitConfig = { - AllowIsolate = true; + AllowIsolate = lib.mkOverride 500 true; }; partOf = [ "podman-compose-myproject-root.target"