From ca7d98399976be0dd562d1f8ecd62ed3e5cd5656 Mon Sep 17 00:00:00 2001 From: Rodney Lorrimar Date: Wed, 25 Apr 2018 13:47:26 +0100 Subject: buildkite-agent3: init at 3.0.1 (#39471) New stable release. Version 2.6 is kept for backwards compatibility. https://github.com/buildkite/agent/releases/tag/v3.0.0 https://github.com/buildkite/agent/releases/tag/v3.0.1 --- .../continuous-integration/buildkite-agent/2.x.nix | 12 +++++ .../continuous-integration/buildkite-agent/3.x.nix | 12 +++++ .../buildkite-agent/default.nix | 53 ---------------------- .../buildkite-agent/generic.nix | 49 ++++++++++++++++++++ pkgs/top-level/all-packages.nix | 4 +- 5 files changed, 76 insertions(+), 54 deletions(-) create mode 100644 pkgs/development/tools/continuous-integration/buildkite-agent/2.x.nix create mode 100644 pkgs/development/tools/continuous-integration/buildkite-agent/3.x.nix delete mode 100644 pkgs/development/tools/continuous-integration/buildkite-agent/default.nix create mode 100644 pkgs/development/tools/continuous-integration/buildkite-agent/generic.nix diff --git a/pkgs/development/tools/continuous-integration/buildkite-agent/2.x.nix b/pkgs/development/tools/continuous-integration/buildkite-agent/2.x.nix new file mode 100644 index 000000000000..6a73e2581822 --- /dev/null +++ b/pkgs/development/tools/continuous-integration/buildkite-agent/2.x.nix @@ -0,0 +1,12 @@ +{ callPackage, fetchFromGitHub, ... } @ args: + +callPackage ./generic.nix (args // rec { + src = fetchFromGitHub { + owner = "buildkite"; + repo = "agent"; + rev = "v${version}"; + sha256 = "07065hhhb418w5qlqnyiap45r59paysysbwz1l7dmaw3j4q8m8rg"; + }; + version = "2.6.10"; + hasBootstrapScript = true; +}) diff --git a/pkgs/development/tools/continuous-integration/buildkite-agent/3.x.nix b/pkgs/development/tools/continuous-integration/buildkite-agent/3.x.nix new file mode 100644 index 000000000000..2ceaee5650b2 --- /dev/null +++ b/pkgs/development/tools/continuous-integration/buildkite-agent/3.x.nix @@ -0,0 +1,12 @@ +{ callPackage, fetchFromGitHub, ... } @ args: + +callPackage ./generic.nix (args // rec { + src = fetchFromGitHub { + owner = "buildkite"; + repo = "agent"; + rev = "v${version}"; + sha256 = "09smyrzp1xkczlmh8vqb7bmjb2b5d6yf9birjgaw36c6m44bpfvs"; + }; + version = "3.0.1"; + hasBootstrapScript = false; +}) diff --git a/pkgs/development/tools/continuous-integration/buildkite-agent/default.nix b/pkgs/development/tools/continuous-integration/buildkite-agent/default.nix deleted file mode 100644 index 7a5f2f44823b..000000000000 --- a/pkgs/development/tools/continuous-integration/buildkite-agent/default.nix +++ /dev/null @@ -1,53 +0,0 @@ -{ stdenv, buildGoPackage, fetchFromGitHub, makeWrapper, coreutils, git, openssh, bash, gnused, gnugrep }: -let - version = "2.6.10"; - goPackagePath = "github.com/buildkite/agent"; -in -buildGoPackage { - name = "buildkite-agent-${version}"; - - inherit goPackagePath; - - src = fetchFromGitHub { - owner = "buildkite"; - repo = "agent"; - rev = "v${version}"; - sha256 = "07065hhhb418w5qlqnyiap45r59paysysbwz1l7dmaw3j4q8m8rg"; - }; - - nativeBuildInputs = [ makeWrapper ]; - - # on Linux, the TMPDIR is /build which is the same prefix as this package - # remove once #35068 is merged - noAuditTmpdir = stdenv.isLinux; - - postInstall = '' - # Install bootstrap.sh - mkdir -p $bin/libexec/buildkite-agent - cp $NIX_BUILD_TOP/go/src/${goPackagePath}/templates/bootstrap.sh $bin/libexec/buildkite-agent - sed -e "s|#!/bin/bash|#!${bash}/bin/bash|g" -i $bin/libexec/buildkite-agent/bootstrap.sh - - # Fix binary name - mv $bin/bin/{agent,buildkite-agent} - - # These are runtime dependencies - wrapProgram $bin/bin/buildkite-agent \ - --prefix PATH : '${stdenv.lib.makeBinPath [ openssh git coreutils gnused gnugrep ]}' \ - --set BUILDKITE_BOOTSTRAP_SCRIPT_PATH $bin/libexec/buildkite-agent/bootstrap.sh - ''; - - meta = with stdenv.lib; { - description = "Build runner for buildkite.com"; - longDescription = '' - The buildkite-agent is a small, reliable, and cross-platform build runner - that makes it easy to run automated builds on your own infrastructure. - It’s main responsibilities are polling buildkite.com for work, running - build jobs, reporting back the status code and output log of the job, - and uploading the job's artifacts. - ''; - homepage = https://buildkite.com/docs/agent; - license = licenses.mit; - maintainers = with maintainers; [ pawelpacana zimbatm ]; - platforms = platforms.unix; - }; -} diff --git a/pkgs/development/tools/continuous-integration/buildkite-agent/generic.nix b/pkgs/development/tools/continuous-integration/buildkite-agent/generic.nix new file mode 100644 index 000000000000..8aa02ac307dd --- /dev/null +++ b/pkgs/development/tools/continuous-integration/buildkite-agent/generic.nix @@ -0,0 +1,49 @@ +{ stdenv, buildGoPackage, makeWrapper, coreutils, git, openssh, bash, gnused, gnugrep +, src, version, hasBootstrapScript +, ... }: +let + goPackagePath = "github.com/buildkite/agent"; +in +buildGoPackage { + name = "buildkite-agent-${version}"; + + inherit goPackagePath src; + + nativeBuildInputs = [ makeWrapper ]; + + # on Linux, the TMPDIR is /build which is the same prefix as this package + # remove once #35068 is merged + noAuditTmpdir = stdenv.isLinux; + + postInstall = '' + ${stdenv.lib.optionalString hasBootstrapScript '' + # Install bootstrap.sh + mkdir -p $bin/libexec/buildkite-agent + cp $NIX_BUILD_TOP/go/src/${goPackagePath}/templates/bootstrap.sh $bin/libexec/buildkite-agent + sed -e "s|#!/bin/bash|#!${bash}/bin/bash|g" -i $bin/libexec/buildkite-agent/bootstrap.sh + ''} + + # Fix binary name + mv $bin/bin/{agent,buildkite-agent} + + # These are runtime dependencies + wrapProgram $bin/bin/buildkite-agent \ + ${stdenv.lib.optionalString hasBootstrapScript "--set BUILDKITE_BOOTSTRAP_SCRIPT_PATH $bin/libexec/buildkite-agent/bootstrap.sh"} \ + --prefix PATH : '${stdenv.lib.makeBinPath [ openssh git coreutils gnused gnugrep ]}' + ''; + + meta = with stdenv.lib; { + description = "Build runner for buildkite.com"; + longDescription = '' + The buildkite-agent is a small, reliable, and cross-platform build runner + that makes it easy to run automated builds on your own infrastructure. + It’s main responsibilities are polling buildkite.com for work, running + build jobs, reporting back the status code and output log of the job, + and uploading the job's artifacts. + ''; + homepage = https://buildkite.com/docs/agent; + license = licenses.mit; + maintainers = with maintainers; [ pawelpacana zimbatm rvl ]; + platforms = platforms.unix; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index d5e8b16e017c..6e66f1ead518 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -7592,7 +7592,9 @@ with pkgs; buildbot-ui = buildbot.withPlugins (with self.buildbot-plugins; [ www ]); buildbot-full = buildbot.withPlugins (with self.buildbot-plugins; [ www console-view waterfall-view grid-view wsgi-dashboards ]); - buildkite-agent = callPackage ../development/tools/continuous-integration/buildkite-agent { }; + buildkite-agent = buildkite-agent2; + buildkite-agent2 = callPackage ../development/tools/continuous-integration/buildkite-agent/2.x.nix { }; + buildkite-agent3 = callPackage ../development/tools/continuous-integration/buildkite-agent/3.x.nix { }; byacc = callPackage ../development/tools/parsing/byacc { }; -- cgit 1.4.1