mirror of
https://github.com/NixOS/nixpkgs.git
synced 2024-11-17 07:13:23 +01:00
nova: 2011.2 -> 12.0.0
This commit is contained in:
parent
3225c34dcc
commit
24cbc374cf
7 changed files with 1206 additions and 249 deletions
|
@ -1,21 +0,0 @@
|
|||
{ fetchurl, pythonPackages }:
|
||||
|
||||
pythonPackages.buildPythonPackage rec {
|
||||
name = "novaclient-2012.1";
|
||||
namePrefix = "";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://pypi.python.org/packages/source/p/python-novaclient/python-${name}.tar.gz";
|
||||
md5 = "8f53a308e08b2af4645281917be77ffc";
|
||||
};
|
||||
|
||||
pythonPath = [ pythonPackages.prettytable pythonPackages.argparse pythonPackages.httplib2 ];
|
||||
|
||||
buildInputs = [ pythonPackages.mock pythonPackages.nose ];
|
||||
|
||||
meta = {
|
||||
homepage = https://github.com/rackspace/python-novaclient;
|
||||
description = "Client library and command line tool for the OpenStack Nova API";
|
||||
broken = true;
|
||||
};
|
||||
}
|
|
@ -1,95 +1,63 @@
|
|||
{ stdenv, fetchurl, pythonPackages, intltool, libvirt, libxml2Python, curl, novaclient }:
|
||||
{ stdenv, fetchurl, pythonPackages, intltool, libvirt, curl, openssl, openssh }:
|
||||
|
||||
with stdenv.lib;
|
||||
|
||||
let version = "2011.2"; in
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pythonPackages.buildPythonPackage rec {
|
||||
name = "nova-${version}";
|
||||
version = "12.0.0";
|
||||
namePrefix = "";
|
||||
|
||||
PBR_VERSION = "${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://launchpad.net/nova/cactus/${version}/+download/nova-${version}.tar.gz";
|
||||
sha256 = "1s2w0rm332y9x34ngjz8sys9sbldg857rx9d6r3nb1ik979fx8p7";
|
||||
url = "https://github.com/openstack/nova/archive/${version}.tar.gz";
|
||||
sha256 = "175n1znvmy8f5vqvabc2fa4qy8y17685z4gzpq8984mdsdnpv21w";
|
||||
};
|
||||
|
||||
patches =
|
||||
[ ./convert.patch ];
|
||||
# https://github.com/openstack/nova/blob/stable/liberty/requirements.txt
|
||||
propagatedBuildInputs = with pythonPackages; [
|
||||
pbr sqlalchemy_1_0 boto decorator eventlet jinja2 lxml routes cryptography
|
||||
webob greenlet PasteDeploy paste prettytable sqlalchemy_migrate netaddr
|
||||
netifaces paramiko Babel iso8601 jsonschema keystoneclient requests2 six
|
||||
stevedore websockify rfc3986 os-brick psutil_1 alembic psycopg2 pymysql
|
||||
keystonemiddleware
|
||||
|
||||
pythonPath = with pythonPackages;
|
||||
[ setuptools eventlet greenlet gflags netaddr sqlalchemy carrot routes
|
||||
paste_deploy m2crypto ipy twisted sqlalchemy_migrate
|
||||
distutils_extra simplejson readline glance cheetah lockfile httplib2
|
||||
# !!! should libvirt be a build-time dependency? Note that
|
||||
# libxml2Python is a dependency of libvirt.py.
|
||||
libvirt libxml2Python
|
||||
novaclient
|
||||
];
|
||||
# oslo components
|
||||
oslo-rootwrap oslo-reports oslo-utils oslo-i18n oslo-config oslo-context
|
||||
oslo-log oslo-serialization oslo-middleware oslo-db oslo-service oslo-messaging
|
||||
oslo-concurrency oslo-versionedobjects
|
||||
|
||||
buildInputs =
|
||||
[ pythonPackages.python
|
||||
pythonPackages.wrapPython
|
||||
pythonPackages.mox
|
||||
intltool
|
||||
] ++ pythonPath;
|
||||
# clients
|
||||
cinderclient neutronclient glanceclient
|
||||
];
|
||||
|
||||
PYTHON_EGG_CACHE = "`pwd`/.egg-cache";
|
||||
buildInputs = with pythonPackages; [
|
||||
coverage fixtures mock mox3 subunit requests-mock pillow oslosphinx
|
||||
oslotest testrepository testresources testtools tempest-lib bandit
|
||||
oslo-vmware pep8 barbicanclient ironicclient openssl openssh
|
||||
];
|
||||
|
||||
preConfigure =
|
||||
''
|
||||
# Set the built-in state location to something sensible.
|
||||
sed -i nova/flags.py \
|
||||
-e "/DEFINE.*'state_path'/ s|../|/var/lib/nova|"
|
||||
postInstall = ''
|
||||
cp -prvd etc $out/etc
|
||||
|
||||
substituteInPlace nova/virt/images.py --replace /usr/bin/curl ${curl}/bin/curl
|
||||
# check all binaries don't crash
|
||||
for i in $out/bin/*; do
|
||||
case "$i" in
|
||||
*nova-dhcpbridge*)
|
||||
:
|
||||
;;
|
||||
*nova-rootwrap*)
|
||||
:
|
||||
;;
|
||||
*)
|
||||
$i --help
|
||||
;;
|
||||
esac
|
||||
done
|
||||
'';
|
||||
|
||||
substituteInPlace nova/api/ec2/cloud.py \
|
||||
--replace 'sh genrootca.sh' $out/libexec/nova/genrootca.sh
|
||||
'';
|
||||
|
||||
buildPhase = "python setup.py build";
|
||||
|
||||
installPhase =
|
||||
''
|
||||
p=$(toPythonPath $out)
|
||||
export PYTHONPATH=$p:$PYTHONPATH
|
||||
mkdir -p $p
|
||||
python setup.py install --prefix=$out
|
||||
|
||||
# Nova doesn't like to be called ".nova-foo-wrapped" because it
|
||||
# computes some stuff from its own argv[0]. So put the wrapped
|
||||
# programs in $out/libexec under their original names.
|
||||
mkdir -p $out/libexec/nova
|
||||
|
||||
wrapProgram() {
|
||||
local prog="$1"
|
||||
local hidden=$out/libexec/nova/$(basename "$prog")
|
||||
mv $prog $hidden
|
||||
makeWrapper $hidden $prog "$@"
|
||||
}
|
||||
|
||||
wrapPythonPrograms
|
||||
|
||||
cp -prvd etc $out/etc
|
||||
|
||||
# Nova makes some weird assumptions about where to find its own
|
||||
# programs relative to the Python directory.
|
||||
ln -sfn $out/bin $out/lib/${pythonPackages.python.libPrefix}/site-packages/bin
|
||||
|
||||
# Install the certificate generation script.
|
||||
cp nova/CA/genrootca.sh $out/libexec/nova/
|
||||
cp nova/CA/openssl.cnf.tmpl $out/libexec/nova/
|
||||
|
||||
# Allow nova-manage etc. to find the proper configuration file.
|
||||
ln -s /etc/nova/nova.conf $out/libexec/nova/nova.conf
|
||||
'';
|
||||
|
||||
doCheck = false; # !!! fix
|
||||
|
||||
checkPhase = "python setup.py test";
|
||||
|
||||
meta = {
|
||||
meta = with stdenv.lib; {
|
||||
homepage = http://nova.openstack.org/;
|
||||
description = "OpenStack Compute (a.k.a. Nova), a cloud computing fabric controller";
|
||||
broken = true;
|
||||
license = stdenv.lib.licenses.asl20;
|
||||
platforms = stdenv.lib.platforms.linux;
|
||||
};
|
||||
}
|
||||
|
|
|
@ -19,7 +19,7 @@ buildPythonPackage rec {
|
|||
|
||||
propagatedBuildInputs =
|
||||
[ eventlet greenlet gflags netaddr sqlalchemy carrot routes
|
||||
paste_deploy m2crypto ipy twisted sqlalchemy_migrate
|
||||
PasteDeploy m2crypto ipy twisted sqlalchemy_migrate
|
||||
distutils_extra simplejson readline glance cheetah lockfile httplib2
|
||||
urlgrabber virtinst pyGtkGlade pythonDBus gnome_python pygobject3
|
||||
libvirt libxml2Python ipaddr vte libosinfo
|
||||
|
|
|
@ -14,15 +14,15 @@ stdenv.mkDerivation rec {
|
|||
|
||||
pythonPath = with pythonPackages;
|
||||
[ setuptools eventlet greenlet gflags netaddr sqlalchemy carrot routes
|
||||
paste_deploy m2crypto ipy twisted sqlalchemy_migrate
|
||||
PasteDeploy m2crypto ipy twisted sqlalchemy_migrate
|
||||
distutils_extra simplejson readline glance cheetah lockfile httplib2
|
||||
# !!! should libvirt be a build-time dependency? Note that
|
||||
# libxml2Python is a dependency of libvirt.py.
|
||||
# libxml2Python is a dependency of libvirt.py.
|
||||
libvirt libxml2Python urlgrabber
|
||||
];
|
||||
|
||||
buildInputs =
|
||||
[ pythonPackages.python
|
||||
[ pythonPackages.python
|
||||
pythonPackages.wrapPython
|
||||
pythonPackages.mox
|
||||
intltool
|
||||
|
|
|
@ -4,11 +4,11 @@ stdenv.mkDerivation rec {
|
|||
shortName = "setuptools-${version}";
|
||||
name = "${python.executable}-${shortName}";
|
||||
|
||||
version = "18.2";
|
||||
version = "18.4";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://pypi.python.org/packages/source/s/setuptools/${shortName}.tar.gz";
|
||||
sha256 = "07avbdc26yl2a46s76fc7m4vg611g8sh39l26x9dr9byya6sb509";
|
||||
sha256 = "07qigmdgm6pard6gwlgj5n7cm0f43nk271ymacsdhjhbwsc51snd";
|
||||
};
|
||||
|
||||
buildInputs = [ python wrapPython distutils-cfg ];
|
||||
|
|
|
@ -12447,10 +12447,9 @@ let
|
|||
sphinx = pythonPackages.sphinx;
|
||||
};
|
||||
|
||||
# Open Stack
|
||||
nova = callPackage ../applications/virtualization/nova { };
|
||||
|
||||
novaclient = callPackage ../applications/virtualization/nova/client.nix { };
|
||||
|
||||
nova-filters = callPackage ../applications/audio/nova-filters { };
|
||||
|
||||
nspluginwrapper = callPackage ../applications/networking/browsers/mozilla-plugins/nspluginwrapper {};
|
||||
|
|
File diff suppressed because it is too large
Load diff
Loading…
Reference in a new issue