diff --git a/pkgs/development/tools/continuous-integration/woodpecker-plugin-git/default.nix b/pkgs/development/tools/continuous-integration/woodpecker-plugin-git/default.nix new file mode 100644 index 000000000000..d1b3ea7bd660 --- /dev/null +++ b/pkgs/development/tools/continuous-integration/woodpecker-plugin-git/default.nix @@ -0,0 +1,42 @@ +{ lib +, buildGoModule +, fetchFromGitHub +, testers +, woodpecker-plugin-git +}: + +buildGoModule rec { + pname = "woodpecker-plugin-git"; + version = "2.1.0"; + + src = fetchFromGitHub { + owner = "woodpecker-ci"; + repo = "plugin-git"; + rev = "refs/tags/${version}"; + hash = "sha256-k9w87zt021F6c4GD8kIpqC2ZjpPBiyvJO80z81TKtnE="; + }; + + vendorHash = "sha256-63Ly/9yIJu2K/DwOfGs9pYU3fokbs2senZkl3MJ1UIY="; + + CGO_ENABLED = "0"; + + ldflags = [ + "-s" + "-w" + "-X main.version=${version}" + ]; + + # Checks fail because they require network access. + doCheck = false; + + passthru.tests.version = testers.testVersion { package = woodpecker-plugin-git; }; + + meta = with lib; { + description = "Woodpecker plugin for cloning Git repositories."; + homepage = "https://woodpecker-ci.org/"; + changelog = "https://github.com/woodpecker-ci/plugin-git/releases/tag/${version}"; + license = licenses.asl20; + mainProgram = "plugin-git"; + maintainers = with maintainers; [ ambroisie ]; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 0eee895e97cb..9d7dac08bf37 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -14200,6 +14200,8 @@ with pkgs; woodpecker-pipeline-transform = callPackage ../development/tools/continuous-integration/woodpecker-pipeline-transform { }; + woodpecker-plugin-git = callPackage ../development/tools/continuous-integration/woodpecker-plugin-git { }; + woodpecker-server = callPackage ../development/tools/continuous-integration/woodpecker/server.nix { woodpecker-frontend = callPackage ../development/tools/continuous-integration/woodpecker/frontend.nix { }; };