nixpkgs/pkgs/tools/package-management/nixops/generic.nix

56 lines
1.5 KiB
Nix
Raw Normal View History

{ lib, python2Packages, libxslt, docbook_xsl_ns, openssh, cacert, nixopsAzurePackages ? []
2015-12-18 17:51:01 +00:00
# version args
, src, version
, meta ? {}
2015-12-18 17:51:01 +00:00
}:
2016-10-19 15:46:31 +00:00
python2Packages.buildPythonApplication {
2015-12-18 17:51:01 +00:00
name = "nixops-${version}";
2017-05-18 09:40:27 +00:00
inherit version src;
2015-12-18 17:51:01 +00:00
buildInputs = [ libxslt ];
2016-10-19 15:46:31 +00:00
pythonPath = with python2Packages;
[ prettytable
boto
2016-11-23 16:35:20 +00:00
boto3
2016-10-19 15:46:31 +00:00
hetzner
libcloud
adal
# Go back to sqlite once Python 2.7.13 is released
pysqlite
2016-11-23 16:35:20 +00:00
datadog
digital-ocean
libvirt
typing
] ++ nixopsAzurePackages;
2015-12-18 17:51:01 +00:00
checkPhase =
# Ensure, that there are no (python) import errors
''
SSL_CERT_FILE=${cacert}/etc/ssl/certs/ca-bundle.crt \
HOME=$(pwd) \
$out/bin/nixops --version
'';
2015-12-18 17:51:01 +00:00
2017-05-18 09:40:27 +00:00
postInstall = ''
make -C doc/manual install nixops.1 docbookxsl=${docbook_xsl_ns}/xml/xsl/docbook \
2017-05-18 09:40:27 +00:00
docdir=$out/share/doc/nixops mandir=$out/share/man
2015-12-18 17:51:01 +00:00
2017-05-18 09:40:27 +00:00
mkdir -p $out/share/nix/nixops
cp -av "nix/"* $out/share/nix/nixops
2015-12-18 17:51:01 +00:00
2017-05-18 09:40:27 +00:00
# Add openssh to nixops' PATH. On some platforms, e.g. CentOS and RHEL
# the version of openssh is causing errors when have big networks (40+)
wrapProgram $out/bin/nixops --prefix PATH : "${openssh}/bin"
'';
2015-12-18 17:51:01 +00:00
meta = {
homepage = "https://github.com/NixOS/nixops";
2015-12-18 17:51:01 +00:00
description = "NixOS cloud provisioning and deployment tool";
maintainers = with lib.maintainers; [ aminechikhaoui eelco rob domenkozar ];
2015-12-18 17:51:01 +00:00
platforms = lib.platforms.unix;
2018-08-09 10:51:48 +00:00
license = lib.licenses.lgpl3;
} // meta;
2015-12-18 17:51:01 +00:00
}