From 7d05a6a910b34c77d549889732840499d987d5f9 Mon Sep 17 00:00:00 2001 From: IndeedNotJames Date: Fri, 24 Feb 2023 02:59:30 +0100 Subject: [PATCH 1/3] nixos/tests/gitea: make gitea package configurable This allows the same tests to be used for forgejo, a soft-fork of gitea, which currently does not have any tests. --- nixos/tests/all-tests.nix | 2 +- nixos/tests/gitea.nix | 6 ++++-- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/nixos/tests/all-tests.nix b/nixos/tests/all-tests.nix index ecf95c2cba0a..ea773a2db227 100644 --- a/nixos/tests/all-tests.nix +++ b/nixos/tests/all-tests.nix @@ -241,7 +241,7 @@ in { geth = handleTest ./geth.nix {}; ghostunnel = handleTest ./ghostunnel.nix {}; gitdaemon = handleTest ./gitdaemon.nix {}; - gitea = handleTest ./gitea.nix {}; + gitea = handleTest ./gitea.nix { giteaPackage = pkgs.gitea; }; gitlab = handleTest ./gitlab.nix {}; gitolite = handleTest ./gitolite.nix {}; gitolite-fcgiwrap = handleTest ./gitolite-fcgiwrap.nix {}; diff --git a/nixos/tests/gitea.nix b/nixos/tests/gitea.nix index 68a2566c1191..24c84e54fc1d 100644 --- a/nixos/tests/gitea.nix +++ b/nixos/tests/gitea.nix @@ -1,5 +1,6 @@ { system ? builtins.currentSystem, config ? {}, + giteaPackage, pkgs ? import ../.. { inherit system config; } }: @@ -9,7 +10,7 @@ with pkgs.lib; let supportedDbTypes = [ "mysql" "postgres" "sqlite3" ]; makeGiteaTest = type: nameValuePair type (makeTest { - name = "gitea-${type}"; + name = "${giteaPackage.pname}-${type}"; meta.maintainers = with maintainers; [ aanderse kolaente ma27 ]; nodes = { @@ -18,9 +19,10 @@ let services.gitea = { enable = true; database = { inherit type; }; + package = giteaPackage; settings.service.DISABLE_REGISTRATION = true; }; - environment.systemPackages = [ pkgs.gitea pkgs.jq ]; + environment.systemPackages = [ giteaPackage pkgs.jq ]; services.openssh.enable = true; }; client1 = { config, pkgs, ... }: { From 889eb7a3153647fb27136081f1b44a45eceb16fb Mon Sep 17 00:00:00 2001 From: IndeedNotJames Date: Fri, 24 Feb 2023 02:59:30 +0100 Subject: [PATCH 2/3] nixos/tests/gitea: add indeednotjames as maintainer Mostly, because I (@IndeedNotJames) made a slight change to those tests and intend on extending them in the future. --- nixos/tests/gitea.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nixos/tests/gitea.nix b/nixos/tests/gitea.nix index 24c84e54fc1d..d856ecca9a13 100644 --- a/nixos/tests/gitea.nix +++ b/nixos/tests/gitea.nix @@ -11,7 +11,7 @@ let supportedDbTypes = [ "mysql" "postgres" "sqlite3" ]; makeGiteaTest = type: nameValuePair type (makeTest { name = "${giteaPackage.pname}-${type}"; - meta.maintainers = with maintainers; [ aanderse kolaente ma27 ]; + meta.maintainers = with maintainers; [ aanderse indeednotjames kolaente ma27 ]; nodes = { server = { config, pkgs, ... }: { From 1b304e1dbc1c37f73e5a82e547fea58bc57ad10a Mon Sep 17 00:00:00 2001 From: IndeedNotJames Date: Fri, 24 Feb 2023 02:59:30 +0100 Subject: [PATCH 3/3] forgejo: use existing nixos/tests/gitea as test forgejo is a soft-fork of gitea and gitea's existing tests work great with forgejo. At least for now, as this could change, though somewhat unlikely. --- nixos/tests/all-tests.nix | 1 + pkgs/applications/version-management/forgejo/default.nix | 3 +++ 2 files changed, 4 insertions(+) diff --git a/nixos/tests/all-tests.nix b/nixos/tests/all-tests.nix index ea773a2db227..785a5621f57e 100644 --- a/nixos/tests/all-tests.nix +++ b/nixos/tests/all-tests.nix @@ -228,6 +228,7 @@ in { fluentd = handleTest ./fluentd.nix {}; fluidd = handleTest ./fluidd.nix {}; fontconfig-default-fonts = handleTest ./fontconfig-default-fonts.nix {}; + forgejo = handleTest ./gitea.nix { giteaPackage = pkgs.forgejo; }; freenet = handleTest ./freenet.nix {}; freeswitch = handleTest ./freeswitch.nix {}; freshrss-sqlite = handleTest ./freshrss-sqlite.nix {}; diff --git a/pkgs/applications/version-management/forgejo/default.nix b/pkgs/applications/version-management/forgejo/default.nix index 2006c5efeea0..f6e34830316b 100644 --- a/pkgs/applications/version-management/forgejo/default.nix +++ b/pkgs/applications/version-management/forgejo/default.nix @@ -10,6 +10,7 @@ , lib , makeWrapper , nix +, nixosTests , openssh , pam , pamSupport ? true @@ -65,6 +66,8 @@ buildGoModule rec { --prefix PATH : ${lib.makeBinPath [ bash git gzip openssh ]} ''; + passthru.tests = nixosTests.forgejo; + passthru.updateScript = lib.getExe (writeShellApplication { name = "update-forgejo"; runtimeInputs = [