CHANGES
=======

* Replace openstack.org git:// URLs with https://
* import zuul job settings from project-config
* Add and use Karbor beaver mascot
* etc/karbor.conf URL error
* Support to execute specific fullstack test
* Unit test may failed without client\_factory.init()
* Support clients with privileged user in karbor
* Update usage.rst
* Update fullstack efficiency
* Update .gitreview for stable/ocata

0.2.0
-----

* devstack: add placement-api
* Remove unused modules of karbor
* Update the nova backup protection plugin
* cinder protection: force create snapshot
* Raise a HTTPNotFound 404 exception when instance can not be found
* keystone: move to v3
* swift-plugin: lazy load of swift connection
* bank: fix list\_objects using stricter validations
* bank: Remove create\_object
* ocata: release notes
* Add restore resources\_status
* noop: update name and description
* docs: build modindex, add plugins
* fullstack: create server with explicit network
* Remove link to modindex
* Updated from global requirements
* Fix token expire wich may happen in using clients
* Update the glance backup protection plugin
* Update the way of getting endpoint of other service
* Fix typo
* Delete support for py33
* Updated from global requirements
* Cinder Protection Plugin: Backup from snapshot
* Typo fix: completly => completely
* Checkpoint list bug
* Add 'Restore Resources Status' spec
* Add offset support for paginate\_query in karbor
* Fix create trust failed
* Fix the errors about nova client creation
* Prepare for refactoring clients used in protect service
* Add validation for the parameter provider\_id in checkpoint POST API
* Add trace log for task and flow in karbor protection service
* Remove logging import unused
* Heat url error in local.conf.sample
* Refactor fullstack clients
* Fix the errors about the protectable API reference documentation
* Update the Cinder Backup Protection Plugin
* Add Restore parameter to protection plugin doc
* Don't create Heat Stack when template is empty
* Enable heat plugin in devstack sample and docs
* Removes unnecessary utf-8 coding
* Updated from global requirements
* Use parenthesis instead of slash for multiline
* fix scheduledoperation fullstack
* Refactor flows
* Fix checkpoint fullstack
* Replace 'tenant\_id' to 'project\_id' for Karbor's endpoints
* Purge deleted rows data
* Stabilize Protection Plugin API
* Add attached volume fullstack
* Updated from global requirements
* Delete the unnecessary codes of clients/swift.py
* Database purge deleted rows spec
* Add plan and date filter parameters for checkpoint list API
* Add Heat plugin to devstackgaterc
* fullstack: don't reinstall virtualenv
* Revert "Print PROJECTS before devstack-vm-gate"
* Temporarily remove rst from gitattributes
* Print PROJECTS before devstack-vm-gate
* Revert "Save fullstack gate logs"
* [TrivialFix] Fix test function typo error
* [TrivialFix] Fix comment typo error
* Print trace log when unknown exception happended
* Fix loading 'provider\_config\_dir' opt error
* Replace dos newlines with unix newlines in spec
* Restore .gitattributes
* Remove .gitattributes temporeraly
* Add .gitattributes file
* Save fullstack gate logs
* [TrivialFix] Fix dir doc typo error
* Replace dos newlines with unix newlines
* Fix node being added twice when packing a graph
* Print the stack trace logs when the plugins are not successfully loaded
* Kill the green thread immediately if it is sleeping
* Don't send canceled operation to executor
* Add sort and pagination parameters for karbor api-def doc
* Updated from global requirements
* The spec about adding extra\_info field to the response of instances API
* Updated from global requirements
* Updated from global requirements
* Updated from global requirements
* Modify smaug to karbor
* fix typo in karbor.api.middleware.auth.py
* Add Created\_at field to checkpoint list/show API
* Typo in bank-plugin-lease.rst
* Raise ProviderNotFound from ProviderRegistry
* Corrected README.rst overline and underline issue
* Typo in api-service.rst
* Update descriptions in CONTRIBUTING.rst
* Fix the typo of the readme.rst
* Turn windows endlines into unix endlines
* fix Eisoo provider load error
* Remove cfg import unused
* Replace 'assertTrue(a in b)' with 'assertIn(a, b)'
* Support fuzzy filtering for the list API of Plan
* Update Protection Plugin Spec
* Fixed typos and wordings in doc/source/readme.rst
* Spec: Refactor the clients used in protect service
* Show team and repo badges on README
* add eisoo client factory
* Fix typo in image\_protection\_plugin.py
* Use proper assert check
* fix api-ref for restore
* Add fullstack for scheduled operation
* Update requirements
* Update .gitignore
* Fix devstack plugin
* Updated from global requirements
* Replace six.iteritems with dict.items()
* Support icalendar time format without the crontab mentions
* Optimize time trigger: use instance of time format instead of class itself
* Replaces uuid.uuid4 with uuidutils.generate\_uuid()
* Fix compute next time in green thread of trigger
* Set access\_policy for messaging's dispatcher
* Replace LOG.warn with LOG.warning
* Fix test requirements
* Set local for tox
* Fix the singleton pattern in operation engine
* Support keystone v3 completely
* Fix restore fullstack
* Fix the error about the CA certificate parameters for Keystone clients
* Extract public function
* Add versioned object of checkpoint\_records table
* Add checkpoint\_records table of db
* cross platform support
* Update usage.rst
* Restore: initialize heat client using current login tenant by default
* Updated from global requirements
* Support Cinder V3 API in Karbor
* Optimize time trigger: remove the interval variable '\_next\_run\_time'
* Optimize time trigger: Move the context to be held in green thread
* Support relative path
* Updated from global requirements
* Fix the authorization of swift when karbor is installed using devstack
* Added release-notes for karbor
* Add CA certificate parameters for Keystone clients
* Fix checkpoint fullstack
* Enable DeprecationWarning in test environments
* restore: update success only upon heat complete
* Updated from global requirements
* Update .coveragerc after the removal of openstack directory
* Encapsulate smaug client in Operation Engine
* Add parameters field for protectable instances API
* Updated from global requirements
* Drop MANIFEST.in - it's not needed by pbr
* Fix LOG.warn to LOG.warning
* Add a new executor for Operation Engine service
* Update the way of using karbor client in operation class
* Update test cases for operation manager
* Correct logging translation markers
* Fix the none error
* Remove setup.cfg version

0.1.0
-----

* Use upper-constraints for tox envs
* Updated from global requirements
* Add restores api-ref
* Add triggers api-ref
* Add scheduled operations api-ref
* Add providers api-ref
* Add protectables api-ref
* Add checkpoints api-ref
* Add plans api-ref
* Refactor the dos newlines to unix
* Optimize status getter into a set
* Allow deletion of erroneous checkpoints
* Allow restore only when checkpoint is available
* Fix DevStack Setup Exception
* Add CA certificate parameters for OpenStack clients
* The spec about adding parameters field for instances API
* TrivialFix: Remove default=None when set value in Config
* Modify use of assertTrue(A in B)
* Use method check\_string\_length from oslo.utils
* Add restore\_auth to restore
* Update homepage with developer documentation page
* Support multiple executors to choose for scheduled operation
* Add server plugin to setup.cfg, default provider
* Fix typos in manager.py & test\_common.py
* Add a filter processing for the parameter of restore
* Use assertIn(A, B) instead of assertTrue(A in B)
* Fix api doc error and classify parameters
* Fix a typo in bank.md
* docs: fix 3 tier app image, remove tolkien passage
* Add a description field for resource plan
* TrivialFix: Remove logging import unused
* Change trigger update method into put
* Move restore auth parameters to restore\_auth attr
* Fix missing to convert the format of ScheduledOperation
* Add frame for api reference
* Remove hard code in api
* Keep id consistent
* List providers for tenants
* cinder protection: fix schema description's field
* Update the restore part of api doc
* Update the checkpoint part of api doc
* Update the provider part of api doc
* Updated from global requirements
* Fix the api doc part of scheduled operation
* Update the api doc part of protectable
* Update the api doc part of plan
* Update configuration, requirements to karbor
* Updated from global requirements
* Rename smaug to karbor in docs
* test: make enforce\_type=True in CONF.set\_override
* update typos from eumn to enum
* Update the api doc part of scheduled operation
* Update the api doc part of trigger
* Add Python 3.5 classifier and venv for smaug
* Replace assertDictEqual() with assertEqual() For smaug
* Add suspend/resume operation interface in Operation Engine
* Add a 'enabled' filed to scheduled\_operations table in DB
* Fix Fullstack's devstack
* Add abstract method in ProtectablePlugin base class
* Don't override default value of config option sqlite\_db
* Rename Smaug DevStack to Karbor
* Updated from global requirements
* Change Smaug to Karbor
* Fix plan parameters verify exception
* Fix Swift Bank Plugin Headers
* Fix Scheduled Operation Creation failed
* Updated from global requirements
* Support checkpoint scheduled clean
* Remove unused code related with config option sqlite\_db
* Support checkpoint metadata
* Add exception message translations
* Correct reraising of exceptions
* Add description to Scheduled Operation
* Update the 'get' function of ScheduledOperationState
* Add fullstack tests of the resource restores RESTAPI
* Fix several typos
* add list and get fullstack for checkpoint
* Updated from global requirements
* Fix several typos
* Remove aliases of rpc backend for messaging
* Remove discover from test-requirements
* Fix UsageExample
* Add image protection plugin in openstack-infra.conf
* Implement Nova restoration
* Implement nova protection plugin
* Add user trust manager
* Add the interface of Creating trust to smaug
* Implement keystone client plugin
* Add serialized resource\_graph info in Checkpoint to\_dict function
* Fix bugs in delete image backup
* Add venv script for smaug
* Fix image protection plugins not being successfully loaded
* Fixed argment of the trigger-create command indicated on Usage
* Remove the windows style characters
* Fix having provider\_id in field protection\_plan of checkpoint api
* Implement Glance restoration
* Add parameters and resource name fields to plan RESTAPI
* Updated from global requirements
* Update the CheckpointView model
* Fix image protectable
* Match smaugclient change, create returns an object
* fullstack: use objects in fullstack tests
* fullstack: create objects infrastructre
* Update devstackgaterc
* Add trust\_id to db table 'scheduled\_operation\_state'
* Implement protect operation
* Implement the scheduled operation base class
* Remove oslo-incubator related stuff
* List checkpoints: return a dictionary, not object
* Implement list checkpoints
* Fix show\_checkpoint
* plan: allow plan with empty dict parameters
* Implement show\_checkpoint
* updata the class model of provider
* Add fullstack tests of the resource checkpoints RESTAPI
* Fix protection service parse protect/restore parameters
* Fix default provider config for fullstack
* docs: update mission statement, diagram, toc
* devstackgaterc for controlling fullstack config
* Add a usage example for smaug
* Updated from global requirements
* Implement cinder volume backup deletion
* Add fullstack tests of the resource protectables RESTAPI
* fix the version of novaclient in smaug\_base.py
* Add "sort\_dir" parameter for list\_objects in BankPlugin
* Add list function to scheduled operation log
* Add user\_id to db table 'scheduled\_operations'
* Fix list protectable API error
* Fix bugs for the heat\_client create
* Fix fullstack tests of the resource plan and provider
* Expect exceptions in Protection Service
* Fix cmd provider list not returning the value of extended\_info\_schema
* Add Smaug Trello board to documentation
* Add reno release notes to Smaug
* Checkpoints to use a unique sub-section
* Updated from global requirements
* Replace dos newlines
* Fix several bugs about Operation Engine service
* Fix create checkpoint API errors in protection service
* Fix bank and protection plugins not being successfully loaded
* Fix wrong definition of schema method
* Implement executor of OperationEngine
* Updated from global requirements
* [API] Add name property to Resource model
* Add serialize and deserialize functions for resource\_graph
* Enable heat in the local conf
* Fix bug in unpack\_graph
* fix requirements.txt for smaug
* Fix the format of restores parameters
* Fix minor issues with code formatting
* Protection Provider use Bank to wrap BankPlugin
* Store ResourceGraph and Plan in checkpoint
* Remote Restore states from possible checkpoint states
* Updated from global requirements
* Update Protection Plugin Design
* Enable lease checking for checkpoint
* The resource graph walker listener
* Implement Cinder Restoration
* Move swift client to be created by ClientFactory
* Updated from global requirements
* Add fullstack tests of the resource plan
* Add fullstack tests of the resource providers
* Updated from global requirements
* Fix SwiftBankPlugin
* Add fullstack tests of triggers
* Updated from global requirements
* Updated from global requirements
* Implement sync cinder status
* Updated from global requirements
* remove verbose option in devstack plugin
* Fix context of protectable plugin
* Implement glance protection plugin
* Fix loading smaug-swift-bank-plugin error when starting smaug-protection service
* Implement the restoration flow
* Implement HeatTemplate for restore
* update local.conf of smaug
* Implement cinder protection plugin
* Move operationengine to services directory
* [API] Add resource endpoint
* Add operation log endpoints to API document
* The versioned object and db operation of operation\_log
* Fix creating resource plan error
* BankSection: implement get sub-section
* Fix fullstack test\_plan\_list
* Create BankCheckpointCollection implementation
* Fix resource name can not be inserted into db
* Make Plan parameterss a DictOfDict
* Fix the wrong calling list\_protectable\_dependents
* Implement restart of Operation Engine service
* Add fullstack test to smaug
* Add a field parameters to resource plans
* Add show protectables instance endpoint
* Add name property to protectable instances model
* Implement the protection flow
* Implement the workflow
* Fix serialized\_meta in SwiftBankPlugin
* Add croniter as requirement, devstack providersd
* Implement Graph pack and unpack
* Add providers.d directory to setup.cfg
* Fix init\_host of protection service
* Implement RestAPIs of Scheduled Operation
* Implement RestAPIs of trigger
* Add checkpoint id to the response of the checkpoint POST action
* API: Trigger, ScheduledOperation structural fixes
* graph: add test to verify diamond dependence
* Protection manager register protectable plugins
* Manual update from global-requirements
* Fix Provider RPC client and server do not match
* Implement time trigger with Eventlet
* Implement rpc interfaces of OperationEngine
* Add project protectable and dependencies
* Restore design spec (protection service level)
* Fix python3 compatibility
* Split Provider configuration into files
* Fix SwiftBankPlugin
* Delete the wrong parameter in the method checkpoints\_delete
* Fix missing "enabled\_providers" in global config
* Basic design doc for API Service
* Add dashboard to Local.conf
* Implement Provider and ProviderRegistry
* Implement operation manager
* Protection service basic design doc
* client\_factory: use classmethod, remove instance
* Implement glance protectable plugin
* Implement protectable RPC handlers
* Implement nova protectable plugin
* Implement the ProtectableRegistry
* Implement Neutron service client
* Implement cinder protectable plugin
* Proposed Smaug API v1.0
* Implement Cinder service client
* Implement Nova service client
* Implement Glance service client
* Implement the common logic for service client
* RPC client recreates exception object failed
* docs: fix operation\_engine\_design rst syntax
* Implement swift bank plugin
* Replace dos endlines into unix endlines
* Implement Bank Section
* The RESTAPI of resource checkpoints
* The RESTAPI of resource providers
* The RESTAPI of resource protectables
* The RESTAPI of resource Restore
* The versioned object and db operation of Restores
* Implement the GET and DELETE RESTAPI of resource plans
* Implement versioned object of scheduled\_operation\_states table
* Implement versioned object of scheduled\_operation\_log table
* Split BankPlugin interface
* The basic function modules of pagination, sort and filter
* Introduce Graph walker
* Implement the POST and PUT RESTAPI of resource plans
* Implement versioned object of triggers table
* Implement versioned object of scheduled\_operation table
* Implement scheduled\_operations table of db
* Integrate graph building with the ProtectableRegistry
* Implement the versioned object and db operation of plans
* Fix the field's order of db tables
* Implement triggers table of db
* Implement scheduled\_operation\_states table of db
* Implement scheduled\_operation\_logs table of db
* Protectable module code framework
* Implement graph builder
* Make ProtectionPlugin abstract
* Pluggable protection provider doc
* Move protection service
* Implement the basic protection service framework
* operation engine design
* Basic design doc for Bank Plugin lease
* Init api service database tables definition
* Introduce oslo.versionedobjects to smaug
* Fix not calling rpc.init(CONF) in basic Service class
* Clean flake8 ignore
* basic protection service: Implement a runnable service
* basic OperationEngine service: Implement a runnable service
* Add Smaug spec directory
* First draft of the API documentation
* basic OperationEngine service: Service class for binaries running on hosts
* basic API service: Create the base DAL into the DB
* Fix a spelling mistake of smaug in wsgi module
* Authentication fails by keystonemiddleware
* Fix the keyerror:"tenant\_name" when writing log
* Remove kombu as a dependency for Smaug
* Initial devstack script
* basic API service
* Resize project logo images
* Initial Cookiecutter Commit
* Added .gitreview
