terraform: use generic builder and add 0.9.0 (#23979)

This commit is contained in:
Peter Hoeg 2017-03-17 17:05:16 +08:00 committed by zimbatm
parent cb73e06989
commit c216a71215
3 changed files with 60 additions and 62 deletions

View File

@ -1,34 +0,0 @@
{ stdenv, lib, buildGoPackage, fetchFromGitHub }:
buildGoPackage rec {
name = "terraform-${version}";
version = "0.8.5";
goPackagePath = "github.com/hashicorp/terraform";
src = fetchFromGitHub {
owner = "hashicorp";
repo = "terraform";
rev = "v${version}";
sha256 = "1cxwv3652fpsbm2zk1akw356cd7w7vhny1623ighgbz9ha8gvg09";
};
postInstall = ''
# remove all plugins, they are part of the main binary now
for i in $bin/bin/*; do
if [[ $(basename $i) != terraform ]]; then
rm "$i"
fi
done
'';
meta = with stdenv.lib; {
description = "Tool for building, changing, and versioning infrastructure";
homepage = "https://www.terraform.io/";
license = licenses.mpl20;
maintainers = with maintainers; [
jgeerds
zimbatm
];
};
}

View File

@ -1,34 +1,59 @@
{ stdenv, lib, buildGoPackage, fetchFromGitHub }: { stdenv, lib, buildGoPackage, fetchFromGitHub }:
buildGoPackage rec { let
name = "terraform-${version}"; generic = { version, sha256 }:
version = "0.8.8"; buildGoPackage rec {
name = "terraform-${version}";
goPackagePath = "github.com/hashicorp/terraform"; goPackagePath = "github.com/hashicorp/terraform";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "hashicorp"; owner = "hashicorp";
repo = "terraform"; repo = "terraform";
rev = "v${version}"; rev = "v${version}";
inherit sha256;
};
postInstall = ''
# remove all plugins, they are part of the main binary now
for i in $bin/bin/*; do
if [[ $(basename $i) != terraform ]]; then
rm "$i"
fi
done
'';
preCheck = ''
export HOME=$TMP
'';
doCheck = true;
meta = with stdenv.lib; {
description = "Tool for building, changing, and versioning infrastructure";
homepage = https://www.terraform.io/;
license = licenses.mpl20;
maintainers = with maintainers; [ jgeerds zimbatm peterhoeg ];
};
};
in rec {
terraform_0_8_5 = generic {
version = "0.8.5";
sha256 = "1cxwv3652fpsbm2zk1akw356cd7w7vhny1623ighgbz9ha8gvg09";
};
terraform_0_8_8 = generic {
version = "0.8.8";
sha256 = "0ibgpcpvz0bmn3cw60nzsabsrxrbmmym1hv7fx6zmjxiwd68w5gb"; sha256 = "0ibgpcpvz0bmn3cw60nzsabsrxrbmmym1hv7fx6zmjxiwd68w5gb";
}; };
postInstall = '' terraform_0_9_0 = generic {
# remove all plugins, they are part of the main binary now version = "0.9.0";
for i in $bin/bin/*; do sha256 = "1v96qgc6pd1bkwvkz855625xdcy7xb5lk60lg70144idqmwfjb9g";
if [[ $(basename $i) != terraform ]]; then
rm "$i"
fi
done
'';
meta = with stdenv.lib; {
description = "Tool for building, changing, and versioning infrastructure";
homepage = "https://www.terraform.io/";
license = licenses.mpl20;
maintainers = with maintainers; [
jgeerds
zimbatm
];
}; };
terraform_0_8 = terraform_0_8_8;
terraform_0_9 = terraform_0_9_0;
terraform = terraform_0_9;
} }

View File

@ -17997,11 +17997,18 @@ with pkgs;
sqsh = callPackage ../development/tools/sqsh { }; sqsh = callPackage ../development/tools/sqsh { };
terraform = callPackage ../applications/networking/cluster/terraform {}; inherit (callPackage ../applications/networking/cluster/terraform {})
terraform_0_8_5
terraform_0_8_8
terraform_0_9_0;
terraform_0_8_5 = callPackage ../applications/networking/cluster/terraform/0.8.5.nix {}; terraform_0_8 = terraform_0_8_8;
terraform_0_9 = terraform_0_9_0;
terraform = terraform_0_8;
terragrunt = callPackage ../applications/networking/cluster/terragrunt {}; terragrunt = callPackage ../applications/networking/cluster/terragrunt {
terraform = terraform_0_8;
};
terragrunt_0_9_8 = callPackage ../applications/networking/cluster/terragrunt/0.9.8.nix { terragrunt_0_9_8 = callPackage ../applications/networking/cluster/terragrunt/0.9.8.nix {
terraform = terraform_0_8_5; terraform = terraform_0_8_5;