summaryrefslogtreecommitdiffstats
path: root/pkgs
diff options
context:
space:
mode:
authorJosé Luis Lafuente <jl@lafuente.me>2020-12-09 20:45:35 +0100
committerJosé Luis Lafuente <jl@lafuente.me>2020-12-11 18:04:12 +0100
commite10a0ae16e6cd498258902490f06afbec77dcab0 (patch)
tree7091bf20eb3f8e6dfbea713ccc920c92cd6702d9 /pkgs
parent296793637b22bdb4d23b479879eba0a71c132a66 (diff)
fluxcd: init at 0.5.0
This is flux v2. There is also fluxctl (flux v1). v1 is in maintenance mode, and it will be deprecated at some point, but some people may still depend on v1.
Diffstat (limited to 'pkgs')
-rw-r--r--pkgs/applications/networking/cluster/fluxcd/default.nix43
-rw-r--r--pkgs/top-level/all-packages.nix2
2 files changed, 45 insertions, 0 deletions
diff --git a/pkgs/applications/networking/cluster/fluxcd/default.nix b/pkgs/applications/networking/cluster/fluxcd/default.nix
new file mode 100644
index 000000000000..bd903bf7253a
--- /dev/null
+++ b/pkgs/applications/networking/cluster/fluxcd/default.nix
@@ -0,0 +1,43 @@
+{ stdenv, buildGoModule, fetchFromGitHub, installShellFiles }:
+
+buildGoModule rec {
+ pname = "fluxcd";
+ version = "0.5.0";
+
+ src = fetchFromGitHub {
+ owner = "fluxcd";
+ repo = "flux2";
+ rev = "v${version}";
+ sha256 = "125im8br7x8djd6zagvikpc02k55pxbd97rjj3g2frj9plbryh8n";
+ };
+
+ vendorSha256 = "0f818a0z71nl061db93iqb87njx66vbrra1zh92warbx8djdsr7k";
+
+ nativeBuildInputs = [ installShellFiles ];
+
+ doCheck = false;
+
+ subPackages = [ "cmd/flux" ];
+
+ buildFlagsArray = [ "-ldflags=-s -w -X main.VERSION=${version}" ];
+
+ postInstall = ''
+ for shell in bash fish zsh; do
+ $out/bin/flux completion $shell > flux.$shell
+ installShellCompletion flux.$shell
+ done
+ '';
+
+ meta = with stdenv.lib; {
+ description = "Open and extensible continuous delivery solution for Kubernetes";
+ longDescription = ''
+ Flux is a tool for keeping Kubernetes clusters in sync
+ with sources of configuration (like Git repositories), and automating
+ updates to configuration when there is new code to deploy.
+ '';
+ homepage = "https://fluxcd.io";
+ license = licenses.asl20;
+ maintainers = with maintainers; [ jlesquembre ];
+ platforms = platforms.unix;
+ };
+}
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index a3c3330ae376..cf974288258e 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -22199,6 +22199,8 @@ in
fluxctl = callPackage ../applications/networking/cluster/fluxctl { };
+ fluxcd = callPackage ../applications/networking/cluster/fluxcd { };
+
linkerd = callPackage ../applications/networking/cluster/linkerd { };
kubernetes-helm = callPackage ../applications/networking/cluster/helm { };