Implements log file retrieval from the guest agent. The contents
of the log file are pushed up to a swift container as a series of
objects that represent a subset of the lines in the log.
The following trove CLI commands are now supported:
trove log-list <instance> : lists log files available on guest
trove log-enable <instance> <log> : enables writing to log file
trove log-disable <instance> <log>: disables writing to log file
trove log-publish <instance> <log>: publishes updates to swift container
trove log-discard <instance> <log>: discards published logs
trove log-tail <instance> <log> : displays last lines of log
trove log-save <instance> <log> : saves the entire log to a file
Log declarations and scenario tests were added for MySQL and
PostgreSQL.
Co-Authored-By: Morgan Jones <morgan@tesora.com>
Co-Authored-By: Alex Tomic <atomic@tesora.com>
Co-Authored-By: Peter Stachowski <peter@tesora.com>
Implements: blueprint datastore-log-operations
Change-Id: I16c3bba4a3183d05af2971be6ba56110105797a6
Replace the sqlalchemy engine and session management with an oslo.db
facade. This does the work transparently and fixes connection
mismanagement.
The changes involve:
- modifying the sqlalchemy session script to use oslo_db functions
- adding the oslo_db engine configuration parameters
- tweaking the faked tests to pass*
* the faked tests are sensitive to sleep calls and oslo_db uses a
sleep(0) hack which was causing issues. The coverage of the tests was
not affected.
Implements: blueprint move-to-oslo-db
Change-Id: I59f1fc0fe1551b9a815a51e6a620fabf060b013f
This adds the CORS support middleware to Trove, allowing a deployer
to optionally configure rules under which a javascript client may
break the single-origin policy and access the API directly.
For trove, the paste.ini method of deploying the middleware was
chosen, because it needs to be able to annotate responses created
by keystonemiddleware. If the middleware were explicitly included
as in the previous patch, keystone would reject the request before
the cross-domain headers could be annotated, resulting in an
error response that was unreadable by the user agent.
OpenStack Spec:
http://specs.openstack.org/openstack/openstack-specs/specs/cors-support.html
Oslo_Middleware Docs:
http://docs.openstack.org/developer/oslo.middleware/cors.html
Cloud Admin Guide Documentation:
http://docs.openstack.org/admin-guide-cloud/cross_project_cors.html
Change-Id: Ic55305607e44069d893baf2a261d5fe7da777303
Remove the log module of oslo-incubator.
Move the WritableLogger wrapper to the base_wsgi module.
Add oslo.log to the requirements.
Change-Id: I724fa6090cebf40e7d7c78cc6b8458dfba9508a8