pulumiPackages: add support for Python SDKs
This commit is contained in:
parent
54e896edba
commit
3582d5c4aa
1 changed files with 53 additions and 0 deletions
|
@ -1,5 +1,6 @@
|
|||
{ buildGoModule
|
||||
, fetchFromGitHub
|
||||
, python3Packages
|
||||
}:
|
||||
let
|
||||
mkBasePackage =
|
||||
|
@ -24,6 +25,52 @@ let
|
|||
"-w"
|
||||
] ++ extraLdflags;
|
||||
} // args);
|
||||
|
||||
mkPythonPackage =
|
||||
{ meta
|
||||
, pname
|
||||
, src
|
||||
, version
|
||||
, ...
|
||||
}: python3Packages.callPackage
|
||||
({ buildPythonPackage, pythonOlder, parver, pulumi, semver }:
|
||||
buildPythonPackage rec {
|
||||
inherit pname meta src version;
|
||||
format = "setuptools";
|
||||
|
||||
disabled = pythonOlder "3.7";
|
||||
|
||||
sourceRoot = "${src.name}/sdk/python";
|
||||
|
||||
propagatedBuildInputs = [
|
||||
parver
|
||||
pulumi
|
||||
semver
|
||||
];
|
||||
|
||||
postPatch = ''
|
||||
sed -i \
|
||||
-e 's/^VERSION = .*/VERSION = "${version}"/g' \
|
||||
-e 's/^PLUGIN_VERSION = .*/PLUGIN_VERSION = "${version}"/g' \
|
||||
setup.py
|
||||
'';
|
||||
|
||||
# Auto-generated; upstream does not have any tests.
|
||||
# Verify that the version substitution works
|
||||
checkPhase = ''
|
||||
runHook preCheck
|
||||
|
||||
pip show "${pname}" | grep "Version: ${version}" > /dev/null \
|
||||
|| (echo "ERROR: Version substitution seems to be broken"; exit 1)
|
||||
|
||||
runHook postCheck
|
||||
'';
|
||||
|
||||
pythonImportsCheck = [
|
||||
(builtins.replaceStrings [ "-" ] [ "_" ] pname)
|
||||
];
|
||||
})
|
||||
{ };
|
||||
in
|
||||
{ owner
|
||||
, repo
|
||||
|
@ -72,4 +119,10 @@ mkBasePackage ({
|
|||
|
||||
VERSION=v${version} go generate cmd/${cmdRes}/main.go
|
||||
'';
|
||||
|
||||
passthru.sdks.python = mkPythonPackage {
|
||||
inherit meta src version;
|
||||
|
||||
pname = repo;
|
||||
};
|
||||
} // args)
|
||||
|
|
Loading…
Reference in a new issue