%{!?upstream_version: %global upstream_version %{version}%{?milestone}} %global with_doc %{!?_without_doc:1}%{?_without_doc:0} %global with_trans %{!?_without_trans:1}%{?_without_trans:0} %global distro RDO Name: openstack-nova # Liberty semver reset # https://review.openstack.org/#/q/I6a35fa0dda798fad93b804d00a46af80f08d475c,n,z Epoch: 1 Version: 15.1.0 Release: 1.4%{?dist} Summary: OpenStack Compute (nova) License: ASL 2.0 URL: http://openstack.org/projects/compute/ Source0: https://tarballs.openstack.org/nova/nova-%{upstream_version}.tar.gz Source1: nova-dist.conf Source6: nova.logrotate Source10: openstack-nova-api.service Source11: openstack-nova-cert.service Source12: openstack-nova-compute.service Source13: openstack-nova-network.service Source15: openstack-nova-scheduler.service Source18: openstack-nova-xvpvncproxy.service Source19: openstack-nova-console.service Source20: openstack-nova-consoleauth.service Source25: openstack-nova-metadata-api.service Source26: openstack-nova-conductor.service Source27: openstack-nova-cells.service Source28: openstack-nova-spicehtml5proxy.service Source29: openstack-nova-novncproxy.service Source31: openstack-nova-serialproxy.service Source32: openstack-nova-os-compute-api.service Source21: nova-polkit.pkla Source23: nova-polkit.rules Source22: nova-ifc-template Source24: nova-sudoers Source30: openstack-nova-novncproxy.sysconfig Source33: nova-placement-api.conf Source34: policy.json Source35: nova_migration-sudoers Source36: nova-ssh-config Source37: nova-migration-wrapper Source38: nova_migration_identity Source39: nova_migration_authorized_keys Source40: nova_migration-rootwrap.conf Source41: nova_migration-rootwrap_cold_migration Patch0001: 0001-Fix-reporting-inventory-for-provisioned-nodes-in-the.patch Patch0002: 0002-allow-compute-nodes-to-be-associated-with-host-agg.patch Patch0003: 0003-Fix-parent-cherry-pick-commit-for-Ocata.patch Patch0004: 0004-Add-nodes-to-group-hosts-to-be-checked-against-aggre.patch Patch0005: 0005-Fix-exception-catching-for-Ocata.patch BuildArch: noarch BuildRequires: intltool BuildRequires: git BuildRequires: python2-devel BuildRequires: python-sphinx BuildRequires: python-oslo-cache BuildRequires: python-oslo-sphinx BuildRequires: python-setuptools BuildRequires: python-netaddr BuildRequires: python-pbr BuildRequires: python-d2to1 BuildRequires: python-six BuildRequires: python-oslo-i18n BuildRequires: python-cryptography >= 1.0 BuildRequires: python-oslo-policy Requires: openstack-nova-compute = %{epoch}:%{version}-%{release} Requires: openstack-nova-cert = %{epoch}:%{version}-%{release} Requires: openstack-nova-scheduler = %{epoch}:%{version}-%{release} Requires: openstack-nova-api = %{epoch}:%{version}-%{release} Requires: openstack-nova-network = %{epoch}:%{version}-%{release} Requires: openstack-nova-conductor = %{epoch}:%{version}-%{release} Requires: openstack-nova-console = %{epoch}:%{version}-%{release} Requires: openstack-nova-cells = %{epoch}:%{version}-%{release} Requires: openstack-nova-novncproxy = %{epoch}:%{version}-%{release} Requires: openstack-nova-placement-api = %{epoch}:%{version}-%{release} Requires: openstack-nova-migration = %{epoch}:%{version}-%{release} %description OpenStack Compute (codename Nova) is open source software designed to provision and manage large networks of virtual machines, creating a redundant and scalable cloud computing platform. It gives you the software, control panels, and APIs required to orchestrate a cloud, including running instances, managing networks, and controlling access through users and projects. OpenStack Compute strives to be both hardware and hypervisor agnostic, currently supporting a variety of standard hardware configurations and seven major hypervisors. %package common Summary: Components common to all OpenStack Nova services Requires: python-nova = %{epoch}:%{version}-%{release} Requires(post): systemd Requires(preun): systemd Requires(postun): systemd Requires(pre): shadow-utils BuildRequires: systemd # Required to build nova.conf.sample BuildRequires: python-castellan >= 0.4.0 BuildRequires: python-glanceclient BuildRequires: python-keystonemiddleware BuildRequires: python-lxml BuildRequires: python-microversion-parse >= 0.1.3 BuildRequires: python-os-brick BuildRequires: python-oslo-db BuildRequires: python-oslo-reports BuildRequires: python-oslo-service BuildRequires: python-oslo-versionedobjects BuildRequires: python-paramiko BuildRequires: python-websockify # Required to compile translation files BuildRequires: python-babel # remove old service subpackage Obsoletes: %{name}-objectstore %description common OpenStack Compute (codename Nova) is open source software designed to provision and manage large networks of virtual machines, creating a redundant and scalable cloud computing platform. It gives you the software, control panels, and APIs required to orchestrate a cloud, including running instances, managing networks, and controlling access through users and projects. OpenStack Compute strives to be both hardware and hypervisor agnostic, currently supporting a variety of standard hardware configurations and seven major hypervisors. This package contains scripts, config and dependencies shared between all the OpenStack nova services. %package compute Summary: OpenStack Nova Virtual Machine control service Requires: openstack-nova-common = %{epoch}:%{version}-%{release} Requires: curl Requires: iscsi-initiator-utils Requires: iptables iptables-ipv6 Requires: ipmitool Requires: python-libguestfs Requires: libvirt-python Requires: libvirt-daemon-kvm Requires: /usr/bin/virsh %if 0%{?rhel}==0 Requires: libvirt-daemon-lxc %endif Requires: openssh-clients Requires: rsync Requires: lvm2 Requires: python-cinderclient >= 1.6.0 Requires: genisoimage # Ensure that the _right_ verion of QEMU binary is shipped based on # distribution. %if 0%{?fedora} Requires(pre): qemu-kvm >= 2.9.0 %endif # NOTE-1: CentOS package is called 'qemu-kvm-ev', but it has a # compatiblity "Provides: qemu-kvm-rhev", so it'll do the right # thing, that's why we're not special-casing CentOS here. # NOTE-2: Explicitly conditionalize on RHEL-7, as we have to # re-evaluate the QEMU version string for each RHOS / RHEL # release. %if 0%{?rhel} == 7 Requires(pre): qemu-kvm-rhev >= 2.9.0 %endif Requires: bridge-utils Requires: sg3_utils Requires: sysfsutils Requires: libosinfo %description compute OpenStack Compute (codename Nova) is open source software designed to provision and manage large networks of virtual machines, creating a redundant and scalable cloud computing platform. It gives you the software, control panels, and APIs required to orchestrate a cloud, including running instances, managing networks, and controlling access through users and projects. OpenStack Compute strives to be both hardware and hypervisor agnostic, currently supporting a variety of standard hardware configurations and seven major hypervisors. This package contains the Nova service for controlling Virtual Machines. %package network Summary: OpenStack Nova Network control service Requires: openstack-nova-common = %{epoch}:%{version}-%{release} Requires: radvd Requires: bridge-utils Requires: dnsmasq Requires: dnsmasq-utils Requires: ebtables Requires: conntrack-tools %description network OpenStack Compute (codename Nova) is open source software designed to provision and manage large networks of virtual machines, creating a redundant and scalable cloud computing platform. It gives you the software, control panels, and APIs required to orchestrate a cloud, including running instances, managing networks, and controlling access through users and projects. OpenStack Compute strives to be both hardware and hypervisor agnostic, currently supporting a variety of standard hardware configurations and seven major hypervisors. This package contains the Nova service for controlling networking. %package scheduler Summary: OpenStack Nova VM distribution service Requires: openstack-nova-common = %{epoch}:%{version}-%{release} %description scheduler OpenStack Compute (codename Nova) is open source software designed to provision and manage large networks of virtual machines, creating a redundant and scalable cloud computing platform. It gives you the software, control panels, and APIs required to orchestrate a cloud, including running instances, managing networks, and controlling access through users and projects. OpenStack Compute strives to be both hardware and hypervisor agnostic, currently supporting a variety of standard hardware configurations and seven major hypervisors. This package contains the service for scheduling where to run Virtual Machines in the cloud. %package cert Summary: OpenStack Nova certificate management service Requires: openstack-nova-common = %{epoch}:%{version}-%{release} %description cert OpenStack Compute (codename Nova) is open source software designed to provision and manage large networks of virtual machines, creating a redundant and scalable cloud computing platform. It gives you the software, control panels, and APIs required to orchestrate a cloud, including running instances, managing networks, and controlling access through users and projects. OpenStack Compute strives to be both hardware and hypervisor agnostic, currently supporting a variety of standard hardware configurations and seven major hypervisors. This package contains the Nova service for managing certificates. %package api Summary: OpenStack Nova API services Requires: openstack-nova-common = %{epoch}:%{version}-%{release} Requires: python-cinderclient >= 1.6.0 %description api OpenStack Compute (codename Nova) is open source software designed to provision and manage large networks of virtual machines, creating a redundant and scalable cloud computing platform. It gives you the software, control panels, and APIs required to orchestrate a cloud, including running instances, managing networks, and controlling access through users and projects. OpenStack Compute strives to be both hardware and hypervisor agnostic, currently supporting a variety of standard hardware configurations and seven major hypervisors. This package contains the Nova services providing programmatic access. %package conductor Summary: OpenStack Nova Conductor services Requires: openstack-nova-common = %{epoch}:%{version}-%{release} %description conductor OpenStack Compute (codename Nova) is open source software designed to provision and manage large networks of virtual machines, creating a redundant and scalable cloud computing platform. It gives you the software, control panels, and APIs required to orchestrate a cloud, including running instances, managing networks, and controlling access through users and projects. OpenStack Compute strives to be both hardware and hypervisor agnostic, currently supporting a variety of standard hardware configurations and seven major hypervisors. This package contains the Nova services providing database access for the compute service %package console Summary: OpenStack Nova console access services Requires: openstack-nova-common = %{epoch}:%{version}-%{release} Requires: python-websockify >= 0.8.0 %description console OpenStack Compute (codename Nova) is open source software designed to provision and manage large networks of virtual machines, creating a redundant and scalable cloud computing platform. It gives you the software, control panels, and APIs required to orchestrate a cloud, including running instances, managing networks, and controlling access through users and projects. OpenStack Compute strives to be both hardware and hypervisor agnostic, currently supporting a variety of standard hardware configurations and seven major hypervisors. This package contains the Nova services providing console access services to Virtual Machines. %package cells Summary: OpenStack Nova Cells services Requires: openstack-nova-common = %{epoch}:%{version}-%{release} %description cells OpenStack Compute (codename Nova) is open source software designed to provision and manage large networks of virtual machines, creating a redundant and scalable cloud computing platform. It gives you the software, control panels, and APIs required to orchestrate a cloud, including running instances, managing networks, and controlling access through users and projects. OpenStack Compute strives to be both hardware and hypervisor agnostic, currently supporting a variety of standard hardware configurations and seven major hypervisors. This package contains the Nova Cells service providing additional scaling and (geographic) distribution for compute services. %package novncproxy Summary: OpenStack Nova noVNC proxy service Requires: openstack-nova-common = %{epoch}:%{version}-%{release} Requires: novnc Requires: python-websockify >= 0.8.0 %description novncproxy OpenStack Compute (codename Nova) is open source software designed to provision and manage large networks of virtual machines, creating a redundant and scalable cloud computing platform. It gives you the software, control panels, and APIs required to orchestrate a cloud, including running instances, managing networks, and controlling access through users and projects. OpenStack Compute strives to be both hardware and hypervisor agnostic, currently supporting a variety of standard hardware configurations and seven major hypervisors. This package contains the Nova noVNC Proxy service that can proxy VNC traffic over browser websockets connections. %package spicehtml5proxy Summary: OpenStack Nova Spice HTML5 console access service Requires: openstack-nova-common = %{epoch}:%{version}-%{release} Requires: python-websockify >= 0.8.0 %description spicehtml5proxy OpenStack Compute (codename Nova) is open source software designed to provision and manage large networks of virtual machines, creating a redundant and scalable cloud computing platform. It gives you the software, control panels, and APIs required to orchestrate a cloud, including running instances, managing networks, and controlling access through users and projects. OpenStack Compute strives to be both hardware and hypervisor agnostic, currently supporting a variety of standard hardware configurations and seven major hypervisors. This package contains the Nova services providing the spice HTML5 console access service to Virtual Machines. %package serialproxy Summary: OpenStack Nova serial console access service Requires: openstack-nova-common = %{epoch}:%{version}-%{release} Requires: python-websockify >= 0.8.0 %description serialproxy OpenStack Compute (codename Nova) is open source software designed to provision and manage large networks of virtual machines, creating a redundant and scalable cloud computing platform. It gives you the software, control panels, and APIs required to orchestrate a cloud, including running instances, managing networks, and controlling access through users and projects. OpenStack Compute strives to be both hardware and hypervisor agnostic, currently supporting a variety of standard hardware configurations and seven major hypervisors. This package contains the Nova services providing the serial console access service to Virtual Machines. %package placement-api Summary: OpenStack Nova Placement APIservice Requires: openstack-nova-common = %{epoch}:%{version}-%{release} Requires: httpd Requires: mod_wsgi %description placement-api OpenStack Compute (codename Nova) is open source software designed to provision and manage large networks of virtual machines, creating a redundant and scalable cloud computing platform. It gives you the software, control panels, and APIs required to orchestrate a cloud, including running instances, managing networks, and controlling access through users and projects. OpenStack Compute strives to be both hardware and hypervisor agnostic, currently supporting a variety of standard hardware configurations and seven major hypervisors. This package contains the Nova placement service, which will initially allow for the management of resource providers. %package migration Summary: OpenStack Nova Migration Requires: openstack-nova-compute = %{epoch}:%{version}-%{release} %description migration OpenStack Compute (codename Nova) is open source software designed to provision and manage large networks of virtual machines, creating a redundant and scalable cloud computing platform. It gives you the software, control panels, and APIs required to orchestrate a cloud, including running instances, managing networks, and controlling access through users and projects. OpenStack Compute strives to be both hardware and hypervisor agnostic, currently supporting a variety of standard hardware configurations and seven major hypervisors. This package contains scripts and config to support VM migration in Nova. %package -n python-nova Summary: Nova Python libraries Requires: openssl # Require openssh for ssh-keygen Requires: openssh Requires: sudo Requires: python-paramiko >= 2.0 Requires: python-decorator >= 3.4.0 Requires: python-enum34 Requires: python-eventlet >= 0.17.4 Requires: python-iso8601 >= 0.1.11 Requires: python-netaddr >= 0.7.13 Requires: python-lxml >= 2.3 Requires: python-anyjson Requires: python-boto Requires: python-ldap Requires: python-stevedore >= 1.17.1 Requires: python-memcached Requires: python-sqlalchemy >= 1.0.10 Requires: python-migrate >= 0.9.6 Requires: python-alembic >= 0.8.0 Requires: python-paste Requires: python-paste-deploy >= 1.5.0 Requires: python-routes >= 1.12.3 Requires: python-webob >= 0.8.0 Requires: python-babel >= 2.3.4 Requires: python-castellan >= 0.4.0 Requires: python-cryptography >= 1.0 Requires: python-glanceclient >= 1:2.5.0 Requires: python-greenlet >= 0.3.2 Requires: python-keystonemiddleware >= 4.12.0 Requires: python-keystoneauth1 >= 2.18.0 Requires: python-jinja2 Requires: python-jsonschema >= 2.0.0 Requires: python-microversion-parse >= 0.1.2 Requires: python-netifaces >= 0.10.4 Requires: python-neutronclient >= 5.1.0 Requires: python-novaclient >= 2.30.1 Requires: python-os-brick >= 1.8.0 Requires: python-oslo-cache >= 1.5.0 Requires: python-oslo-concurrency >= 3.8.0 Requires: python-oslo-config >= 2:3.14.0 Requires: python-oslo-context >= 2.9.0 Requires: python-oslo-db >= 4.15.0 Requires: python-oslo-i18n >= 2.1.0 Requires: python-oslo-log >= 3.11.0 Requires: python-oslo-messaging >= 5.14.0 Requires: python-oslo-middleware >= 3.0.0 Requires: python-oslo-policy >= 1.17.0 Requires: python-oslo-privsep >= 1.9.0 Requires: python-oslo-reports >= 0.6.0 Requires: python-oslo-rootwrap >= 5.0.0 Requires: python-oslo-serialization >= 1.10.0 Requires: python-oslo-service >= 1.10.0 Requires: python-oslo-utils >= 3.18.0 Requires: python-oslo-versionedobjects >= 1.17.0 Requires: python-os-vif >= 1.4.0 Requires: python-oslo-vmware >= 1.16.0 Requires: python-pbr Requires: python-posix_ipc Requires: python-prettytable >= 0.7.1 Requires: python-psutil Requires: python-requests >= 2.10.0 Requires: python-rfc3986 >= 0.3.1 Requires: python-six >= 1.9.0 %description -n python-nova OpenStack Compute (codename Nova) is open source software designed to provision and manage large networks of virtual machines, creating a redundant and scalable cloud computing platform. This package contains the nova Python library. %package -n python-nova-tests Summary: Nova tests Requires: openstack-nova = %{epoch}:%{version}-%{release} %description -n python-nova-tests OpenStack Compute (codename Nova) is open source software designed to provision and manage large networks of virtual machines, creating a redundant and scalable cloud computing platform. This package contains the nova Python library. %if 0%{?with_doc} %package doc Summary: Documentation for OpenStack Compute BuildRequires: graphviz # Required to build module documents BuildRequires: python-boto BuildRequires: python-eventlet BuildRequires: python-barbicanclient BuildRequires: python-cinderclient BuildRequires: python-keystoneclient BuildRequires: python-neutronclient BuildRequires: python-os-win BuildRequires: python-oslo-config BuildRequires: python-oslo-log BuildRequires: python-oslo-messaging BuildRequires: python-oslo-utils BuildRequires: python-oslo-vmware BuildRequires: python-redis BuildRequires: python-rfc3986 >= 0.2.2 BuildRequires: python-routes BuildRequires: python-sqlalchemy BuildRequires: python-webob BuildRequires: python-zmq # while not strictly required, quiets the build down when building docs. BuildRequires: python-migrate, python-iso8601 %description doc OpenStack Compute (codename Nova) is open source software designed to provision and manage large networks of virtual machines, creating a redundant and scalable cloud computing platform. This package contains documentation files for nova. %endif %prep %autosetup -n nova-%{upstream_version} -S git find . \( -name .gitignore -o -name .placeholder \) -delete find nova -name \*.py -exec sed -i '/\/usr\/bin\/env python/{d;q}' {} + # Remove the requirements file so that pbr hooks don't add it # to distutils requiers_dist config rm -rf {test-,}requirements.txt tools/{pip,test}-requires %build PYTHONPATH=. oslo-config-generator --config-file=etc/nova/nova-config-generator.conf # Generate a sample policy.yaml file for documentation purposes only PYTHONPATH=. oslopolicy-sample-generator --config-file=etc/nova/nova-policy-generator.conf %{__python2} setup.py build # Generate i18n files %{__python2} setup.py compile_catalog -d build/lib/nova/locale # Avoid http://bugzilla.redhat.com/1059815. Remove when that is closed sed -i 's|group/name|group;name|; s|\[DEFAULT\]/|DEFAULT;|' etc/nova/nova.conf.sample # Programmatically update defaults in sample config # which is installed at /etc/nova/nova.conf # First we ensure all values are commented in appropriate format. # Since icehouse, there was an uncommented keystone_authtoken section # at the end of the file which mimics but also conflicted with our # distro editing that had been done for many releases. sed -i '/^[^#[]/{s/^/#/; s/ //g}; /^#[^ ]/s/ = /=/' etc/nova/nova.conf.sample # TODO: Make this more robust # Note it only edits the first occurrence, so assumes a section ordering in sample # and also doesn't support multi-valued variables like dhcpbridge_flagfile. while read name eq value; do test "$name" && test "$value" || continue sed -i "0,/^# *$name=/{s!^# *$name=.*!#$name=$value!}" etc/nova/nova.conf.sample done < %{SOURCE1} %install %{__python2} setup.py install -O1 --skip-build --root %{buildroot} # docs generation requires everything to be installed first export PYTHONPATH="$( pwd ):$PYTHONPATH" # Remove this once sphinxcontrib.seqdiag becomes available sed -i -e '/sphinxcontrib.seqdiag/d' doc/source/conf.py sed -i -e 's#../../etc/nova/nova-config-generator.conf#etc/nova/nova-config-generator.conf#' doc/source/conf.py %if 0%{?with_doc} %{__python2} setup.py build_sphinx %endif %{__python2} setup.py build_sphinx --builder man mkdir -p %{buildroot}%{_mandir}/man1 install -p -D -m 644 doc/build/man/*.1 %{buildroot}%{_mandir}/man1/ # Setup directories install -d -m 755 %{buildroot}%{_sharedstatedir}/nova install -d -m 755 %{buildroot}%{_sharedstatedir}/nova/buckets install -d -m 755 %{buildroot}%{_sharedstatedir}/nova/instances install -d -m 755 %{buildroot}%{_sharedstatedir}/nova/keys install -d -m 755 %{buildroot}%{_sharedstatedir}/nova/networks install -d -m 755 %{buildroot}%{_sharedstatedir}/nova/tmp install -d -m 750 %{buildroot}%{_localstatedir}/log/nova install -d -m 700 %{buildroot}%{_sharedstatedir}/nova/.ssh # Setup ghost CA cert install -d -m 755 %{buildroot}%{_sharedstatedir}/nova/CA install -p -m 755 nova/CA/*.sh %{buildroot}%{_sharedstatedir}/nova/CA install -p -m 644 nova/CA/openssl.cnf.tmpl %{buildroot}%{_sharedstatedir}/nova/CA install -d -m 755 %{buildroot}%{_sharedstatedir}/nova/CA/{certs,crl,newcerts,projects,reqs} touch %{buildroot}%{_sharedstatedir}/nova/CA/{cacert.pem,crl.pem,index.txt,openssl.cnf,serial} install -d -m 750 %{buildroot}%{_sharedstatedir}/nova/CA/private touch %{buildroot}%{_sharedstatedir}/nova/CA/private/cakey.pem # Install config files install -d -m 755 %{buildroot}%{_sysconfdir}/nova install -p -D -m 640 %{SOURCE1} %{buildroot}%{_datarootdir}/nova/nova-dist.conf install -p -D -m 640 etc/nova/nova.conf.sample %{buildroot}%{_sysconfdir}/nova/nova.conf install -p -D -m 640 etc/nova/rootwrap.conf %{buildroot}%{_sysconfdir}/nova/rootwrap.conf install -p -D -m 640 etc/nova/api-paste.ini %{buildroot}%{_sysconfdir}/nova/api-paste.ini install -p -D -m 640 %{SOURCE33} %{buildroot}%{_sysconfdir}/httpd/conf.d/00-nova-placement-api.conf install -d -m 755 %{buildroot}%{_sysconfdir}/nova/migration install -p -D -m 600 %{SOURCE38} %{buildroot}%{_sysconfdir}/nova/migration/identity install -p -D -m 644 %{SOURCE39} %{buildroot}%{_sysconfdir}/nova/migration/authorized_keys install -p -D -m 640 %{SOURCE40} %{buildroot}%{_sysconfdir}/nova/migration/rootwrap.conf install -d -m 755 %{buildroot}%{_sysconfdir}/nova/migration/rootwrap.d install -p -D -m 640 %{SOURCE41} %{buildroot}%{_sysconfdir}/nova/migration/rootwrap.d/cold_migration.filters # Install empty policy.json file to cover rpm updates with untouched policy files. install -p -D -m 640 %{SOURCE34} %{buildroot}%{_sysconfdir}/nova/policy.json # Install version info file cat > %{buildroot}%{_sysconfdir}/nova/release </dev/null || groupadd -r nova --gid 162 if ! getent passwd nova >/dev/null; then useradd -u 162 -r -g nova -G nova,nobody -d %{_sharedstatedir}/nova -s /sbin/nologin -c "OpenStack Nova Daemons" nova fi exit 0 %pre compute usermod -a -G qemu nova %pre migration getent group nova_migration >/dev/null || groupadd -r nova_migration getent passwd nova_migration >/dev/null || \ useradd -r -g nova_migration -d / -s /bin/bash -c "OpenStack Nova Migration" nova_migration exit 0 %post compute %systemd_post %{name}-compute.service %post network %systemd_post %{name}-network.service %post scheduler %systemd_post %{name}-scheduler.service %post cert %systemd_post %{name}-cert.service %post api %systemd_post %{name}-api.service %{name}-metadata-api.service %{name}-os-compute-api.service %post conductor %systemd_post %{name}-conductor.service %post console %systemd_post %{name}-console.service %{name}-consoleauth.service %{name}-xvpvncproxy.service %post cells %systemd_post %{name}-cells.service %post novncproxy %systemd_post %{name}-novncproxy.service %post spicehtml5proxy %systemd_post %{name}-spicehtml5proxy.service %post serialproxy %systemd_post %{name}-serialproxy.service %preun compute %systemd_preun %{name}-compute.service %preun network %systemd_preun %{name}-network.service %preun scheduler %systemd_preun %{name}-scheduler.service %preun cert %systemd_preun %{name}-cert.service %preun api %systemd_preun %{name}-api.service %{name}-metadata-api.service %{name}-os-compute-api.service %preun conductor %systemd_preun %{name}-conductor.service %preun console %systemd_preun %{name}-console.service %{name}-consoleauth.service %{name}-xvpvncproxy.service %preun cells %systemd_preun %{name}-cells.service %preun novncproxy %systemd_preun %{name}-novncproxy.service %preun spicehtml5proxy %systemd_preun %{name}-spicehtml5proxy.service %preun serialproxy %systemd_preun %{name}-serialproxy.service %postun compute %systemd_postun_with_restart %{name}-compute.service %postun network %systemd_postun_with_restart %{name}-network.service %postun scheduler %systemd_postun_with_restart %{name}-scheduler.service %postun cert %systemd_postun_with_restart %{name}-cert.service %postun api %systemd_postun_with_restart %{name}-api.service %{name}-metadata-api.service %{name}-os-compute-api.service %postun conductor %systemd_postun_with_restart %{name}-conductor.service %postun console %systemd_postun_with_restart %{name}-console.service %{name}-consoleauth.service %{name}-xvpvncproxy.service %postun cells %systemd_postun_with_restart %{name}-cells.service %postun novncproxy %systemd_postun_with_restart %{name}-novncproxy.service %postun spicehtml5proxy %systemd_postun_with_restart %{name}-spicehtml5proxy.service %postun serialproxy %systemd_postun_with_restart %{name}-serialproxy.service %files %files common -f nova.lang %doc LICENSE %doc etc/nova/policy.yaml.sample %dir %{_datarootdir}/nova %attr(-, root, nova) %{_datarootdir}/nova/nova-dist.conf %{_datarootdir}/nova/client.ovpn.template %{_datarootdir}/nova/interfaces.template %{_datarootdir}/nova/rootwrap/network.filters %dir %{_sysconfdir}/nova %{_sysconfdir}/nova/release %config(noreplace) %attr(-, root, nova) %{_sysconfdir}/nova/nova.conf %config(noreplace) %attr(-, root, nova) %{_sysconfdir}/nova/api-paste.ini %config(noreplace) %attr(-, root, nova) %{_sysconfdir}/nova/rootwrap.conf %config(noreplace) %attr(-, root, nova) %{_sysconfdir}/nova/policy.json %config(noreplace) %{_sysconfdir}/logrotate.d/openstack-nova %config(noreplace) %{_sysconfdir}/sudoers.d/nova %config(noreplace) %{_sysconfdir}/polkit-1/localauthority/50-local.d/50-nova.pkla %config(noreplace) %{_sysconfdir}/polkit-1/rules.d/50-nova.rules %dir %attr(0750, nova, root) %{_localstatedir}/log/nova %dir %attr(0755, nova, root) %{_localstatedir}/run/nova %{_bindir}/nova-manage %{_bindir}/nova-policy %{_bindir}/nova-rootwrap %{_bindir}/nova-rootwrap-daemon %{_bindir}/nova-status %{_mandir}/man1/nova*.1.gz %defattr(-, nova, nova, -) %dir %{_sharedstatedir}/nova %dir %{_sharedstatedir}/nova/buckets %dir %{_sharedstatedir}/nova/instances %dir %{_sharedstatedir}/nova/keys %dir %{_sharedstatedir}/nova/networks %dir %{_sharedstatedir}/nova/tmp %files compute %{_bindir}/nova-compute %{_bindir}/nova-idmapshift %{_unitdir}/openstack-nova-compute.service %{_datarootdir}/nova/rootwrap/compute.filters %files network %{_bindir}/nova-network %{_bindir}/nova-dhcpbridge %{_unitdir}/openstack-nova-network.service %files scheduler %{_bindir}/nova-scheduler %{_unitdir}/openstack-nova-scheduler.service %files cert %{_bindir}/nova-cert %{_unitdir}/openstack-nova-cert.service %defattr(-, nova, nova, -) %dir %{_sharedstatedir}/nova/CA/ %dir %{_sharedstatedir}/nova/CA/certs %dir %{_sharedstatedir}/nova/CA/crl %dir %{_sharedstatedir}/nova/CA/newcerts %dir %{_sharedstatedir}/nova/CA/projects %dir %{_sharedstatedir}/nova/CA/reqs %{_sharedstatedir}/nova/CA/*.sh %{_sharedstatedir}/nova/CA/openssl.cnf.tmpl %ghost %config(missingok,noreplace) %verify(not md5 size mtime) %{_sharedstatedir}/nova/CA/cacert.pem %ghost %config(missingok,noreplace) %verify(not md5 size mtime) %{_sharedstatedir}/nova/CA/crl.pem %ghost %config(missingok,noreplace) %verify(not md5 size mtime) %{_sharedstatedir}/nova/CA/index.txt %ghost %config(missingok,noreplace) %verify(not md5 size mtime) %{_sharedstatedir}/nova/CA/openssl.cnf %ghost %config(missingok,noreplace) %verify(not md5 size mtime) %{_sharedstatedir}/nova/CA/serial %dir %attr(0750, -, -) %{_sharedstatedir}/nova/CA/private %ghost %config(missingok,noreplace) %verify(not md5 size mtime) %{_sharedstatedir}/nova/CA/private/cakey.pem %files api %{_bindir}/nova-api* %{_unitdir}/openstack-nova-*api.service %{_datarootdir}/nova/rootwrap/api-metadata.filters %files conductor %{_bindir}/nova-conductor %{_unitdir}/openstack-nova-conductor.service %files console %{_bindir}/nova-console* %{_bindir}/nova-xvpvncproxy %{_unitdir}/openstack-nova-console*.service %{_unitdir}/openstack-nova-xvpvncproxy.service %files cells %{_bindir}/nova-cells %{_unitdir}/openstack-nova-cells.service %files novncproxy %{_bindir}/nova-novncproxy %{_unitdir}/openstack-nova-novncproxy.service %config(noreplace) %{_sysconfdir}/sysconfig/openstack-nova-novncproxy %files spicehtml5proxy %{_bindir}/nova-spicehtml5proxy %{_unitdir}/openstack-nova-spicehtml5proxy.service %files serialproxy %{_bindir}/nova-serialproxy %{_unitdir}/openstack-nova-serialproxy.service %files placement-api %config(noreplace) %{_sysconfdir}/httpd/conf.d/00-nova-placement-api.conf %{_bindir}/nova-placement-api %files migration %{_bindir}/nova-migration-wrapper %config(noreplace) %{_sysconfdir}/sudoers.d/nova_migration %dir %attr(0700, nova, nova) %{_sharedstatedir}/nova/.ssh %attr(0600, nova, nova) %{_sharedstatedir}/nova/.ssh/config %dir %{_sysconfdir}/nova/migration %config(noreplace) %attr(0640, root, nova_migration) %{_sysconfdir}/nova/migration/authorized_keys %config(noreplace) %attr(0600, nova, nova) %{_sysconfdir}/nova/migration/identity %config(noreplace) %attr(0640, root, root) %{_sysconfdir}/nova/migration/rootwrap.conf %dir %{_sysconfdir}/nova/migration/rootwrap.d %config(noreplace) %attr(0640, root, root) %{_sysconfdir}/nova/migration/rootwrap.d/cold_migration.filters %files -n python-nova %doc LICENSE %{python2_sitelib}/nova %{python2_sitelib}/nova-*.egg-info %exclude %{python2_sitelib}/nova/tests %files -n python-nova-tests %license LICENSE %{python2_sitelib}/nova/tests %if 0%{?with_doc} %files doc %doc LICENSE doc/build/html %endif %changelog * Tue Mar 27 2018 Pierre Riteau 1:15.1.0-1.3 - Add Chameleon patches * Wed Jan 03 2018 RDO 1:15.1.0-1 - Update to 15.1.0 * Wed Nov 15 2017 RDO 1:15.0.8-1 - Update to 15.0.8 * Tue Aug 22 2017 rdo-trunk 1:15.0.7-1 - Update to 15.0.7 * Wed Aug 02 2017 Oliver Walsh 1:15.0.6-2 - Add explicit requirement on libvirt-client - Whitelist all possible nova migration scp commands (rhbz#1476332 & rhbz#1472723) * Mon Jun 19 2017 rdo-trunk 1:15.0.6-1 - Update to 15.0.6 * Tue May 30 2017 rdo-trunk 1:15.0.5-1 - Update to 15.0.5 * Mon May 08 2017 rdo-trunk 1:15.0.4-1 - Update to 15.0.4 * Thu Apr 27 2017 Oliver Walsh 1:15.0.3-2 - Add package for Nova migration SSH config * Thu Apr 13 2017 Alfredo Moralejo 1:15.0.3-1 - Update to 15.0.3 * Wed Mar 22 2017 Alfredo Moralejo 1:15.0.2-1 - Update to 15.0.2 * Wed Mar 15 2017 Alfredo Moralejo 1:15.0.1-1 - Update to 15.0.1 * Wed Feb 22 2017 Alfredo Moralejo 1:15.0.0-1 - Update to 15.0.0 * Fri Feb 17 2017 Alfredo Moralejo 1:15.0.0-0.2.0rc2 - Update to 15.0.0.0rc2 * Fri Feb 10 2017 Alfredo Moralejo 1:15.0.0-0.1.0rc1 - Update to 15.0.0.0rc1