![Corey Bryant](/assets/img/avatar_default.png)
The current snaps now have well-known aliases defined at install time for commands [1]. This means we can drop the manual alias definition from snapcraft.yaml and the instructions for setting it up. When building/installing locally users can still create the aliases with 'snap alias'. [1] https://forum.snapcraft.io/t/auto-aliases-for-openstack-base-snaps/1146/6 Change-Id: I2eef1705d5e1c01e4f8b76ebdbbaf64374df7272
245 lines
6.6 KiB
YAML
245 lines
6.6 KiB
YAML
name: nova-hypervisor
|
|
version: ocata
|
|
summary: OpenStack Compute Service - KVM Hypervisor (nova)
|
|
description: |
|
|
OpenStack Nova provides a cloud computing fabric controller,
|
|
supporting a wide variety of compute technologies, including
|
|
.
|
|
libvirt (KVM, Xen, LXC and more),
|
|
LXD
|
|
Hyper-V
|
|
VMware
|
|
XenServer
|
|
OpenStack Ironic.
|
|
.
|
|
This snap provides the hypervisor component of an OpenStack
|
|
deployment, configured to use Libvirt/KVM + Open vSwitch
|
|
installed using debian packages on the hosting server.
|
|
confinement: strict
|
|
grade: devel
|
|
|
|
apps:
|
|
nova-compute:
|
|
command: snap-openstack nova-compute
|
|
daemon: simple
|
|
plugs:
|
|
- network
|
|
- network-bind
|
|
- network-control
|
|
- firewall-control
|
|
- hardware-observe
|
|
- libvirt
|
|
- openvswitch
|
|
nova-api-metadata:
|
|
command: snap-openstack nova-api-metadata
|
|
daemon: simple
|
|
plugs:
|
|
- network
|
|
- network-bind
|
|
- firewall-control
|
|
neutron-openvswitch-agent:
|
|
command: snap-openstack neutron-openvswitch-agent
|
|
daemon: simple
|
|
plugs:
|
|
- network
|
|
- network-bind
|
|
- network-control
|
|
- network-observe
|
|
- firewall-control
|
|
- process-control
|
|
- system-observe
|
|
- openvswitch
|
|
neutron-l3-agent:
|
|
command: snap-openstack neutron-l3-agent
|
|
daemon: simple
|
|
plugs:
|
|
- network
|
|
- network-bind
|
|
- network-control
|
|
- network-observe
|
|
- firewall-control
|
|
- process-control
|
|
- system-observe
|
|
- openvswitch
|
|
neutron-dhcp-agent:
|
|
command: snap-openstack neutron-dhcp-agent
|
|
daemon: simple
|
|
plugs:
|
|
- network
|
|
- network-bind
|
|
- network-control
|
|
- network-observe
|
|
- process-control
|
|
- system-observe
|
|
- openvswitch
|
|
neutron-metadata-agent:
|
|
command: snap-openstack neutron-metadata-agent
|
|
daemon: simple
|
|
plugs:
|
|
- network
|
|
- network-bind
|
|
- network-control
|
|
neutron-ovs-cleanup:
|
|
command: snap-openstack neutron-ovs-cleanup
|
|
plugs:
|
|
- network
|
|
- network-control
|
|
- openvswitch
|
|
neutron-netns-cleanup:
|
|
command: snap-openstack neutron-netns-cleanup
|
|
plugs:
|
|
- network
|
|
- network-control
|
|
parts:
|
|
bridge-utils:
|
|
source: https://www.kernel.org/pub/linux/utils/net/bridge-utils/bridge-utils-1.6.tar.gz
|
|
plugin: autotools
|
|
iproute2:
|
|
source: https://www.kernel.org/pub/linux/utils/net/iproute2/iproute2-4.9.0.tar.gz
|
|
plugin: autotools
|
|
build-packages:
|
|
- bison
|
|
- flex
|
|
- libdb5.3-dev
|
|
iptables:
|
|
source: http://iptables.netfilter.org/projects/iptables/files/iptables-1.6.0.tar.bz2
|
|
plugin: autotools
|
|
build-packages:
|
|
- libnftnl-dev
|
|
configflags:
|
|
- --disable-nftables
|
|
install: |
|
|
cp --remove-destination $SNAPCRAFT_PART_INSTALL/sbin/xtables-multi $SNAPCRAFT_PART_INSTALL/bin/iptables-xml
|
|
ipset:
|
|
source: http://ipset.netfilter.org/ipset-6.30.tar.bz2
|
|
plugin: autotools
|
|
build-packages:
|
|
- libltdl-dev
|
|
- libmnl-dev
|
|
configflags:
|
|
- "--with-kmod=no"
|
|
libxml2:
|
|
source: http://xmlsoft.org/sources/libxml2-2.9.4.tar.gz
|
|
plugin: autotools
|
|
dnsmasq:
|
|
source: http://www.thekelleys.org.uk/dnsmasq/dnsmasq-2.76.tar.xz
|
|
plugin: make
|
|
build-packages:
|
|
- libgmp-dev
|
|
- libidn11-dev
|
|
- libnetfilter-conntrack-dev
|
|
- nettle-dev
|
|
organize:
|
|
usr/local/sbin/dnsmasq: bin/dnsmasq
|
|
filesets:
|
|
bin:
|
|
- bin/dnsmasq
|
|
stage: [$bin]
|
|
prime: [$bin]
|
|
prepare: |
|
|
export SNAP_ROOT="../../../"
|
|
export SNAP_SOURCE="$SNAP_ROOT/parts/dnsmasq/build"
|
|
patch -d $SNAP_SOURCE -p1 < $SNAP_ROOT/patches/drop-setuid-from-dnsmasq.patch
|
|
dnsmasq-lease:
|
|
source: http://www.thekelleys.org.uk/dnsmasq/dnsmasq-2.76.tar.xz
|
|
plugin: make
|
|
make-parameters:
|
|
- "-C"
|
|
- "contrib/lease-tools"
|
|
build-packages:
|
|
- libgmp-dev
|
|
- libidn11-dev
|
|
- libnetfilter-conntrack-dev
|
|
- nettle-dev
|
|
artifacts:
|
|
- contrib/lease-tools/dhcp_release
|
|
- contrib/lease-tools/dhcp_release6
|
|
- contrib/lease-tools/dhcp_lease_time
|
|
organize:
|
|
contrib/lease-tools/dhcp_release: bin/dhcp_release
|
|
contrib/lease-tools/dhcp_release6: bin/dhcp_release6
|
|
contrib/lease-tools/dhcp_lease_time: bin/dhcp_lease_time
|
|
filesets:
|
|
bin:
|
|
- bin/dhcp_release
|
|
- bin/dhcp_release6
|
|
- bin/dhcp_lease_time
|
|
stage: [$bin]
|
|
prime: [$bin]
|
|
openvswitch:
|
|
source: http://openvswitch.org/releases/openvswitch-2.6.1.tar.gz
|
|
plugin: autotools
|
|
build-packages:
|
|
- libnuma-dev
|
|
- libssl-dev
|
|
- python-all
|
|
- python-setuptools
|
|
- python-six
|
|
filesets:
|
|
bin:
|
|
- bin/ovs-*ctl
|
|
- bin/ovsdb-tool
|
|
- bin/ovsdb-client
|
|
stage: [$bin]
|
|
snap: [$bin]
|
|
nova:
|
|
after:
|
|
- openvswitch
|
|
plugin: python
|
|
python-version: python2
|
|
source: http://tarballs.openstack.org/nova/nova-stable-ocata.tar.gz
|
|
python-packages:
|
|
- libvirt-python
|
|
- pymysql
|
|
- python-memcached
|
|
- http://tarballs.openstack.org/neutron/neutron-stable-ocata.tar.gz
|
|
- http://tarballs.openstack.org/nova-lxd/nova-lxd-stable-ocata.tar.gz
|
|
- git+https://github.com/openstack/snap.openstack#egg=snap.openstack
|
|
constraints: https://raw.githubusercontent.com/openstack/requirements/stable/ocata/upper-constraints.txt
|
|
build-packages:
|
|
- gcc
|
|
- libffi-dev
|
|
- libssl-dev
|
|
- libvirt-dev
|
|
- libxml2-dev
|
|
- libxslt1-dev
|
|
stage-packages:
|
|
- conntrack
|
|
- coreutils
|
|
- qemu-utils
|
|
install: |
|
|
touch $SNAPCRAFT_PART_INSTALL/lib/python2.7/site-packages/paste/__init__.py
|
|
touch $SNAPCRAFT_PART_INSTALL/lib/python2.7/site-packages/repoze/__init__.py
|
|
export SNAP_ROOT="../../../"
|
|
export SNAP_SITE_PACKAGES="$SNAPCRAFT_PART_INSTALL/lib/python2.7/site-packages"
|
|
patch -d $SNAP_SITE_PACKAGES -p1 < $SNAP_ROOT/patches/oslo-config-dirs.patch
|
|
patch -d $SNAP_SITE_PACKAGES -p1 < $SNAP_ROOT/patches/drop-setuid-from-neutron.patch
|
|
patch -d $SNAP_SITE_PACKAGES -p1 < $SNAP_ROOT/patches/drop-use-of-fchownat.patch
|
|
templates:
|
|
after: [nova]
|
|
plugin: dump
|
|
source: snap
|
|
config-nova:
|
|
after: [nova]
|
|
plugin: dump
|
|
source: http://tarballs.openstack.org/nova/nova-stable-ocata.tar.gz
|
|
filesets:
|
|
etc:
|
|
- etc/nova/*
|
|
stage: [$etc]
|
|
snap: [$etc]
|
|
config-neutron:
|
|
after: [nova]
|
|
plugin: dump
|
|
source: http://tarballs.openstack.org/neutron/neutron-stable-ocata.tar.gz
|
|
organize:
|
|
etc/*.conf: etc/neutron/
|
|
etc/*.ini: etc/neutron/
|
|
etc/*.json: etc/neutron/
|
|
etc/rootwrap.d/*: etc/neutron/rootwrap.d/
|
|
filesets:
|
|
etc:
|
|
- etc/neutron/*
|
|
stage: [$etc]
|
|
snap: [$etc]
|