Felipe Monteiro 81b3e42013 Revision rollback API.
This commit implements the revision rollback API, allowing
users to rollback to a previous revision, whereby a new
revision is created.

An exception (400 Bad Request) is raised if the revision being
rolled back to is identical to the latest revision or if no
changes exist between the latest revision and the one being rolled
back to.

Included in this commit:

  - API endpoint for revision rollback.
  - Back-end logic for rolling back to a previous revision.
    The associated documents are also re-recreated. The
    revision_id assigned to each document depends on whether
    it has changed between the latest revision and the one
    being rolled back to: if changed, the new revision_id
    is assigned, else the original one, to maintain the
    correct revision history.
  - Associated unit tests.
  - Unskip all associated functional tests.

Change-Id: I5c120a92e106544f7f8a4266fc386fb60622d6b3
2017-09-25 22:20:47 +01:00
2017-09-25 22:20:47 +01:00
2017-09-25 21:58:30 +01:00
2017-09-19 15:45:40 -04:00
2017-09-22 19:28:47 +01:00
2017-08-15 16:11:35 -04:00
2017-08-15 16:11:35 -04:00
2017-08-11 01:22:26 -05:00
2017-08-24 20:58:26 +01:00
2017-09-14 16:50:06 +00:00
2017-09-14 16:50:06 +00:00
2017-06-16 08:29:03 -07:00
2017-06-26 16:57:50 -07:00

Deckhand

A foundational python REST YAML processing engine providing data and secrets management to other platform services.

To generate a configuration file automatically:

$ tox -e genconfig

Resulting deckhand.conf.sample file is output to :path:etc/deckhand/deckhand.conf.sample

Copy the config file to a directory discoverably by oslo.conf:

$ cp etc/deckhand/deckhand.conf.sample ~/deckhand.conf

To setup an in-memory database for testing:

[database]

#
# From oslo.db
#

# The SQLAlchemy connection string to use to connect to the database.
# (string value)
connection = sqlite:///:memory:

To run locally in a development environment:

$ sudo pip install uwsgi
$ virtualenv -p python3 /var/tmp/deckhand
$ . /var/tmp/deckhand/bin/activate
$ sudo pip install .
$ sudo python setup.py install
$ uwsgi --http :9000 -w deckhand.cmd --callable deckhand_callable --enable-threads -L
Description
A configuration management service with support for secrets.
Readme 8.8 MiB
Languages
Python 97.5%
Shell 1.9%
Makefile 0.5%