snap-nova-hypervisor/snapcraft.yaml
2016-11-29 17:21:15 +00:00

185 lines
4.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: devmode
grade: devel
apps:
nova-compute:
command: snap-openstack nova-compute
daemon: simple
plugs:
- network
- network-control
- firewall-control
- system-trace
- 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
- firewall-control
- process-control
- system-trace
- system-observe
# - openvswitch
neutron-l3-agent:
command: snap-openstack neutron-l3-agent
daemon: simple
plugs:
- network
- network-control
- firewall-control
- process-control
- system-trace
- system-observe
# - openvswitch
neutron-dhcp-agent:
command: snap-openstack neutron-dhcp-agent
daemon: simple
plugs:
- network
- network-control
- process-control
- system-trace
- system-observe
# - openvswitch
neutron-metadata-agent:
command: snap-openstack neutron-metadata-agent
daemon: simple
plugs:
- network
- network-bind
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:
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-snaps/snap.openstack#egg=snap.openstack
constraints: https://raw.githubusercontent.com/openstack/requirements/master/upper-constraints.txt
build-packages:
- libffi-dev
- libssl-dev
- libxml2-dev
- libxslt1-dev
- libvirt-dev
- pkg-config
- gcc
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]