terraform: Wrap PATH of propagatedBuildInputs (#37861)
Plugins (namely terraform-provider-libvirt) may have a run time dependency on external binaries.
This commit is contained in:
parent
dfff83a14e
commit
deecb4c1aa
@ -44,6 +44,9 @@ let
|
|||||||
let
|
let
|
||||||
actualPlugins = plugins terraform.plugins;
|
actualPlugins = plugins terraform.plugins;
|
||||||
|
|
||||||
|
# Wrap PATH of plugins propagatedBuildInputs, plugins may have runtime dependencies on external binaries
|
||||||
|
wrapperInputs = lib.unique (lib.flatten (lib.catAttrs "propagatedBuildInputs" (builtins.filter (x: x != null) actualPlugins)));
|
||||||
|
|
||||||
passthru = {
|
passthru = {
|
||||||
withPlugins = newplugins: withPlugins (x: newplugins x ++ actualPlugins);
|
withPlugins = newplugins: withPlugins (x: newplugins x ++ actualPlugins);
|
||||||
|
|
||||||
@ -64,7 +67,8 @@ let
|
|||||||
buildCommand = ''
|
buildCommand = ''
|
||||||
mkdir -p $out/bin/
|
mkdir -p $out/bin/
|
||||||
makeWrapper "${terraform.bin}/bin/terraform" "$out/bin/terraform" \
|
makeWrapper "${terraform.bin}/bin/terraform" "$out/bin/terraform" \
|
||||||
--set NIX_TERRAFORM_PLUGIN_DIR "${buildEnv { name = "tf-plugin-env"; paths = actualPlugins; }}/bin"
|
--set NIX_TERRAFORM_PLUGIN_DIR "${buildEnv { name = "tf-plugin-env"; paths = actualPlugins; }}/bin" \
|
||||||
|
--prefix PATH : "${lib.makeBinPath wrapperInputs}"
|
||||||
'';
|
'';
|
||||||
|
|
||||||
inherit passthru;
|
inherit passthru;
|
||||||
|
Loading…
Reference in New Issue
Block a user