summary refs log tree commit diff
diff options
context:
space:
mode:
authormakefu <github@syntax-fehler.de>2017-12-13 18:16:29 +0100
committermakefu <github@syntax-fehler.de>2017-12-13 18:16:29 +0100
commit5369400bb0b5689e1b62ff3f64b3bde686dd04b4 (patch)
tree40cb6a81e10499131838c6f32548c0bfb939abe3
parentfc96261aa921b1cc8e0e653a376ba135237434ef (diff)
downloadnixpkgs-5369400bb0b5689e1b62ff3f64b3bde686dd04b4.tar
nixpkgs-5369400bb0b5689e1b62ff3f64b3bde686dd04b4.tar.gz
nixpkgs-5369400bb0b5689e1b62ff3f64b3bde686dd04b4.tar.bz2
nixpkgs-5369400bb0b5689e1b62ff3f64b3bde686dd04b4.tar.lz
nixpkgs-5369400bb0b5689e1b62ff3f64b3bde686dd04b4.tar.xz
nixpkgs-5369400bb0b5689e1b62ff3f64b3bde686dd04b4.tar.zst
nixpkgs-5369400bb0b5689e1b62ff3f64b3bde686dd04b4.zip
nova: rip
part of openstack cleanup
-rw-r--r--nixos/modules/virtualisation/nova.nix174
-rw-r--r--pkgs/applications/virtualization/openstack/nova.nix71
-rw-r--r--pkgs/top-level/all-packages.nix1
3 files changed, 0 insertions, 246 deletions
diff --git a/nixos/modules/virtualisation/nova.nix b/nixos/modules/virtualisation/nova.nix
deleted file mode 100644
index c2837d0e2e2..00000000000
--- a/nixos/modules/virtualisation/nova.nix
+++ /dev/null
@@ -1,174 +0,0 @@
-# Module for Nova, a.k.a. OpenStack Compute.
-
-{ config, lib, pkgs, ... }:
-
-with lib;
-
-let
-
-  cfg = config.virtualisation.nova;
-
-  nova = pkgs.nova;
-
-  novaConf = pkgs.writeText "nova.conf"
-    ''
-      --nodaemon
-      --verbose
-      ${cfg.extraConfig}
-    '';
-
-in
-
-{
-
-  ###### interface
-
-  options = {
-
-    virtualisation.nova.enableSingleNode =
-      mkOption {
-        default = false;
-        description =
-          ''
-            This option enables Nova, also known as OpenStack Compute,
-            a cloud computing system, as a single-machine
-            installation.  That is, all of Nova's components are
-            enabled on this machine, using SQLite as Nova's database.
-            This is useful for evaluating and experimenting with Nova.
-            However, for a real cloud computing environment, you'll
-            want to enable some of Nova's services on other machines,
-            and use a database such as MySQL.
-          '';
-      };
-
-    virtualisation.nova.extraConfig =
-      mkOption {
-        default = "";
-        description =
-          ''
-            Additional text appended to <filename>nova.conf</filename>,
-            the main Nova configuration file.
-          '';
-      };
-
-  };
-
-
-  ###### implementation
-
-  config = mkIf cfg.enableSingleNode {
-
-    environment.systemPackages = [ nova pkgs.euca2ools pkgs.novaclient ];
-
-    environment.etc =
-      [ { source = novaConf;
-          target = "nova/nova.conf";
-        }
-      ];
-
-    # Nova requires libvirtd and RabbitMQ.
-    virtualisation.libvirtd.enable = true;
-    services.rabbitmq.enable = true;
-
-    # `qemu-nbd' required the `nbd' kernel module.
-    boot.kernelModules = [ "nbd" ];
-
-    system.activationScripts.nova =
-      ''
-        mkdir -m 755 -p /var/lib/nova
-        mkdir -m 755 -p /var/lib/nova/networks
-        mkdir -m 700 -p /var/lib/nova/instances
-        mkdir -m 700 -p /var/lib/nova/keys
-
-        # Allow the CA certificate generation script (called by
-        # nova-api) to work.
-        mkdir -m 700 -p /var/lib/nova/CA /var/lib/nova/CA/private
-
-        # Initialise the SQLite database.
-        ${nova}/bin/nova-manage db sync
-      '';
-
-    # `nova-api' receives and executes external client requests from
-    # tools such as euca2ools.  It listens on port 8773 (XML) and 8774
-    # (JSON).
-    jobs.nova_api =
-      { name = "nova-api";
-
-        description = "Nova API service";
-
-        startOn = "ip-up";
-
-        # `openssl' is required to generate the CA.  `openssh' is
-        # required to generate key pairs.
-        path = [ pkgs.openssl config.programs.ssh.package pkgs.bash ];
-
-        respawn = false;
-
-        exec = "${nova}/bin/nova-api --flagfile=${novaConf} --api_paste_config=${nova}/etc/nova/api-paste.ini";
-      };
-
-    # `nova-objectstore' is a simple image server.  Useful if you're
-    # not running the OpenStack Imaging Service (Swift).  It serves
-    # images placed in /var/lib/nova/images/.
-    jobs.nova_objectstore =
-      { name = "nova-objectstore";
-
-        description = "Nova Simple Object Store Service";
-
-        startOn = "ip-up";
-
-        preStart =
-          ''
-            mkdir -m 700 -p /var/lib/nova/images
-          '';
-
-        exec = "${nova}/bin/nova-objectstore --flagfile=${novaConf}";
-      };
-
-    # `nova-scheduler' schedules VM execution requests.
-    jobs.nova_scheduler =
-      { name = "nova-scheduler";
-
-        description = "Nova Scheduler Service";
-
-        startOn = "ip-up";
-
-        exec = "${nova}/bin/nova-scheduler --flagfile=${novaConf}";
-      };
-
-    # `nova-compute' starts and manages virtual machines.
-    jobs.nova_compute =
-      { name = "nova-compute";
-
-        description = "Nova Compute Service";
-
-        startOn = "ip-up";
-
-        path =
-          [ pkgs.sudo pkgs.vlan pkgs.nettools pkgs.iptables pkgs.qemu_kvm
-            pkgs.e2fsprogs pkgs.utillinux pkgs.multipath-tools pkgs.iproute
-            pkgs.bridge-utils
-          ];
-
-        exec = "${nova}/bin/nova-compute --flagfile=${novaConf}";
-      };
-
-    # `nova-network' manages networks and allocates IP addresses.
-    jobs.nova_network =
-      { name = "nova-network";
-
-        description = "Nova Network Service";
-
-        startOn = "ip-up";
-
-        path =
-          [ pkgs.sudo pkgs.vlan pkgs.dnsmasq pkgs.nettools pkgs.iptables
-            pkgs.iproute pkgs.bridge-utils pkgs.radvd
-          ];
-
-        exec = "${nova}/bin/nova-network --flagfile=${novaConf}";
-      };
-
-  };
-
-}
diff --git a/pkgs/applications/virtualization/openstack/nova.nix b/pkgs/applications/virtualization/openstack/nova.nix
deleted file mode 100644
index ef3eb2fb084..00000000000
--- a/pkgs/applications/virtualization/openstack/nova.nix
+++ /dev/null
@@ -1,71 +0,0 @@
-{ stdenv, fetchurl, python2Packages, openssl, openssh }:
-
-python2Packages.buildPythonApplication rec {
-  name = "nova-${version}";
-  version = "12.0.0";
-  namePrefix = "";
-
-  PBR_VERSION = "${version}";
-
-  src = fetchurl {
-    url = "https://github.com/openstack/nova/archive/${version}.tar.gz";
-    sha256 = "175n1znvmy8f5vqvabc2fa4qy8y17685z4gzpq8984mdsdnpv21w";
-  };
-
-  # otherwise migrate.cfg is not installed
-  patchPhase = ''
-    echo "graft nova" >> MANIFEST.in
-
-    # remove transient error test, see http://hydra.nixos.org/build/40203534
-    rm nova/tests/unit/compute/test_{shelve,compute_utils}.py
-  '';
-
-  # https://github.com/openstack/nova/blob/stable/liberty/requirements.txt
-  propagatedBuildInputs = with python2Packages; [
-    pbr sqlalchemy boto decorator eventlet jinja2 lxml routes cryptography
-    webob greenlet PasteDeploy paste prettytable sqlalchemy_migrate netaddr
-    netifaces paramiko Babel iso8601 jsonschema keystoneclient requests six
-    stevedore websockify rfc3986 os-brick psutil_1 alembic psycopg2 pymysql
-    keystonemiddleware MySQL_python
-
-    # 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
-
-    # clients
-    cinderclient neutronclient glanceclient
-  ];
-
-  buildInputs = with python2Packages; [
-    coverage fixtures mock mox3 subunit requests-mock pillow oslosphinx
-    oslotest testrepository testresources testtools tempest-lib bandit
-    oslo-vmware pep8 barbicanclient ironicclient openssl openssh
-  ];
-
-  postInstall = ''
-    cp -prvd etc $out/etc
-
-    # check all binaries don't crash
-    for i in $out/bin/*; do
-      case "$i" in
-      *nova-dhcpbridge*)
-         :
-         ;;
-      *nova-rootwrap*)
-         :
-         ;;
-      *)
-         $i --help
-         ;;
-      esac
-    done
-  '';
-
-  meta = with stdenv.lib; {
-    homepage = http://nova.openstack.org/;
-    description = "OpenStack Compute (a.k.a. Nova), a cloud computing fabric controller";
-    license = stdenv.lib.licenses.asl20;
-    platforms = stdenv.lib.platforms.linux;
-  };
-}
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 57c15125d2a..447701e0efc 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -16113,7 +16113,6 @@ with pkgs;
   notmuch-addrlookup = callPackage ../applications/networking/mailreaders/notmuch-addrlookup { };
 
   # Open Stack
-  nova = callPackage ../applications/virtualization/openstack/nova.nix { };
   keystone = callPackage ../applications/virtualization/openstack/keystone.nix { };
   neutron = callPackage ../applications/virtualization/openstack/neutron.nix { };
   glance = callPackage ../applications/virtualization/openstack/glance.nix { };