diff --git a/pkgs/applications/networking/cluster/terraform-providers/ansible/default.nix b/pkgs/applications/networking/cluster/terraform-providers/ansible/default.nix new file mode 100644 index 00000000000..2b2c3caba86 --- /dev/null +++ b/pkgs/applications/networking/cluster/terraform-providers/ansible/default.nix @@ -0,0 +1,26 @@ +{ stdenv, fetchFromGitHub, buildGoPackage }: +buildGoPackage rec { + name = "terraform-provider-ansible-${version}"; + version = "1.0.3"; + + goPackagePath = "github.com/nbering/terraform-provider-ansible"; + goDeps = ./deps.nix; + + src = fetchFromGitHub { + owner = "nbering"; + repo = "terraform-provider-ansible"; + rev = "v${version}"; + sha256 = "0dqi9ym0xvnz3h73cmd1vf6k2qwfhxvj1mcakkpmsd4cpxq4l6pr"; + }; + + # Terraform allow checking the provider versions, but this breaks + # if the versions are not provided via file paths. + postBuild = "mv go/bin/terraform-provider-ansible{,_v${version}}"; + + meta = with stdenv.lib; { + description = "A Terraform provider serving as an interop layer for an Ansible dynamic inventory script."; + homepage = "https://github.com/nbering/terraform-provider-ansible"; + license = licenses.mpl20; + maintainers = with maintainers; [ uskudnik ]; + }; +} diff --git a/pkgs/applications/networking/cluster/terraform-providers/ansible/deps.nix b/pkgs/applications/networking/cluster/terraform-providers/ansible/deps.nix new file mode 100644 index 00000000000..dc49f24afa5 --- /dev/null +++ b/pkgs/applications/networking/cluster/terraform-providers/ansible/deps.nix @@ -0,0 +1,11 @@ +[ + { + goPackagePath = "github.com/hashicorp/terraform"; + fetch = { + type = "git"; + url = "https://github.com/hashicorp/terraform"; + rev = "v0.12.5"; + sha256 = "0p064rhaanwx4szs8hv6mdqad8d2bgfd94h2la11j58xbsxc7hap"; + }; + } +] diff --git a/pkgs/applications/networking/cluster/terraform-providers/data.nix b/pkgs/applications/networking/cluster/terraform-providers/data.nix index b0a1d91ce6e..8094566dd7e 100644 --- a/pkgs/applications/networking/cluster/terraform-providers/data.nix +++ b/pkgs/applications/networking/cluster/terraform-providers/data.nix @@ -714,11 +714,4 @@ version = "0.2.0"; sha256 = "0ic5b9djhnb1bs2bz3zdprgy3r55dng09xgc4d9l9fyp85g2amaz"; }; - ansible = - { - owner = "nbering"; - repo = "terraform-provider-ansible"; - version = "0.0.4"; - sha256 = "125a8vbpnahaxxrxj3mp0kj6ajssxnfb6l0spgnf118wg3bvlmw5"; - }; } diff --git a/pkgs/applications/networking/cluster/terraform-providers/default.nix b/pkgs/applications/networking/cluster/terraform-providers/default.nix index c542de912f3..fc6b7131385 100644 --- a/pkgs/applications/networking/cluster/terraform-providers/default.nix +++ b/pkgs/applications/networking/cluster/terraform-providers/default.nix @@ -28,4 +28,5 @@ in gandi = callPackage ./gandi {}; ibm = callPackage ./ibm {}; libvirt = callPackage ./libvirt {}; + ansible = callPackage ./ansible {}; } // lib.mapAttrs (n: v: toDrv v) list diff --git a/pkgs/applications/networking/cluster/terraform-providers/providers.txt b/pkgs/applications/networking/cluster/terraform-providers/providers.txt index c5d6fda1651..3352fb79f1e 100644 --- a/pkgs/applications/networking/cluster/terraform-providers/providers.txt +++ b/pkgs/applications/networking/cluster/terraform-providers/providers.txt @@ -20,6 +20,3 @@ tweag/terraform-provider-secret # include terraform-provider-segment ajbosco/terraform-provider-segment - -# include terraform-provider-ansible -nbering/terraform-provider-ansible