We are happy to announce the release of: freezer-api 3.0.0: OpenStack Backup and Restore API Service This release is part of the newton release series. For more details, please see below. Changes in freezer-api 2.0.0.0rc1..3.0.0 ---------------------------------------- 61f1b37 Change default value of elasticsearch replicas 5ba9b68 Update .gitreview for stable/newton 2ff22ec Updated from global requirements 977ca7c Implemented: Installation documentation and API Ref 83041ce Updated from global requirements de7b8ec Update mappings to store current process id for each job 733bfe7 Get auth opts from appropriate getter d44c089 Fixed elasticsearch scroll problem in scan search 247694c Fix wrong option group name ce09bbf Implemented oslo.policy 0c2278c Fixed Error reporting while load freezer-api app fd98698 Project/tenant ID now optional in client_id for freezer_api 7c340ee Fix inconsistent syntax in mappings ff594fe Fix bug in README.rst 5db9ce7 Remove discover from test-requirements 338b925 Fix Rst grammar avoid to change every time when change order afe97aa freezer API document error in README.rst 57cbc5a Return an error for negative limits and offsets 10ec5e3 client_id regex now permits valid fqdn for hostname 0fef37e Listen on 127.0.0.1 in devstack 6cbd042 Add display-name to freezer-api Apache config 65cde89 Fixes 'ElastichSearch' typo -> 'ElasticSearch' in freezer-api 5847d70 Remove white space between print and () 964f6e7 Fix falcon version detection for falcon==0.1.6 1d0ecea Updated from global requirements a28be05 Fix Middleware loading for falcon >= 0.1.6 5a99029 freezer-api README.rst needs to be updated bb5ba82 fix job-stop request not accepted 3345c53 Fixed mapper_parser_error in elasticsearch when inserting documents with _version 9a46ed1 Make user_id not_analyzed 94200bc Moving to freezer-manage to create/update/delete mappings 42f1c84 [WIP] Fix tempest credentials issue a94ea3f Remove _version from the document passed to elk 57eb687 Fix RST syntax in tempest tests README 44f8639 Add oslo.middleware to requirement.txt 0657535 Remove version from setup.cfg 525c7f1 Move to Paste and Paste-deploy 562a92f fix typo in jobs.py fe2a5cf Remove version string from elk documents ab486ba Don't check for content-type in requests 0b5f4fc Fix RST error in README fc37320 Fix RST syntax in README b142479 Moving to falcon middleware 67a8bdb Remove version when creating records in elasticsearch 24bac2a Add missing api tests for the backups endpoints e67bc70 Updating freezer-api mappings adding no_incremental and overwite 213391d Add consistency_checksum parameter on backup metadata 31558ae Using oslo.context 39ac6c3 Fix documentation: There is no update endpoint for backups efe376d Fix documentation: offset instead of marker cf688c0 Fix oslo.config to load elk opts from the config file 3e95bc6 Fix refresh problem when a document gets created in elasticsearch ab84438 fix session-remove-job 4ce9a67 Remove apache config file after cleanup freezer api 131c4ae Bumping version to 2.1.0 for Newton b0735e2 Add Freezer API Tempest Tests 1532791 Adding storage, keystone_authtoken sections to sample config d4e727d Switch Freezer-api to oslo.config and oslo.log ea70bbc This is incorrect url in example doc and conf 13f0b7b Add Freezer API Version Test e38f650 Fix url from stackforge to openstack Diffstat (except docs and test files) ------------------------------------- .gitreview | 1 + .pylintrc | 2 +- README.rst | 537 +++++++++++++-------- api-ref/source/conf.py | 206 ++++++++ api-ref/source/index.rst | 20 + api-ref/source/parameters.yaml | 8 + api-ref/source/samples/versions-list-response.json | 15 + api-ref/source/versions.inc | 38 ++ config-generator/freezer-api.conf | 6 + devstack/README.rst | 2 +- devstack/files/apache-freezer-api.template | 8 +- devstack/gate_hook.sh | 1 + devstack/lib/freezer-api | 31 +- devstack/local.conf.example | 2 +- devstack/settings | 4 +- etc/freezer-api.conf | 60 --- etc/freezer/freezer-api.conf.sample | 354 ++++++++++++++ etc/freezer/freezer-paste.ini | 26 + etc/freezer/policy.json | 39 ++ freezer_api/__init__.py | 21 + freezer_api/api/common/middleware.py | 210 +++++++- freezer_api/api/common/utils.py | 56 +++ freezer_api/api/v1/actions.py | 11 +- freezer_api/api/v1/backups.py | 9 +- freezer_api/api/v1/clients.py | 13 +- freezer_api/api/v1/homedoc.py | 1 + freezer_api/api/v1/jobs.py | 37 +- freezer_api/api/v1/sessions.py | 22 +- freezer_api/cmd/api.py | 123 +++-- freezer_api/cmd/db_init.py | 26 +- freezer_api/cmd/manage.py | 353 ++++++++++++++ freezer_api/cmd/wsgi.py | 19 + freezer_api/common/config.py | 119 ++++- freezer_api/common/db_mappings.py | 145 +++--- freezer_api/common/exceptions.py | 2 +- freezer_api/common/json_schemas.py | 29 +- freezer_api/common/log.py | 62 --- freezer_api/context.py | 72 +++ freezer_api/policy.py | 42 ++ freezer_api/service.py | 56 +++ freezer_api/storage/driver.py | 85 ++-- freezer_api/storage/elastic.py | 34 +- .../services/freezer_api_client.py | 181 +++++++ install-guide/source/actions.rst | 27 ++ install-guide/source/api_documents.rst | 12 + install-guide/source/api_routes.rst | 79 +++ install-guide/source/client_structure.rst | 29 ++ install-guide/source/conf.py | 291 +++++++++++ install-guide/source/devstack_plugin.rst | 48 ++ install-guide/source/get_started.rst | 27 ++ install-guide/source/index.rst | 23 + install-guide/source/install.rst | 158 ++++++ install-guide/source/jobs.rst | 357 ++++++++++++++ install-guide/source/known_issues.rst | 22 + install-guide/source/metadata_structure.rst | 55 +++ install-guide/source/sessions.rst | 104 ++++ requirements.txt | 19 +- setup.cfg | 10 +- setup.py | 25 +- specs/Freezer-API-spec.rst | 33 +- test-requirements.txt | 21 +- tox.ini | 8 + 90 files changed, 5554 insertions(+), 919 deletions(-) Requirements updates -------------------- diff --git a/requirements.txt b/requirements.txt index e7900ce..3562212 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1 +1,4 @@ -elasticsearch>=1.3.0,<2.0 # Apache-2.0 +# The order of packages is significant, because pip processes them in the order +# of appearance. Changing the order has an impact on the overall integration +# process, which may cause wedges in the gate later. +elasticsearch<=3.0.0,>=2.0.0 # Apache-2.0 @@ -3,4 +6,10 @@ falcon>=0.1.6 # Apache-2.0 -jsonschema>=2.0.0,<3.0.0,!=2.5.0 # MIT -keystonemiddleware>=4.0.0 # Apache-2.0 -oslo.config>=3.2.0 # Apache-2.0 -oslo.i18n>=1.5.0 # Apache-2.0 +jsonschema!=2.5.0,<3.0.0,>=2.0.0 # MIT +keystonemiddleware!=4.1.0,!=4.5.0,>=4.0.0 # Apache-2.0 +Paste # MIT +PasteDeploy>=1.5.0 # MIT +oslo.config>=3.14.0 # Apache-2.0 +oslo.context>=2.9.0 # Apache-2.0 +oslo.i18n>=2.1.0 # Apache-2.0 +oslo.log>=1.14.0 # Apache-2.0 +oslo.middleware>=3.0.0 # Apache-2.0 +oslo.policy>=1.9.0 # Apache-2.0 diff --git a/test-requirements.txt b/test-requirements.txt index 777fcf5..6aadb34 100644 --- a/test-requirements.txt +++ b/test-requirements.txt @@ -1,4 +1,7 @@ -astroid<1.4.0 # breaks pylint 1.4.4 -flake8>2.4.1,<2.6.0 # MIT -pylint==1.4.5 # GNU GPL v2 -hacking>=0.10.2,<0.11 # Apache-2.0 +# The order of packages is significant, because pip processes them in the order +# of appearance. Changing the order has an impact on the overall integration +# process, which may cause wedges in the gate later. +astroid<1.4.0 # LGPLv2.1 # breaks pylint 1.4.4 +flake8<2.6.0,>=2.5.4 # MIT +pylint==1.4.5 # GPLv2 +hacking<0.11,>=0.10.2 # Apache-2.0 @@ -6,3 +9,2 @@ coverage>=3.6 # Apache-2.0 -discover # BSD -mock>=1.2 # BSD -oslosphinx>=2.5.0,!=3.4.0 # Apache-2.0 +mock>=2.0 # BSD +oslosphinx!=3.4.0,>=2.5.0 # Apache-2.0 @@ -10 +12 @@ python-subunit>=0.0.18 # Apache-2.0/BSD -sphinx>=1.1.2,!=1.2.0,!=1.3b1,<1.3 # BSD +sphinx!=1.3b1,<1.3,>=1.2.1 # BSD @@ -12,0 +15 @@ testtools>=1.4.0 # MIT +os-api-ref>=1.0.0 # Apache-2.0 @@ -15 +18 @@ testtools>=1.4.0 # MIT -tempest-lib>=0.14.0 # Apache-2.0 +tempest-lib>=0.14.0 # Apache-2.0