425 Commits

Author SHA1 Message Date
Steve Martinelli
388bbbac2c Fix issues with object related commands
1) Can't create instance of swiftclient. Since we now create
an API instance, creating a swiftclient instance won't work.
Trying to do any object related command fails.

2) Listing objects in a container fails, we depend on the
data returned in a specific way, during the API transition
this must have slipped through.

Needs regression/funcitonal tests to mame sure this doesn't
happen again.

Change-Id: I69079a0dc9f32b84e6f9307729d3dbbba549ac5e
2014-10-06 20:04:19 -04:00
Steve Martinelli
693687e4ff Remove duplicate env function in shell.py
There already exists an env() function in utils. Let's use that
one since it's common.

Change-Id: I661984394cf0c0543b2f35bf76e3929dead54d1d
2014-10-02 23:09:34 -04:00
Dean Troyer
31018bf7c2 Move object-store commands to low-level API
api.object_store.APIv1 now contains the formerly top-level functions
implementing the object-store REST client. This replaces the old-style
ObjectClientv1 that is no longer necessary.

Change-Id: I7d8fea326b214481e7d6b24119bd41777c6aa968
2014-10-01 13:50:13 -04:00
Dean Troyer
e3b9b96588 Add low-level API base class
Adds the foundation of a low-level REST API client.  This is the final prep
stage in the conversion of the object-store commands from the old restapi
interface to the keystoneclient.session-based API.

* api.api.BaseAPI holds the common operations

Change-Id: I8fba980e3eb2d787344f766507a9d0dae49dcadf
2014-09-29 12:32:45 -05:00
Dean Troyer
207c8cf3ef Test top-to-bottom: object-store containers
Replicate the object-store container command tests but use requests_mock
to test the entire stack down to the requests module.

These will be useful regressions tests when the existing object-store lib
modules are moved to the low-level API object.

Change-Id: Ibf25be46156eb1009f1b66f02f2073d3913b846d
2014-09-29 00:02:32 -05:00
Jenkins
48bb39f299 Merge "utils.find_resource does not catch right exception" 2014-09-28 07:39:19 +00:00
wanghong
7029cf37e2 utils.find_resource does not catch right exception
Currently, utils.find_resource catch NotFound exception defined in
openstackclient. However, different client libraries raise different
exceptions defined in thire own library.

Change-Id: Idc40428e30e59f71dbdbfa0555c0066fddc441c2
Closes-Bug: #1371924
2014-09-24 11:04:41 +08:00
Steve Martinelli
1212ddb431 Remove unused reference to keyring
There's a unnecessary reference that is not being used.

Change-Id: I5ac85d2331385e4a31970b63fd17e650f82046ca
2014-09-23 16:43:31 -04:00
wanghong
2d1225624c v3 credential set always needs --user option
Change-Id: Ieca76bb6ee2f328f4e33010623c25eb9c18e6952
Closes-Bug: #1372744
2014-09-23 14:52:44 +08:00
Oleksii Chuprykov
ffe976ce3e Use oslo.utils
Module `importutils` from common code was graduated to oslo.utils,
so it would be great if we reuse this library.
Remove unused strutils.py and gettextutils.py

Change-Id: Iaae19fc5018d83103e5f15ff76d6da686bfdf5f8
2014-09-22 13:07:31 +03:00
Jenkins
ceae0bed42 Merge "Fixing typo and improving docstring of find_domain" 2014-09-22 07:01:33 +00:00
Steve Martinelli
c8b3f23733 Change help text for image save command
Change-Id: Ib2aecb68ffa06f9ac831131944c98c49cf99c75a
Closes-Bug: #1372070
2014-09-21 12:02:11 -04:00
Victor Silva
bfff44fc17 Fixing typo and improving docstring of find_domain
This should make it easier to understand the
purpose of find_domain - I believe the reason
for which find_resource wasn't enough was not
quite clear.

Change-Id: I6a1cdfa86f52401d95c6da2cd38d7c95a140b4a1
2014-09-19 19:51:01 +00:00
Jenkins
0ee7073170 Merge "Add service catalog commands" 2014-09-19 02:42:55 +00:00
Dean Troyer
da45b34828 Add service catalog commands
'catalog list' and 'catalog show' for Identity v2

Identity v2 only so far.

Change-Id: I9df0dac3d5bb7c18f38a81bd7d29f8119462d3a5
2014-09-18 15:42:10 -05:00
Jenkins
873ece1cf7 Merge "Return current user/project for user/project show commands" 2014-09-18 09:44:48 +00:00
Jenkins
df69d3264f Merge "Add network extension list" 2014-09-18 09:41:51 +00:00
Jenkins
2306059c8e Merge "Multiple args for object and container commands" 2014-09-18 08:17:14 +00:00
Jenkins
8d37e66cb2 Merge "Add support for 'file' format objects" 2014-09-18 07:26:45 +00:00
Jenkins
cf2eb3c938 Merge "Add preliminary save container support" 2014-09-18 07:26:38 +00:00
Jenkins
0ad4c94b6c Merge "Add preliminary support for downloading objects" 2014-09-18 07:26:27 +00:00
Jenkins
d9a6f7fd3a Merge "Use Keystone client session.Session" 2014-09-17 07:25:28 +00:00
Dean Troyer
845de41635 Return current user/project for user/project show commands
If non-admin user attempts 'project show' or 'user show' on the currently
authenticated project or user return the information that is already in the
service catalog rather than throwing a Forbidden error.

Change-Id: Ieeb6eacf71a471e410fbd3c09e7871740547e890
2014-09-14 22:53:35 -05:00
Steve Martinelli
09a546891f Add support for 'file' format objects
Some objects can be saved as 'dirname/filename' which causes the
existing support to fail. The correct behaviour should be to
create the directories needed.

Change-Id: I71c61bc3b0f76a3e6d2703bd45508f9d6483546e
2014-09-15 01:58:00 +00:00
Steve Martinelli
505c784bad Add preliminary save container support
Save all objects from a container

implements bp: swift-client

Change-Id: I7f2437236574e212033e63d768929d813289ed05
2014-09-15 01:57:54 +00:00
Steve Martinelli
e47787e12f Add preliminary support for downloading objects
Added command and library to download a single object from swift

Change-Id: I3dc47b414ff37b526e6f633aa83ac3aa4b5be0ae
implements: bp swift-client
2014-09-15 01:57:50 +00:00
Jenkins
6977ef8aec Merge "Network use enable/disable vs admin state up/down" 2014-09-08 17:29:37 +00:00
Dean Troyer
ae957b176e Use Keystone client session.Session
This replaces the restapi requests wrapper with the one from Keystone client so
we can take advantage of the auth plugins.

As a first step only the v2 and v3 token and password plugins are supported.
This maintainis no changes to the command options or environment variables.

The next steps will include reworking the other API client interfaces to
fully utilize the single auth session.

Blueprint: ksc-session-auth
Change-Id: I47ec63291e4c3cf36c8061299a4764f60b36ab89
2014-09-08 00:06:52 -05:00
Jenkins
3317e0abf6 Merge "Add action 'user password set' for identiy v3" 2014-09-07 15:12:18 +00:00
Jenkins
dcf658cc4e Merge "Unordered dicts and lists causes variable results" 2014-09-07 12:59:35 +00:00
Jenkins
9b3c84e9e1 Merge "Leverage openstack.common.importutils for import_class" 2014-09-07 10:51:43 +00:00
Mouad Benchchaoui
0069adef5c Add action 'user password set' for identiy v3
This new action will allow a user to change their own password by
either providing the new password as an argument (--password) or by
being prompted to enter the new password.
In both cases user will be prompted to enter their current password
as required by the v3 API.

Closes-Bug: #1337245
Change-Id: I5e1e0fd2b46a4502318da57f7cce2b236fb2d93d
2014-09-07 02:37:54 -04:00
Jenkins
0bc4377b0a Merge "Sync with oslo-incubator and add importutils" 2014-09-07 05:34:07 +00:00
Jenkins
d3502b62d6 Merge "assertEquals order wrong" 2014-09-07 05:14:07 +00:00
Terry Howe
514ecc6e96 Unordered dicts and lists causes variable results
The unordered dict and lists causes variable results.  The user
may see different results and tests can fail.  Might as well make
this more consistent.

Change-Id: I7045b40b44cbf3ee0f2ca79c6ea0d279b6d8cfe3
2014-09-06 23:55:31 -04:00
Aaron Rosen
c43854048c Leverage openstack.common.importutils for import_class
This patch drops the import_utils method from common.utils and leverages
it from openstack.common.importutils instead.

Change-Id: If7e7383aa742afe44f750f916c0d90d747793150
Closes-bug: 1365273
2014-09-06 23:36:59 -04:00
Terry Howe
b725b5017a Multiple args for object and container commands
Have object and container create and delete handle multiple
arguments.

Change-Id: I389358c13ac2d99655ca26e784e3d299286c0af3
2014-09-06 16:23:55 -06:00
Jenkins
dc9ce6d608 Merge "Change app.restapi to app.client_manager.session" 2014-09-06 21:46:40 +00:00
Jenkins
b7816f3997 Merge "add service/interface/region filter for endpoint v3" 2014-09-06 17:02:45 +00:00
Jenkins
34c8bdaf35 Merge "Fix security group list for non-admin" 2014-09-06 17:02:42 +00:00
Jenkins
8cfc8529be Merge "Fix server add security group" 2014-09-06 16:09:30 +00:00
Aaron Rosen
b1663c96e6 Sync with oslo-incubator and add importutils
From oslo-incubator commit:
    c4bfdb94c25b4488da61d77184d97f8784f21a11

Change-Id: I81d1113d113faa609ab7713a0e04667b11786247
2014-09-06 10:21:22 -05:00
Jenkins
bdf9b19abb Merge "Make Identity client load like the others" 2014-09-06 13:26:40 +00:00
Terry Howe
dc68d3f5cf assertEquals order wrong
Change-Id: I822b6ac5b8e8c3009d1ee2d647376eff84559c11
Partial-Bug: #1277104
2014-09-04 14:47:28 +00:00
Dean Troyer
1ab38679b6 Make Identity client load like the others
This does a couple of things:
* Loads the Identity client module in the same manner as the other
  'base' clients (where 'base' == 'included in the OSC repo')
* Changes the entry point group name for the base clients to
  'openstack.cli.base'.  The extension group name remains the same.
* Loads the base modules first followed by the extension modules.
  This load order ensures that the extension module commands are all
  loaded _after_ the base commands, allowing extensions to now override
  the base commands.

Change-Id: I4b9ca7f1df6eb8bbe8e3f663f3065c2ed80ce20b
2014-08-28 08:29:32 -05:00
Dean Troyer
22c544a822 Fix server add security group
The group resource was being passed when only the name is needed.

Change-Id: Ia303804be4e336f9880205d931467cb831e812de
2014-08-27 17:35:30 -05:00
Dean Troyer
e19216e282 Fix security group list for non-admin
Non-admin users couldn't list security groups due to the project lookup
failure.  That shouldn't stop the listing.

Change-Id: I27f6ff4975b35d1de1c852c8d4e830b83c7dec75
2014-08-27 17:19:53 -05:00
Dean Troyer
4bbd03210f Change app.restapi to app.client_manager.session
This is step 1 toward using Keystone client's session.Session as the
primary session/requests interface in OSC.

* Move the session create into ClientManager and rename 'restapi' attribute to 'session'
* Set up ClientManager and session loggers
* Fix container and object command references to restapi/api

Change-Id: I013d81520b336c7a6422cd22c05d1d65655e64f8
2014-08-25 13:38:03 -05:00
Jenkins
1eb7aba2c9 Merge "Add i18n module to openstackclient" 2014-08-24 22:40:38 +00:00
Jenkins
97d1bbdafd Merge "Create message variables for exceptions" 2014-08-24 20:20:08 +00:00