about summary refs log tree commit diff
diff options
context:
space:
mode:
authorSandro <sandro.jaeckel@gmail.com>2020-12-21 19:17:19 +0100
committerGitHub <noreply@github.com>2020-12-21 19:17:19 +0100
commitb333263534e23f6e5a394193c5cb2c5f793f6525 (patch)
treefb4306c5d45806b153ab60965aedc147002c1534
parentb7045dacc6d1b6a87acac3a6b805f5c30b01819a (diff)
parent6c839492e845df684323d91b9f5de42ab16f564c (diff)
Merge pull request #103754 from 06kellyjac/waypoint
waypoint: init at 0.1.5
-rw-r--r--pkgs/applications/networking/cluster/waypoint/default.nix46
-rw-r--r--pkgs/top-level/all-packages.nix2
2 files changed, 48 insertions, 0 deletions
diff --git a/pkgs/applications/networking/cluster/waypoint/default.nix b/pkgs/applications/networking/cluster/waypoint/default.nix
new file mode 100644
index 0000000000000..9623d5af2f4b9
--- /dev/null
+++ b/pkgs/applications/networking/cluster/waypoint/default.nix
@@ -0,0 +1,46 @@
+{ lib, buildGoModule, fetchFromGitHub, go-bindata }:
+
+buildGoModule rec {
+  pname = "waypoint";
+  version = "0.1.5";
+
+  src = fetchFromGitHub {
+    owner = "hashicorp";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "115cak87kpfjckqgn8ws09z1w8x8l9bch9xrm29k4r0zi71xparn";
+  };
+
+  deleteVendor = true;
+  vendorSha256 = "1xdari6841jp6lpjwydv19v3wafj17hmnwsa2b55iw6dysm4yxdr";
+
+  subPackages = ["."];
+
+  nativeBuildInputs = [ go-bindata ];
+
+  buildPhase = ''
+    CGO_ENABLED=0 go build -ldflags '-s -w -extldflags "-static"' -o ./internal/assets/ceb/ceb ./cmd/waypoint-entrypoint
+    cd internal/assets
+    go-bindata -pkg assets -o prod.go -tags assetsembedded ./ceb
+    cd ../../
+    CGO_ENABLED=0 go build -ldflags '-s -w -X github.com/hashicorp/waypoint/version.GitDescribe=v${version}' -tags assetsembedded -o ./waypoint ./cmd/waypoint
+    CGO_ENABLED=0 go build -ldflags '-s -w' -tags assetsembedded -o ./waypoint-entrypoint ./cmd/waypoint-entrypoint
+  '';
+
+  installPhase = ''
+    mkdir -p $out/bin
+    mv waypoint{,-entrypoint} $out/bin/
+  '';
+
+  meta = with lib; {
+    description = "A tool to build, deploy, and release any application on any platform";
+    longDescription = ''
+      Waypoint allows developers to define their application build, deploy, and release lifecycle as code, reducing the
+      time to deliver deployments through a consistent and repeatable workflow.
+    '';
+    homepage = "https://waypointproject.io";
+    platforms = platforms.linux;
+    license = licenses.mpl20;
+    maintainers = with maintainers; [ winpat jk ];
+  };
+}
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index befe94c924eb9..90c133809a2ac 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -1347,6 +1347,8 @@ in
 
   wiimms-iso-tools = callPackage ../tools/filesystems/wiimms-iso-tools { };
 
+  waypoint = callPackage ../applications/networking/cluster/waypoint { };
+
   xcodeenv = callPackage ../development/mobile/xcodeenv { };
 
   ssh-agents = callPackage ../tools/networking/ssh-agents { };