270 Commits

Author SHA1 Message Date
Jenkins
4455746d65 Merge "Add optional ip address filter for hiding ips" 2013-11-13 23:16:51 +00:00
daniel-a-nguyen
90881fe690 Replace GUID with generated password
Change-Id: Id17f60db4df7188ec79faddc25453159a4f65fba
Closes-Bug: #1227913
2013-10-30 10:50:30 -07:00
daniel-a-nguyen
d93b7708bb Add optional ip address filter for hiding ips
Change-Id: I9f7631b9137062913379b45c98c545dda02ce284
Implements: blueprint add-ip-addr-filter-to-instance-view
2013-10-30 10:37:45 -07:00
Tim Simpson
eb81a1e963 Fixes trove-api daemon fake mode functionality.
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
2013-10-28 23:41:11 -05:00
Jenkins
f525544c13 Merge "Provide service type management code structure" 2013-10-25 17:55:36 +00:00
Denis M
b214e9ec68 Security groups workflow update
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
2013-10-21 11:42:31 -07:00
Denis M
290c78cbad Provide service type management code structure
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
2013-10-16 13:16:36 +03:00
Jenkins
38e21074fd Merge "Add GA related parameters to trove-taskmanager.conf.sample" 2013-10-16 09:46:12 +00:00
Jenkins
f3e3502f95 Merge "Update trove-guestagent.conf.sample" 2013-10-14 18:40:36 +00:00
Denis M
f38685f264 Update statuses on GA timeout
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
2013-10-11 12:52:30 +03:00
Illia Khudoshyn
4047f4e860 Update trove-guestagent.conf.sample
Add missing 'service_registry_ext' parameter
Remove obsolete 'guestagent_manager' parameter

Fixes bug: 1237910

Change-Id: I66606672bd5bdad21c00ce2ad8d7a8eb62cff8cc
2013-10-10 18:26:06 +03:00
Illia Khudoshyn
8400bb40b1 Add GA related parameters to trove-taskmanager.conf.sample
Adds placeholders for 'guest_config' and 'cloudinit_location'
to trove-taskmanager.conf.sample

Fixes bug: 1237395

Change-Id: I5214f5fcc785d94b5b2b60dead316768980d7909
2013-10-09 22:52:55 +03:00
Michael Basnight
d16940a1c3 Modifying tests to use the compat client
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
2013-10-08 21:07:37 -07:00
Dmitriy Ukhlov
9f55a06e09 Task manager refactoring done
Manager API class removed and rpc fake impl used now for integration
testing

Change-Id: If20004f1b69e41e8243a3f58eec184f1f457affe
Implements: blueprit trove-task-manager-client-refactoring
2013-10-08 23:36:18 +03:00
Jenkins
00b03a4d7e Merge "Support Optional Super User in Instance Create" 2013-10-08 19:02:41 +00:00
justin-hopper
64774095a3 Allow service_id per service_type for Usage Events
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
2013-10-04 16:46:42 -07:00
amcrn
8f0ab72bc8 Remove Duplicate trove_auth_url Property
Remove duplicate trove_auth_url property from
trove-taskmanager.conf.sample

Change-Id: Ie0cfb08b8ba808647184fb1a343c6773a107cfd7
Closes-Bug: #1234909
2013-10-03 13:01:13 -07:00
Jenkins
52506396dd Merge "Pydev remote debugging support added." 2013-10-03 08:38:09 +00:00
Michael Basnight
0805d0a008 fixing symlink attack bug present in the application.
fixes bug 1233305

Change-Id: I14a94b3b5cb27e8d6c5848c212b3b88053aa8aca
2013-10-01 15:10:22 -07:00
Dmitriy Ukhlov
f642220909 Pydev remote debugging support added.
Change-Id: I2649ba4be2b375b42bf16957dc685d970d0bcd7d
Implements: blueprint task-manager-debug
2013-09-24 21:08:04 +03:00
amcrn
f77aab57e1 Support Optional Super User in Instance Create
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
2013-09-20 14:29:20 -07:00
Nikhil Manchanda
5da9c62b91 Set sane defaults for required conf params in trove/common/cfg.py
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
2013-09-17 14:36:12 -07:00
Denis M
797fe9c2d3 Add and associate security group rule with group.
Fixes: bug #1176095 #1176098
Change-Id: I254aca213ae40326ed6e9c00bc35d63ff0805c9f
2013-09-01 22:03:25 +03:00
Auston McReynolds
0815de500b Update nova_volume_url to cinder_url in CONF files
"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
2013-08-28 19:49:09 -07:00
Andrey Shestakov
d523f31c57 Add instance cloudinit support
implements blueprint guestagent-through-userdata

Change-Id: Ifb33f149e63d7b9b7ed676da8ff05085ceceffeb
2013-08-16 21:27:39 +03:00
Jenkins
ce6c35e55c Merge "Moves extension files to routes" 2013-08-13 18:25:41 +00:00
Paul Marshall
7d022b4651 Moves extension files to routes
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
2013-08-09 14:59:15 -05:00
Steve Leon
7e57dbddcd Configurable network labels used for showing IPs in instance details
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
2013-08-08 19:38:05 -07:00
Haomai Wang
4907ccca2a Replace nova client with cinder client to use volume
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
2013-08-04 22:31:34 -07:00
Michael Basnight
0a44fc273c Migrating the create/resize code to use flavor obj
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
2013-07-15 09:43:44 -07:00
justin-hopper
b0834124e8 Fix Notifications
Conditionally include Service ID for create/delete instance
    Removed old configuration for Exists Notifications

Change-Id: Id2d87b6dffff00479c9ef0ecd8dd77e3e1e3eb47
Fixes: bug #1192384
2013-06-27 00:12:15 -07:00
Michael Basnight
7ab80b554d Rename from reddwarf to trove.
Implements Blueprint reddwarf-trove-rename

Change-Id: Ia9ee609bbc06a1d8b9d6917642529f30347541fd
2013-06-24 14:11:15 -07:00
Dror Kagan
4eef8d9a70 Adding support for encrypted backups.
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
2013-06-17 13:12:50 -07:00
justin-hopper
3a276f77c3 Adding Exists Event Publishing
TaskManager periodically sends notifications for active instances

Implements: blueprint notification-exists-event

Change-Id: If9ec0a6b89ee28c550297e5a7450b0b927e034f2
2013-06-10 16:49:00 -07:00
Robert Myers
3edc50a637 Allow remote implementations to be overridden.
* 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
2013-06-07 11:52:47 -05:00
DJ Johnstone
b8dc6399db Adding missing config value
fixes bug # 1186360

Change-Id: I24d8e4833b7bc078ca238222f8dcee0cdfb2bf26
2013-05-31 12:49:44 -05:00
Jenkins
ce0d39fd2a Merge "Ephemeral volume support" 2013-05-23 23:26:24 +00:00
Steve Leon
301cdf245c Ephemeral volume support
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
2013-05-23 14:18:10 -07:00
Michael Basnight
8ccc5211a4 Changes the conf files so redstack doesnt clobber them anymore.
fixes bug 1183474

Change-Id: Ic5a9597f916e3633eaead77cbdae71780200342e
2013-05-23 10:40:40 -07:00
daniel-a-nguyen
16b42c9579 Added optional arg to launch child processes
Removed unnecessary conditional stmts
Commented out reddwarf-api-workers in configs

Change-Id: I80505fbe2dfe84c2ad77d4f41cd0d876b90187ef
Implements: blueprint preforkreddwarf
2013-05-21 16:05:15 -07:00
Nikhil Manchanda
595125ac84 Backup and Restore for reddwarf instances.
Implemented backup and restore for reddwarf instances.

Implements spec/consistent-snapshots

Change-Id: Ic1e78545f9e90ab986665a58f524081dcde6894b
2013-05-20 14:16:00 -07:00
Jenkins
51523dbf94 Merge "Refresh Oslo code - add support for ssl" 2013-05-20 18:27:24 +00:00
Dror Kagan
9b4279d2eb Refresh Oslo code - add support for ssl
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
2013-05-16 12:43:36 -07:00
Robert Myers
4a06e08c05 Adding the start of notifications
* 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
2013-05-10 14:48:55 -05:00
justin-hopper
b3c32e3f87 Controller and API changes for backups.
-API controller for backups
-adding swift url to the config
-Fixing failing tests
-Renaming 'instance' param.
 Checking for NotFound models so that the returned error is friendly
-adding feature to list all backups from a specific instance
-Adding checks for creating/deleting/restoring backups when it is not completed
-Adding unit tests for backup controller
-adding check to see if file is in swift
-Adding skeleton code for delete backup in the task manager
-Fixed backups API to pass in the backup_id during create_backup.
-adding int tests for backup controller
-Adding backup list and delete int tests
-Adding list backups for instance test
-Adding quota for create backup

BP: https://blueprints.launchpad.net/reddwarf/+spec/consistent-snapshots

Change-Id: I35c2fefcce4b3009e76ba7232c52dabf502a3ac0
2013-05-09 09:26:06 -07:00
Craig Vyvial
2a30e1871b fixing the flavor tests
Fixes Bug: 1157541

Change-Id: Ia77a71139fd96aadfe9618240c5c234ca552f167
2013-04-10 00:26:14 -05:00
Nikhil Manchanda
8d89bae2ad Added support for Security Groups via a new extension.
- Added migrate changes for new database artifacts.
- Added models for Security Groups and Security Group Rules.
- Definition and addition of Controllers for API.
- Views for Security Groups and Security Group rules.
- Extended taskmanager to use newly created  Security Group on instance
  creation, and to clean it up on deletion if extension is enabled
- Added new flag to conf to enable "reddwarf_security_groups_support"
- Integration tests.

Implements blueprint: security-groups

Change-Id: I44053359c12e53a9e549bd334e628ecd249d8ba0
2013-03-27 15:43:46 -07:00
Ed Cranford
825acf1ee3 Adds optional hostname to calls involving users
All calls that involve calling a user by name now
also allow for the host to be specified optionally.

Similarly, all calls that respond with a user also include
the host, defaulting to '%', MySQL's shorthand for 'anywhere'.

There are also a few fixes to get all real, fake, and tox tests
to work. Those will probably be rebased away if other reviews are
merged first.

Change-Id: I6df821ef2ad7d0602a060c853f0ef9bdc5c11c26
2013-03-26 14:27:16 -05:00
daniel-a-nguyen
a076b182c7 Addresses failing quota int-tests
Refactored tests following comments
Needed to update tearDown method

Change-Id: I2ae65a01f32b7a7afe779d8b54c019c033ac4889
Fixes: bug #1155317
2013-03-20 20:58:07 -07:00
Michael Basnight
bcaa005780 Fixing the signing dir and cleaning up the paste config.
Fixes bug 1157313

Change-Id: I2850444095ed929f4f6076de543ad2fa16050dd3
2013-03-19 10:23:54 -07:00