Snap package for Glance
Go to file
Corey Bryant a4222ce874 Switch from conf.d to <project>.conf.d
This aligns with the extension that oslo.config expects.

Change-Id: I86f590d97a41756258aa3184cf94de827f36c0eb
2017-06-14 15:28:40 +00:00
snap Switch from conf.d to <project>.conf.d 2017-06-14 15:28:40 +00:00
.gitignore Add basic tox configuration for building the snap 2016-11-21 11:21:27 +00:00
.gitreview Add misc bits of baseline scaffolding 2016-11-22 15:49:24 +00:00
bindep.txt Switch to classic confinement 2017-03-21 12:32:02 +00:00
CONTRIBUTING.rst Change nova with glance (cut and paste error) 2017-02-16 17:17:32 +01:00
LICENSE Add misc bits of baseline scaffolding 2016-11-22 15:49:24 +00:00
README.md Switch from conf.d to <project>.conf.d 2017-06-14 15:28:40 +00:00
requirements.txt Misc updates 2017-01-04 09:18:36 +00:00
snapcraft.yaml Drop privileges when running commands 2017-05-18 16:14:29 +00:00
tox.ini Switch to classic confinement 2017-03-21 12:32:02 +00:00

Glance Snap

This repository contains the source code of the snap for the OpenStack Image service, Glance.

Installing this snap

The glance snap can be installed directly from the snap store:

sudo snap install --edge --classic glance

The glance snap is working towards publication across tracks for OpenStack releases. The edge channel for each track will contain the tip of the OpenStack project's master or stable branch, with the beta, candidate, and stable channels being reserved for released versions. The same version will be published progressively to beta, then candidate, and then stable once CI validation completes for the channel. This should result in an experience such as:

sudo snap install --classic --channel=ocata/stable glance
sudo snap install --classic --channel=pike/edge glance

Configuring glance

The glance snap gets its default configuration from the following $SNAP and $SNAP_COMMON locations:

/snap/glance/current/etc/
└── glance
    ├── glance-api.conf
    ├── glance-manage.conf
    └── glance-registry.conf

/var/snap/glance/common/etc/
└── glance
    └── glance.conf.d
        └── glance-snap.conf

The glance snap supports configuration updates via its $SNAP_COMMON writable area. The default glance configuration can be overridden as follows:

/var/snap/glance/common/etc/
└── glance
    ├── glance.conf.d
    │   ├── glance-snap.conf
    │   ├── database.conf
    │   └── keystone.conf
    ├── glance-api.conf
    ├── glance-manage.conf
    └── glance-registry.conf

The glance configuration can be overridden or augmented by writing configuration snippets to files in the glance.conf.d directory.

Alternatively, glance configuration can be overridden by adding full config files to the glance/ directory. If overriding in this way, you'll need to either point your config at additional config files located in $SNAP, or add those to $SNAP_COMMON as well.

Logging glance

The services for the glance snap will log to its $SNAP_COMMON writable area: /var/snap/glance/common/log.

Managing glance

The glance snap will drop privileges to run daemons and commands under a regular user named snap-glance. Additionally, permissions and ownership of files and directories in /var/snap/glance/common/ are modified to restrict access from other users.

The glance snap has alias support that enables use of the well-known glance-manage command. To enable the alias, run the following prior to using the command:

sudo snap alias glance.manage glance-manage

Restarting glance services

To restart all glance services:

sudo systemctl restart snap.glance.*

or an individual service can be restarted by dropping the wildcard and specifying the full service name.

Building the glance snap

Simply clone this repository and then install and run snapcraft:

git clone https://github.com/openstack/snap-glance
sudo apt install snapcraft
cd snap-glance
snapcraft

Support

Please report any bugs related to this snap at: Launchpad.

Alternatively you can find the OpenStack Snap team in #openstack-snaps on Freenode IRC.