Skip to content

Commit

Permalink
fix(tf-providers): #0 update sops for vault support
Browse files Browse the repository at this point in the history
- sops has vault support since https://github.com/mozilla/sops/releases/tag/v3.6.0
- sops-tf has 3.6.0 since https://github.com/carlpett/terraform-provider-sops/releases/tag/v0.5.2
- also obsovete the fork + branch workflow in favor of an in-tree patch
  workflow
  • Loading branch information
blaggacao committed Nov 22, 2021
1 parent 52d529a commit ffda69a
Show file tree
Hide file tree
Showing 4 changed files with 84 additions and 45 deletions.
17 changes: 0 additions & 17 deletions flake.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

4 changes: 2 additions & 2 deletions flake.nix
Expand Up @@ -3,8 +3,6 @@

inputs = {
nixpkgs.url = "github:nixos/nixpkgs/release-21.05";
nixpkgs-terraform.url =
"github:input-output-hk/nixpkgs/iohk-terraform-2021-06";
utils.url = "github:numtide/flake-utils";
bitte-cli.url = "github:input-output-hk/bitte-cli/30d7d141cb349246e8aa1254d848b51f6940a2a1";
bitte-cli.inputs.utils.follows = "utils";
Expand Down Expand Up @@ -53,7 +51,9 @@
hydra.overlay
deploy.overlay
localPkgsOverlay
terraformProvidersOverlay
];
terraformProvidersOverlay = import ./terraform-providers-overlay.nix;
localPkgsOverlay = import ./overlay.nix inputs;

pkgsForSystem = system: import nixpkgs {
Expand Down
27 changes: 1 addition & 26 deletions overlay.nix
@@ -1,6 +1,6 @@
inputs:
let
inherit (inputs) nixpkgs ops-lib nixpkgs-terraform self;
inherit (inputs) nixpkgs ops-lib self;
inherit (nixpkgs) lib;
deprecated = k: v:
lib.warn ''${k} is deprecated from the bitte overlay.
Expand Down Expand Up @@ -84,31 +84,6 @@ final: prev:
--prefix PATH : ${prev.lib.makeBinPath deps}
'';

terraform-provider-names =
[ "acme" "aws" "consul" "local" "nomad" "null" "sops" "tls" "vault" ];
terraform-provider-versions = lib.listToAttrs (map
(name:
let
provider = final.terraform-providers.${name};
provider-source-address =
provider.provider-source-address or "registry.terraform.io/nixpkgs/${name}";
parts = lib.splitString "/" provider-source-address;
source = lib.concatStringsSep "/" (lib.tail parts);
in
lib.nameValuePair name {
inherit source;
version = "= ${provider.version}";
})
final.terraform-provider-names);

nixpkgs-terraform-pkgs = nixpkgs-terraform.legacyPackages.${final.system};

inherit (final.nixpkgs-terraform-pkgs)
terraform_0_13 terraform_0_14 terraform-providers;

terraform-with-plugins = final.terraform_0_13.withPlugins
(plugins: lib.attrVals final.terraform-provider-names plugins);

uploadBaseAMIs = final.writeBashBinChecked "upload-base-amis-to-development-profile-iohk-amis-bucket" ''
export AWS_PROFILE="development"
Expand Down
81 changes: 81 additions & 0 deletions terraform-providers-overlay.nix
@@ -0,0 +1,81 @@
final: prev:
{

inherit (prev)
terraform_0_13
terraform_0_14
terraform-providers;

terraform-provider-names = [
"acme"
"aws"
"consul"
"local"
"nomad"
"null"
"sops"
"tls"
"vault"
];

terraform-provider-versions = lib.listToAttrs (map
(name:
let
provider = final.terraform-providers.${name};
provider-source-address =
provider.provider-source-address or "registry.terraform.io/nixpkgs/${name}";
parts = lib.splitString "/" provider-source-address;
source = lib.concatStringsSep "/" (lib.tail parts);
in
lib.nameValuePair name {
inherit source;
version = "= ${provider.version}";
})
final.terraform-provider-names);

terraform-with-plugins = final.terraform_0_13.withPlugins
(plugins: let
plugins' = plugins // {
acme = plugins.acme.overrideAttrs (old: {
version = "1.5.0-patched2";
vendorSha256 = "0qapar40bdbyf7igf7fg5riqdjb2lgzi4z0l19hj7q1xmx4m8mgx";
src = fetchFromGitHub {
owner = "getstackhead";
repo = "terraform-provider-acme";
rev = "v1.5.0-patched2";
sha256 = "1h6yk0wrn1dxsy9dsh0dwkpkbs8w9qjqqc6gl9nkrqbcd558jxfb";
};
});
consul = plugins.consul.overrideAttrs (old: {
version = "2.11.0";
vendorSha256 = null;
src = fetchFromGitHub {
owner = "hashicorp";
repo = "terraform-provider-consul";
rev = "v2.11.0";
sha256 = "007v7blzsfh0gd3i54w8jl2czbxidwk3rl2wgdncq423xh9pkx1d";
};
});
vault = plugins.vault.overrideAttrs (old: {
version = "2.18.0";
vendorSha256 = null;
src = fetchFromGitHub {
owner = "hashicorp";
repo = "terraform-provider-vault";
rev = "v2.18.0";
sha256 = "0lmgh9w9n0qvg9kf4av1yql2dh10r0jjxy5x3vckcpfc45lgsy40";
};
});
sops = plugins.sops.overrideAttrs (old: {
version = "0.6.3";
vendorSha256 = "sha256-kBQVgxeGTu0tLgbjoCMdswwMvfZI3tEXNHa8buYJXME=";
src = fetchFromGitHub {
owner = "carlpett";
repo = "terraform-provider-sops";
rev = "v0.6.3";
sha256 = "sha256-yfHO/vGk7M5CbA7VkrxLVldAMexhuk0wTEe8+5g8ZrU=";
};
});
};
in lib.attrVals final.terraform-provider-names plugins');
}

0 comments on commit ffda69a

Please sign in to comment.