Reason: Each query which is executed through sqlalchemy are logged,
because engine had been initialized with parameter echo=True,
this flag cause security issue - logging insecure user credentials.
Changes:
- adding flag to guest config which allows to
unable/disable insecure/secure query logging,
default value for insecure logging - False;
- engine init parameter echo depends on config value
Closes-Bug: #1224700
Change-Id: I2e0e5970a981f16ce1abe96f012ed7618f57287a
Reasons: preparing trove to support multi-datastores
Changes: template loading, heat-support update
This code refactors the earlier code of instance creation using heat.
- Configuration templates stored at trove/templates/(datastore_type)/config.template
- Heat templates are stored in trove/templates/(datastore_type)/heat.template
- One template per datastore type
- New parameter - ImageId
- Removed SSH key parameter
- All resources are updated according to available OS resources
(for more details please visit heat repository).
Author: Denis Makogon (dmakogon) <dmakogon@mirantis.com>
Co-Authored-By: Nilakhya Chatterjee (SnowDust) <nilakhya.chatterjee@globallogic.com>
Change-Id: Ie6863a625e1525e152ed2886a630dc4f233be8dc
Implements: blueprint provide-custom-heat-templates-for-each-service-in-trove
This commit adds code to register taskmanager as a fake endpoint.
This allows the fake daemon to work again.
Fixes bug 1238901
Change-Id: Icb7c97cad3d76dc36a38126eb7f8b5929dc0d591
Changes: Creating new Instance Task Status for Security groups
Updating statuses if exception happend.
If security groups quota exceeded trove-api falls into exception
with updating instance task and service task statuses
to inform user that exception happend while security groups creation
Moving secgroup provision logic to the task manager
Author: Steve Leon <steve.leon@hp.com>
Co-Authored-By: Denis M <dmakogon@mirantis.com>
Change-Id: I74def4a4489951139ce8462104f1d7987c4f2fca
Implements: blueprint security-groups-workflow-update
Reasons for refactoring:
- current code structure is orientied on mysql management implementation;
- there is no chanse to make new service types management
code fittable in current package/module structure;
- backuping process implementation is mysql/percona-orientied,
it should be renamed and should be configurable due to service type;
- "query" is abstract word for querying into database,
current query.py implementation is SQL orientied - it should be renamed;
Updates:
1.Providing new package hierarchy:
guestagent/manager/service_type/service.py
guestagent/manager/service_type/manager.py
guestagent/manager/service_type/system.py
2.Renaming strategy implementations per each service_type
guestagent/strategies/backup/mysql_impl.py
3.Externalizing operating system definer form system.py
which used in pkg.py
4.Renaming query to sql_query.
Implement: blueprint refactor-ga-for-other-engines-support
Change-Id: I5fa5f037056bedf5464e99720cbe03b877c27fba
Updates instance status if GA stacks at BUILD status
after poll_until
Change-Id: I581f67d1be9f8e9b2080daa86d51d89326840c5c
Implements: blueprint update-instance-task-status-if-instance-stucks-at-build-status-to-error
Adds placeholders for 'guest_config' and 'cloudinit_location'
to trove-taskmanager.conf.sample
Fixes bug: 1237395
Change-Id: I5214f5fcc785d94b5b2b60dead316768980d7909
Modifies tests so they use the old style client code.
This is still exercising the actual v1.* code, it is
just accessing it via the compat module.
partially implements blueprint cli-compliance-upgrade
Change-Id: I5578525325416a28d7ab772ad0817f49ff6c6611
Manager API class removed and rpc fake impl used now for integration
testing
Change-Id: If20004f1b69e41e8243a3f58eec184f1f457affe
Implements: blueprit trove-task-manager-client-refactoring
notification_service_id is not of type DictOpt,
this allows for a comma-sep list of
service_type:service_id pairs
Fixes: Bug 1215649
Change-Id: Ic747bf50bf6f4c2b705ecae96a7ead52ebcdae38
The creation of initial users and/or databases is supported in an
instance-create request, but the creation of a super/root user is
not. Granted, it's possible to create or reset the root user, but it
must be done as a separate request, after the instance has completely
initialized.
Changeset: If CONF.root_on_create == True, a UUID is generated for
the root user's password and is returned in the instance-create
response as the "password" property/field.
Change-Id: I300d3f019766445b90411d5ab8651b1aa34a77e9
Implements: blueprint instance-initial-super-user
Closes-Bug: #1219624
The following conf options are required and should have their defaults
set to sane values which make sense for the reference implementation:
ignore_dbs, ignore_users, admin_roles, and api_extensions_path
Change-Id: I2d78e9a06cb56832297d38a8fc4608964bca6976
Fixes: bug 1226496
"Replace nova client with cinder client to use volume" for
bp/implement-volume-extend replaced nova_volume_url with cinder_url.
The purpose of the change was to support Cinder's recently acquired
ability to extend volumes. The original changeset missed the CONF
files, leaving the nova_volume_url artifact.
Change-Id: Ic814d8cef424c4d1e18e531beb9302da9e273eb6
Closes-Bug: #1218152
This allows extensions to be loaded properly without interfering with
directories in trove/extensions that are loaded as python modules.
Change-Id: Iad1bdc9b7548c46b0e5b8694693b4456ac548f14
Implements: Blueprint fix-extensions-imports
The ip shown in the instance detail was hard coded to be obtained from
a nova netwok label 'private' or 'usenet'. With this change, the labels
is configurable based on a regex pattern.
Fixes bug 1206303
Change-Id: I73d896e6b85bdebe342a777219b9b60d6954f8b6
Now cinder support a few new features like extend volume which used in Trove.
We can't use nova client to enjoy this new feature, so we should change to use
cinder client as volume management.
implement bp implement-volume-extend
Change-Id: I4f9139bacd7d8b4c2538bff6aa54416b27c9026e
The flavor objects used to use memory_ram and flavor_id. The
change now passes around objects so any other flavor properties
can be used.
implements blueprint refactor-flavor-taskmanager
Change-Id: I2520e4e4eba430338445bff4d358eef9fb16f0d5
Conditionally include Service ID for create/delete instance
Removed old configuration for Exists Notifications
Change-Id: Id2d87b6dffff00479c9ef0ecd8dd77e3e1e3eb47
Fixes: bug #1192384
We'd like to enable the backups that are taken and stored as files in Swift, to
be encrypted. We'll add some new config flags, to mark whether or not
encryption is enabled. At this point, the encryption key will also be stored as
a config value. When configured to encrypt, the whole process will be streamed
to/from Swift, doing backup -> zip -> encrypt -> Swift and Swift -> decrypt ->
unzip -> restore all during streaming, so we don't use up more disk space than
needed.
Blueprint: encrypted-backups
Change-Id: I05447306f4249bfd8e02de7b008ebda3387b2fbd
* Adds new config settings for default remote clients
* Removes monkey patching during test runs
* Add fake implementations to test config.
Implements: blueprint: custom-remotes
Change-Id: Ic1fa423d9192eceb64f0de54bad869e73fb3a1e5
This feature enables reddwarf to create instance and run mysql on ephemeral disk.
To enable this feature, set the flag "reddwarf_volume_support to False and specify the device_path and mount_point variables.
Also added int tests for ephemeral support
fixes LP bug# 1175719
BP: https://blueprints.launchpad.net/reddwarf/+spec/ephemeral-storage-volume
Change-Id: I869297e7da288ac42b359c8cdb731e8b7281d51b
We want to add ssl support for the reddwarf api server.
For this, updating the openstack/common/wsgi module, and
all it's dependencies as a result of using:
$> python update.py --base reddwarf --dest-dir ../reddwarf --modules wsgi
(details:https://wiki.openstack.org/wiki/Oslo)
I'm commenting out the "six" update, since it seems to break
our fake mode testing with regard to reddwarf-cli.
I'll open a separate bug for it.
Change-Id: I763d06658488bd1ca1eac5a2ba1ffde5629f842f
Fixes: Bug #1178421
* Adds a nofity mixin for the taskmanager models
* Adding a usage verifier test
* Adding tests for usage notifications
* Adding extra parameters to match Nova notifications
Implements: blueprint reddwarf-notifications
Change-Id: I61193c238fac6e14d360f3e17baeb5302aa7d720