Baseline standalone snap

This commit is contained in:
James Page 2016-11-21 15:07:30 +00:00
commit afa09086cc
7 changed files with 134 additions and 0 deletions

5
.gitignore vendored Normal file
View File

@ -0,0 +1,5 @@
parts
prime
stage
*.snap
.tox

View File

@ -0,0 +1,6 @@
# Snap distribution defaults - do not change, override in $SNAP_COMMON/etc/keystone.conf.d
[DEFAULT]
secure_proxy_ssl_header = HTTP_X_FORWARDED_PROTO
[database]
max_retries = -1

25
conf/snap-openstack.yaml Normal file
View File

@ -0,0 +1,25 @@
setup:
dirs:
- "{snap_common}/etc/keystone.conf.d"
- "{snap_common}/etc/keystone"
- "{snap_common}/etc/uwsgi"
- "{snap_common}/log"
- "{snap_common}/lock"
- "{snap_common}/run"
- "{snap_common}/fernet-keys"
templates:
"keystone-snap.conf.j2": "{snap_common}/etc/keystone.conf.d/keystone-snap.conf"
"admin.ini.j2": "{snap_common}/etc/uwsgi/admin.ini"
"public.ini.j2": "{snap_common}/etc/uwsgi/public.ini"
entry_points:
keystone-manage:
binary: keystone-manage
config-files:
- "{snap}/etc/keystone/keystone.conf"
- "{snap_common}/etc/keystone/keystone.conf"
config-dirs:
- "{snap_common}/etc/keystone.conf.d"
keystone-api:
type: uwsgi
uwsgi-dir: "{snap_common}/etc/uwsgi"
log-file: "{snap_common}/log/keystone.log"

View File

@ -0,0 +1,12 @@
[uwsgi]
wsgi-file = {{ snap }}/bin/keystone-wsgi-admin
uwsgi-socket = {{ snap_common }}/run/keystone-admin.sock
buffer-size = 65535
http = 0.0.0.0:35357
master = true
enable-threads = true
processes = 4
thunder-lock = true
plugins = python
lazy-apps = true
pyargv = --config-file={{ snap }}/etc/keystone/keystone.conf --config-dir={{ snap_common }}/etc/keystone.conf.d

View File

@ -0,0 +1,11 @@
[DEFAULT]
# Set state path to writable directory
state_path = {{ snap_common }}
[oslo_concurrency]
# Oslo Concurrency lock path
lock_path = {{ snap_common }}/lock
[fernet_tokens]
# Fernet key repository
key_repository = {{ snap_common }}/fernet-keys

View File

@ -0,0 +1,12 @@
[uwsgi]
wsgi-file = {{ snap }}/bin/keystone-wsgi-public
uwsgi-socket = {{ snap_common }}/run/keystone-public.sock
buffer-size = 65535
http = 0.0.0.0:5000
master = true
enable-threads = true
processes = 4
thunder-lock = true
plugins = python
lazy-apps = true
pyargv = --config-file={{ snap }}/etc/keystone/keystone.conf --config-dir={{ snap_common }}/etc/keystone.conf.d

63
snapcraft.yaml Normal file
View File

@ -0,0 +1,63 @@
name: keystone
version: ocata
summary: OpenStack Identity Service (keystone)
description: |
Keystone provides authentication, authorization and service discovery
mechanisms via HTTP primarily for use by projects in the OpenStack
family. It is most commonly deployed as an HTTP interface to existing
identity systems, such as LDAP.
confinement: strict
grade: devel
apps:
uwsgi:
command: snap-openstack keystone-api
daemon: simple
plugs:
- network
- network-bind
manage:
command: snap-openstack keystone-manage
plugs:
- network
parts:
keystone:
plugin: python
python-version: python2
source: http://tarballs.openstack.org/keystone/keystone-master.tar.gz
python-packages:
- pymysql
- uwsgi
- 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
- pkg-config
- gcc
templates:
after:
- keystone
plugin: dump
source: conf
config:
after:
- keystone
plugin: dump
source: http://tarballs.openstack.org/keystone/keystone-master.tar.gz
organize:
etc/*.conf: etc/keystone/
etc/*.ini: etc/keystone/
etc/*.json: etc/keystone/
etc/*.templates: etc/keystone/
filesets:
etc:
- etc/keystone/*.conf
- etc/keystone/*.ini
- etc/keystone/*.json
- etc/keystone/*.templates
stage: [$etc]
snap: [$etc]