nixpkgs mirror (for testing)
github.com/NixOS/nixpkgs
nix
1{
2 lib,
3 buildGoModule,
4 fetchFromGitHub,
5 gitMinimal,
6 nix-update-script,
7}:
8
9buildGoModule rec {
10 pname = "prow";
11 version = "0-unstable-2026-01-26";
12 rev = "a0e74f2f7661a5ce8ecae738314ec0b4d4a182b0";
13
14 src = fetchFromGitHub {
15 inherit rev;
16
17 owner = "kubernetes-sigs";
18 repo = "prow";
19 hash = "sha256-EKWd0G6ONOWNYZCyp4UlY4lalfhB27sV5HwkKmyRscs=";
20 };
21
22 vendorHash = "sha256-Pv9LznRh7Nzm74gMKT2Q/VLIMIIc93en0qX6YA6TwK4=";
23
24 # doCheck = false;
25
26 subPackages = [
27 "cmd/admission"
28 "cmd/branchprotector"
29 "cmd/checkconfig"
30 "cmd/clonerefs"
31 "cmd/cm2kc"
32 "cmd/config-bootstrapper"
33 "cmd/crier"
34 "cmd/deck"
35 "cmd/entrypoint"
36 "cmd/exporter"
37 "cmd/external-plugins"
38 "cmd/gangway"
39 "cmd/gcsupload"
40 "cmd/generic-autobumper"
41 "cmd/gerrit"
42 "cmd/ghproxy"
43 "cmd/hmac"
44 "cmd/hook"
45 "cmd/horologium"
46 "cmd/initupload"
47 "cmd/invitations-accepter"
48 "cmd/jenkins-operator"
49 "cmd/mkpj"
50 "cmd/mkpod"
51 "cmd/moonraker"
52 "cmd/peribolos"
53 "cmd/phony"
54 "cmd/pipeline"
55 "cmd/prow-controller-manager"
56 "cmd/sidecar"
57 "cmd/sinker"
58 "cmd/status-reconciler"
59 "cmd/sub"
60 "cmd/tackle"
61 "cmd/tide"
62 "cmd/tot"
63 "cmd/webhook-server"
64 ];
65
66 nativeCheckInputs = [ gitMinimal ];
67
68 # Workaround for: panic: httptest: failed to listen on a port: listen tcp6 [::1]:0: bind: operation not permitted
69 # ref: https://github.com/NixOS/nix/pull/1646
70 __darwinAllowLocalNetworking = true;
71
72 passthru = {
73 updateScript = nix-update-script {
74 extraArgs = [ "--version=branch" ];
75 };
76 };
77
78 meta = {
79 description = "Kubernetes based CI/CD system developed to serve the Kubernetes community";
80 longDescription = ''
81 Prow is a Kubernetes based CI/CD system. Jobs can be triggered by various
82 types of events and report their status to many different services. In
83 addition to job execution, Prow provides GitHub automation in the form of
84 policy enforcement, chat-ops via /foo style commands, and automatic PR
85 merging.
86 '';
87 homepage = "https://github.com/kubernetes-sigs/prow";
88 license = lib.licenses.asl20;
89 maintainers = with lib.maintainers; [ kalbasit ];
90 platforms = lib.platforms.linux ++ lib.platforms.darwin;
91 };
92}