snap-nova-hypervisor/snapcraft.yaml
Corey Bryant 7d540c988b Switch to classic confinement
Classic confinement drops apparmor/seccomp sandboxing and enables
dropping privileges to a regular user when running services.

We will continue to store all of the snap's files in $SNAP* directories
and $SNAP_COMMON is used as the root directory where setup dirs,
templates, and copyfiles are installed.

Change-Id: I3d8d2160a2fd6fadae65491fcd4e479b7a6d66b6
2017-04-24 14:30:37 +00:00

133 lines
3.4 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: classic
grade: devel
apps:
nova-compute:
command: snap-openstack nova-compute
daemon: simple
nova-api-metadata:
command: snap-openstack nova-api-metadata
daemon: simple
neutron-openvswitch-agent:
command: snap-openstack neutron-openvswitch-agent
daemon: simple
neutron-l3-agent:
command: snap-openstack neutron-l3-agent
daemon: simple
neutron-dhcp-agent:
command: snap-openstack neutron-dhcp-agent
daemon: simple
neutron-metadata-agent:
command: snap-openstack neutron-metadata-agent
daemon: simple
neutron-ovs-cleanup:
command: snap-openstack neutron-ovs-cleanup
neutron-netns-cleanup:
command: snap-openstack neutron-netns-cleanup
parts:
ipset:
source: http://ipset.netfilter.org/ipset-6.30.tar.bz2
plugin: autotools
build-packages:
- libltdl-dev
- libmnl-dev
configflags:
- "--with-kmod=no"
dnsmasq:
source: http://www.thekelleys.org.uk/dnsmasq/dnsmasq-2.76.tar.xz
plugin: make
build-packages:
- libnetfilter-conntrack-dev
- libidn11-dev
- libgmp-dev
- nettle-dev
organize:
usr/local/sbin/dnsmasq: bin/dnsmasq
filesets:
bin:
- bin/dnsmasq
stage: [$bin]
snap: [$bin]
openvswitch:
source: http://openvswitch.org/releases/openvswitch-2.6.1.tar.gz
plugin: autotools
build-packages:
- libssl-dev
- libnuma-dev
- python-all
- python-six
- python-setuptools
stage-packages:
- uuid-runtime
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-master.tar.gz
python-packages:
- pymysql
- libvirt-python
- python-memcached
- http://tarballs.openstack.org/neutron/neutron-master.tar.gz
- http://tarballs.openstack.org/nova-lxd/nova-lxd-master.tar.gz
- git+https://github.com/openstack/snap.openstack#egg=snap.openstack
constraints: https://raw.githubusercontent.com/openstack/requirements/master/upper-constraints.txt
build-packages:
- gcc
- libffi-dev
- libssl-dev
- libvirt-dev
stage-packages:
- qemu-utils
templates:
after: [nova]
plugin: dump
source: snap
config-nova:
after: [nova]
plugin: dump
source: http://tarballs.openstack.org/nova/nova-master.tar.gz
filesets:
etc:
- etc/nova/*
stage: [$etc]
snap: [$etc]
config-neutron:
after: [nova]
plugin: dump
source: http://tarballs.openstack.org/neutron/neutron-master.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]