Added cinder services.
This commit is contained in:
Pete Vander Giessen 2018-10-11 12:40:54 -04:00 committed by GitHub
parent 8590e3d3fc
commit 37d4c78210
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
6 changed files with 159 additions and 3 deletions

View File

@ -0,0 +1,3 @@
# Snap distribution defaults - do not change, override in $SNAP_COMMON/etc/cinder.conf.d
[database]
max_retries = -1

View File

@ -1,6 +1,7 @@
setup: setup:
dirs: dirs:
- "{snap_common}/etc/keystone/keystone.conf.d" - "{snap_common}/etc/keystone/keystone.conf.d"
- "{snap_common}/etc/cinder/cinder.conf.d"
- "{snap_common}/etc/nova/nova.conf.d" - "{snap_common}/etc/nova/nova.conf.d"
- "{snap_common}/etc/neutron/neutron.conf.d" - "{snap_common}/etc/neutron/neutron.conf.d"
- "{snap_common}/etc/neutron/plugins/ml2" - "{snap_common}/etc/neutron/plugins/ml2"
@ -23,7 +24,9 @@ setup:
nginx.conf.j2: "{snap_common}/etc/nginx/snap/nginx.conf" nginx.conf.j2: "{snap_common}/etc/nginx/snap/nginx.conf"
nova-snap.conf.j2: "{snap_common}/etc/nova/nova.conf.d/nova-snap.conf" nova-snap.conf.j2: "{snap_common}/etc/nova/nova.conf.d/nova-snap.conf"
nova-nginx.conf.j2: "{snap_common}/etc/nginx/snap/sites-enabled/nova.conf" nova-nginx.conf.j2: "{snap_common}/etc/nginx/snap/sites-enabled/nova.conf"
glance-snap.conf.j2: "{snap_common}/etc/glance/glance.conf.d/glance-snap.conf" glance-snap.conf.j2: "{snap_common}/etc/glance/glance.conf.d/glance-snap.conf"
cinder-nginx.conf.j2: "{snap_common}/etc/nginx/snap/sites-enabled/cinder.conf"
cinder-snap.conf.j2: "{snap_common}/etc/cinder/cinder.conf.d/cinder-snap.conf"
entry_points: entry_points:
keystone-manage: keystone-manage:
binary: "{snap}/bin/keystone-manage" binary: "{snap}/bin/keystone-manage"
@ -158,3 +161,52 @@ entry_points:
config-dirs: config-dirs:
- "{snap_common}/etc/glance/glance.conf.d" - "{snap_common}/etc/glance/glance.conf.d"
log-file: "{snap_common}/log/glance-api.log" log-file: "{snap_common}/log/glance-api.log"
cinder-backup:
binary: "{snap}/bin/cinder-backup"
config-files:
- "{snap}/etc/cinder/cinder.conf"
config-files-override:
- "{snap_common}/etc/cinder/cinder.conf"
config-dirs:
- "{snap_common}/etc/cinder/cinder.conf.d"
log-file: "{snap_common}/log/cinder-backup.log"
cinder-manage:
binary: "{snap}/bin/cinder-manage"
config-files:
- "{snap}/etc/cinder/cinder.conf"
config-files-override:
- "{snap_common}/etc/cinder/cinder.conf"
config-dirs:
- "{snap_common}/etc/cinder/cinder.conf.d"
cinder-scheduler:
binary: "{snap}/bin/cinder-scheduler"
config-files:
- "{snap}/etc/cinder/cinder.conf"
config-files-override:
- "{snap_common}/etc/cinder/cinder.conf"
config-dirs:
- "{snap_common}/etc/cinder/cinder.conf.d"
log-file: "{snap_common}/log/cinder-scheduler.log"
cinder-volume:
binary: "{snap}/bin/cinder-volume"
config-files:
- "{snap}/etc/cinder/cinder.conf"
config-files-override:
- "{snap_common}/etc/cinder/cinder.conf"
config-dirs:
- "{snap_common}/etc/cinder/cinder.conf.d"
log-file: "{snap_common}/log/cinder-volume.log"
cinder-uwsgi:
type: uwsgi
uwsgi-dir: "{snap_common}/etc/uwsgi/snap"
uwsgi-dir-override: "{snap_common}/etc/uwsgi"
uwsgi-log: "{snap_common}/log/uwsgi.log"
config-files:
- "{snap}/etc/cinder/cinder.conf"
config-files-override:
- "{snap_common}/etc/cinder/cinder.conf"
config-dirs:
- "{snap_common}/etc/cinder/cinder.conf.d"
log-file: "{snap_common}/log/cinder-api.log"
templates:
cinder-api.ini.j2: "{snap_common}/etc/uwsgi/snap/cinder-api.ini"

View File

@ -0,0 +1,11 @@
[uwsgi]
wsgi-file = {{ snap }}/bin/cinder-wsgi
uwsgi-socket = {{ snap_common }}/run/cinder-api.sock
buffer-size = 65535
master = true
enable-threads = true
processes = 4
thunder-lock = true
lazy-apps = true
home = {{ snap }}/usr
pyargv = {{ pyargv }}

View File

@ -0,0 +1,10 @@
server {
listen 8776;
access_log {{ snap_common }}/log/nginx-access.log;
error_log {{ snap_common }}/log/nginx-error.log;
location / {
include {{ snap }}/usr/conf/uwsgi_params;
uwsgi_param SCRIPT_NAME '';
uwsgi_pass unix://{{ snap_common }}/run/cinder-api.sock;
}
}

View File

@ -0,0 +1,10 @@
[DEFAULT]
# Set state path to writable directory
state_path = {{ snap_common }}/lib
# Set volume configuration file storage directory
volumes_dir = {{ snap_common }}/lib/volumes
[oslo_concurrency]
# Oslo Concurrency lock path
lock_path = {{ snap_common }}/lock

View File

@ -191,6 +191,32 @@ apps:
plugs: plugs:
- network-bind - network-bind
# Cinder
cinder-uwsgi:
command: snap-openstack cinder-uwsgi
daemon: simple
plugs:
- network-bind
cinder-backup:
command: snap-openstack cinder-backup
daemon: simple
plugs:
- network
cinder-manage:
command: snap-openstack cinder-manage
plugs:
- network
cinder-scheduler:
command: snap-openstack cinder-scheduler
daemon: simple
plugs:
- network
cinder-volume:
command: snap-openstack cinder-volume
daemon: simple
plugs:
- network
parts: parts:
# Keystone # Keystone
keystone: keystone:
@ -380,7 +406,7 @@ parts:
# Openstack Shared Parts # Openstack Shared Parts
templates: templates:
after: [keystone, nova, neutron, openvswitch] after: [keystone, nova, neutron, openvswitch, cinder]
plugin: dump plugin: dump
source: snap source: snap
@ -609,5 +635,49 @@ parts:
override-build: | override-build: |
./configure --prefix=$SNAPCRAFT_PART_INSTALL ./configure --prefix=$SNAPCRAFT_PART_INSTALL
make make
make test
make install make install
# Cinder
lvm2:
source: http://www.sourceware.org/pub/lvm2/releases/LVM2.2.02.172.tgz
plugin: autotools
configflags:
- --with-confdir=/var/snap/common/etc/
- --with-default-system-dir=/var/snap/common/etc/
build-attributes: [no-patchelf]
cinder:
after: [keystone]
plugin: python
python-version: python2
source: http://tarballs.openstack.org/cinder/cinder-stable-rocky.tar.gz
python-packages:
- python-memcached
- pymysql
- uwsgi
- git+https://github.com/openstack/snap.openstack#egg=snap.openstack
constraints: https://raw.githubusercontent.com/openstack/requirements/stable/rocky/upper-constraints.txt
build-packages:
- gcc
- libffi-dev
- libssl-dev
- libxml2-dev
- libxslt1-dev
cinder-config:
after: [cinder]
plugin: dump
source: http://tarballs.openstack.org/cinder/cinder-stable-rocky.tar.gz
organize:
etc/*.conf: etc/cinder/
etc/*.ini: etc/cinder/
etc/*.json: etc/cinder/
etc/*.templates: etc/cinder/
filesets:
etc:
- etc/cinder/*.conf
- etc/cinder/*.ini
- etc/cinder/*.json
- etc/cinder/*.templates
stage: [$etc]
prime: [$etc]