53 Commits

Author SHA1 Message Date
Brandon Palm
f49f0fead2 Fixed a bunch of spacing
Nothing too complicated here.  I fixed a bunch of spacing issues
that I saw in OSC.

Change-Id: I935ab48e7c5bac5f88ecdb3a05f73fb44fc9f41d
2016-02-23 10:38:58 -06:00
Tang Chen
35833f7bd8 Fix DisplayCommandBase comments for cliff ShowOne subclass tests
As bug #1477199 describes, the wrong comment below is all over the
unit test code of OSC.

    # DisplayCommandBase.take_action() returns two tuples

There is no such class named DisplayCommandBase in OSC. It is in cliff.

All OSC command classes inherit from the base classes in cliff,
class Command, class Lister and class ShowOne. It is like this:

Object
|--> Command
     |--> DisplayCommandBase
          |--> Lister
          |--> ShowOne

take_action() is an abstract method of class Command, and generally is
overwritten by subclasses.
* Command.take_action() returns nothing.
* Lister.take_action() returns a tuple which contains a tuple of columns
  and a generator used to generate the data.
* ShowOne.take_action() returns an iterator which contains a tuple of
  columns and a tuple of data.

So, this problem should be fixed in 3 steps:
1. Remove all DisplayCommandBase comments for tests of classes inheriting
   from class Command in cliff as it returns nothing.
2. Fix all DisplayCommandBase comments for tests of classes inheriting
   from class Lister in cliff. Lister.take_action() returns a tuple and
   a generator.
3. Fix all DisplayCommandBase comments for tests of classes inheriting
   from class ShowOne in cliff. ShowOne.take_action() returns two tuples.

This patch finishes step 3 in all but identity tests. There are too many
such comments in identity tests. So fix them all in another patch.

Change-Id: I1afe4852069d25d562a9448ec2bf2cff58955052
Partial-bug: #1477199
2016-02-10 13:31:38 +08:00
Tang Chen
e69b88ef52 Fix DisplayCommandBase comments for cliff Lister subclass tests
As bug #1477199 describes, the wrong comment below is all over the
unit test code of OSC.

    # DisplayCommandBase.take_action() returns two tuples

There is no such class named DisplayCommandBase in OSC. It is in cliff.

All OSC command classes inherit from the base classes in cliff,
class Command, class Lister and class ShowOne. It is like this:

Object
|--> Command
     |--> DisplayCommandBase
          |--> Lister
          |--> ShowOne

take_action() is an abstract method of class Command, and generally is
overwritten by subclasses.
* Command.take_action() returns nothing.
* Lister.take_action() returns a tuple which contains a tuple of columns
  and a generator used to generate the data.
* ShowOne.take_action() returns an iterator which contains a tuple of
  columns and a tuple of data.

So, this problem should be fixed in 3 steps:
1. Remove all DisplayCommandBase comments for tests of classes inheriting
   from class Command in cliff as it returns nothing.
2. Fix all DisplayCommandBase comments for tests of classes inheriting
   from class Lister in cliff. Lister.take_action() returns a tuple and
   a generator.
3. Fix all DisplayCommandBase comments for tests of classes inheriting
   from class ShowOne in cliff. ShowOne.take_action() returns two tuples.

This patch finishes step 2 in all but identity tests. There are too many
such comments in identity tests. So fix them all in another patch.

Change-Id: I00f38d12f55abe20fa708f6349073da658622f8d
Partial-bug: #1477199
2016-02-09 20:28:18 +08:00
Tang Chen
43f80505cb Fix DisplayCommandBase comments for cliff Command subclass tests
As bug #1477199 describes, the wrong comment below is all over the
unit test code of OSC.

    # DisplayCommandBase.take_action() returns two tuples

There is no such class named DisplayCommandBase in OSC. It is in cliff.

All OSC command classes inherit from the base classes in cliff,
class Command, class Lister and class ShowOne. It is like this:

Object
|--> Command
     |--> DisplayCommandBase
          |--> Lister
          |--> ShowOne

take_action() is an abstract method of class Command, and generally is
overwritten by subclasses.
* Command.take_action() returns nothing.
* Lister.take_action() returns a tuple which contains a tuple of columns
  and a generator used to generate the data.
* ShowOne.take_action() returns an iterator which contains a tuple of
  columns and a tuple of data.

So, this problem should be fixed in 3 steps:
1. Remove all DisplayCommandBase comments for tests of classes inheriting
   from class Command in cliff as it returns nothing.
2. Fix all DisplayCommandBase comments for tests of classes inheriting
   from class Lister in cliff. Lister.take_action() returns a tuple and
   a generator.
3. Fix all DisplayCommandBase comments for tests of classes inheriting
   from class ShowOne in cliff. ShowOne.take_action() returns two tuples.

This patch finishes step 1 in all but identity tests. There are too many
such comments in identity tests. So fix them all in another patch.

Change-Id: I9849baa8141ea8af2042a69afd540b77ce6ae6bd
Partial-bug: #1477199
2016-02-09 18:27:48 +08:00
Tang Chen
499369329c Add --marker option to "image list" command
Users could specify the last image (name or ID) of the previous page with
--marker option to control the start image of the output.

Change-Id: Idca0235ee83b1226b00c89cf3d38500fa898b7d0
Closes-Bug: #1540988
2016-02-03 14:04:50 +08:00
xiexs
5812803865 Add limit option to "image list" command
This option is quite useful if there are too many images.

Change-Id: If6a901c27c5da2d1f4412e8fa9ba3bed3b72fdd9
Co-Authored-By: Tang Chen <chen.tang@easystack.cn>
Partial-Bug: #1540988
2016-02-03 13:42:57 +08:00
Tang Chen
0b6fdcbe4c Remove marker and loop from "image list" command
Since --page-size has never worked, there is no paginate logic needs
to be implemented in "image list" command. So remove the unnecessary
loop.

And also, the marker is not necessary because --marker option has not
been implemented. Will add it back when implementing --marker option.

Change-Id: I71fea1502f92f447a49697edb52e8e82f336772f
Partial-Bug: #1540988
2016-02-03 13:42:49 +08:00
Tang Chen
f36177ebdd Trivial: Fix wrong comment in test_image.py
Code in test_image.py has nothing to do with server.

Change-Id: Ia73d7b99effb394c5db9635fee6da350b0b1086b
2016-02-02 15:22:40 +08:00
SaiKiran
69b8cde5f1 Refactor abstract columns and datalist out in image and object
test cases

columns and datalist has been set in each test case in image
and object which is not necessary. This patch abstract it out
and remove all redundant code.

Change-Id: Ie6aa3fa27ab2a468c67da31209107517259631c2
Related-Bug: 1532384
2016-01-23 11:44:15 +05:30
Dean Troyer
cf2de9af79 Change --owner to --project in image commands
* image create and image set now use --project to specify an alternate
  project to own the image
* --owner is still silently accepted but deprecated, add warning messages
* --project and --owner are mutually exclusive to prevent precedence issues

Closes Bug: 1527833
Change-Id: Iccb1a1d9175ef9b5edcd79d294607db12641c1f0
2016-01-15 09:24:48 -06:00
xiexs
0a444fc949 Add owner validation for "openstack image create/set"
Owner validation is necessary if a new image owner
will be created/set.

Change-Id: I621774e02866bfa98a31b613deff5d7b6a962737
Closes-Bug: #1517134
2015-12-21 11:17:42 -06:00
Jenkins
b611045639 Merge "Refactor TestImageCreate with FakeImage class" 2015-12-19 06:59:44 +00:00
Jenkins
31b5a22db8 Merge "Add image re/deactivate commands" 2015-12-18 21:40:04 +00:00
NiallBunting
b3943d7142 Add image re/deactivate commands
This change allows admins to deactivate and reactivate their
images. Currently this has to be done with the REST api or the
glanceclient.

This change introduces `--deactivate` and `--activate` for the `image
set` command.

This requires glanceclient 1.2.0. Which got bumped here:
https://review.openstack.org/#/c/257512/

Change-Id: I476c44a0343cdc92d58ddc93fb06470242de2345
Depends-On: I2c370c6bf6ff664d94d756cc76aaa983fbdb8869
Closes-Bug: 1516661
2015-12-16 14:25:41 +00:00
xiexs
556397aae7 Refactor TestImageCreate with FakeImage class
Change-Id: I0044df36bb4d761c7998dfc8aa9a86d21d81da83
Implements: blueprint improve-image-unittest-framework
2015-12-16 09:25:42 +08:00
xiexs
50e52f355f Add multi deletion testcase for "openstack image delete"
Change-Id: I5442128a290a9ad3b9ff9919431a1ecc0c697dad
Implements: blueprint improve-image-unittest-framework
2015-12-09 17:58:11 +08:00
xiexs
d377756a62 Refactor TestImageDelete with FakeImage
Change-Id: I052a0220ca5d974824fc46ad403234e65e8173aa
Implements: blueprint improve-image-unittest-framework
2015-12-09 17:55:39 +08:00
xiexs
3f7c01cae5 Introduce FakeImage class
Introduce FakeImage to improve the current image unittest framework
with following two advantages:
1. generate more than one faking images
2. all faking images generated by random

Change-Id: Ide326fa2a047ddeea478bef97000083617a0b744
Implements: blueprint improve-image-unittest-framework
2015-12-02 10:17:51 +08:00
xiexs
342fd158e9 Add status column for "openstack image list"
Actually, the status column is useful for the user.
So, it`s better to output this info by default (or, user had
to specify the extra option, i.e. --long).

Change-Id: Id2a9f86f0de5310f8f5ff9a46bf1b7411094b519
Closes-Bug: #1519181
2015-11-29 20:37:40 -05:00
Jenkins
62b5865dce Merge "Add --owner to image create" 2015-11-12 00:03:14 +00:00
NiallBunting
5ad59968ac Add --owner to image create
This adds --owner to `image create`. This is backwards compatable with v1.

Change-Id: I9e79cf880c91a1386419db729818d23dfe632179
Depends-On: I8d572a070bbb04dccdd051b8e0ad199c5754746e
2015-11-06 10:43:08 +00:00
lin-hua-cheng
12668b3dab Fix issue when displaying image_member
image_member doesn't have a _info attribute, glanceclient returns
warlock object instead of a Resource object.

Change-Id: If6e7c4bd404454bd6cbe8c111879c1afa1380211
Closes-Bug: #1509054
2015-10-23 00:15:19 -07:00
Steve Martinelli
2bd82ab892 image set should not show the resource
the rest of OSC set commands do not show the resource after it has
been updated. unless the update fails then we report back a failure,
otherwise the user should assume everything went fine.

Change-Id: I2bd4188450c3853b4a1bc25f80fc9450cda32bdd
2015-10-06 20:14:54 +00:00
NiallBunting
1afb574533 Add tags to image set
This adds --tag to the v2 version of `image set`. This
is another step to compatability between the osc image api.

Added merge of tags into existing tags and handling duplicates,
and tests for same.

Co-Authored-By: Steve Martinelli <stevemar@ca.ibm.com>

Change-Id: Ie800fcbf8bbc0978c54ace3278750a18023e8ce4
2015-10-06 20:14:34 +00:00
Dean Troyer
201b1cee86 Clean up Image v2 image set command
Make the Image v2 image set command meet at the intersection of the v1
image set command and the v2 image create command:

* Add visibility to the deadopts list and remove the option
* Put the options in the same order as v1 image set
* Make the help text match
* Add --properties
* Move the additional options that do not appear in either v1 image set or
  v2 image create after --property as they are really pre-defined properties
* Add tests for v2 image set to match v1 and then some
* Put the SetImage class in v2/image.py in alphabetical order

Change-Id: I102b914e8ad09a014f6fdd846c5766b6c2eaadb8
2015-10-06 11:11:59 -07:00
Jenkins
c71c78df92 Merge "Glance image set Resolve Fracturing" 2015-09-23 12:28:02 +00:00
NiallBunting
8faabb3bba Glance image set Resolve Fracturing
Currently `image set` uses the new api, where other parts of osc the old
api is used. This deprecates the v2 api in favour of the v1 to maintain
the same commands across osc. However the functionality now remains
there as people could now be using this functionality.

This also adds the --unprotected argument, as in the previous version if
--protected was not supplied it would just make the argument
--unprotected without the users explicit consent.

The patch also fixes the documentation for image set as it was outdated.

Change-Id: I990d20332c80165102badef7ac94ddbeb7824950
Closes-Bug: 1498092
2015-09-23 00:31:41 -04:00
Monty Taylor
f5b50df8ea Add image create support for image v2
We have it for v1, but v2 is the future. There are two differences,
things in v2 do not go into a properties dict, and the actual image
data needs to get uploaded as a second step.

Closes-Bug: 1405562
Co-Authored-By: Niall Bunting <niall.bunting@hp.com>
Co-Authored-By: Sean Perry <sean.perry@hp.com>
Change-Id: If7b81c4a6746c8a1eb0302c96e045fb0f457d67b
2015-09-21 14:51:03 -04:00
chengkunye
7bb459837b add image member commands for image API
This commit adds the following commands:
    image project add
    image project remove

Closes-Bug: 1402420
Change-Id: I07954e9fa43a3ad6078dd939ecedf9f038299e7b
2015-07-20 10:38:42 -07:00
Jenkins
d80deaba41 Merge "Move update code from image create command" 2015-07-02 14:08:05 +00:00
Marek Aufart
bd589778c2 Move update code from image create command
Openstack image create command updates existing image (with same name) by
default. That might be confusing since glance allows create multiple
images with same names and may lead to unwanted image update by image
create command.

Image update code was moved from image create action to image set action.

BackwardsIncompatibleImpact

Change-Id: I1686c6544c366262efab9e33c066d5f8a667f707
Closes-Bug: #1461817
2015-07-02 11:02:17 +02:00
TerryHowe
ce65164155 Add functional tests for image set
This patch includes functional tests for image set and it includes
a change to use the OSC utils.format_dict method to format the
properties.  This will give a more user friendly format to the image
commands and it gives a more consistent testable format to the
output.  Instead of:

{u'a': u'b', u'c': u'd'}

The user will see:

a=b, c=d

Change-Id: Ib396316586ffc5dbab231064d5b6dc9425507934
2015-06-16 12:34:00 +00:00
Amey Bhide
ce05822a3a Add support for v2 image set command
Partial-Bug: #1405562
Change-Id: Ie30802d720a247748c45099c38450cc6c76bbc2a
2015-05-27 11:49:06 -07:00
Amey Bhide
ba21d463de Add missing properties to image set command
Enable user to update the following image properties from OSC:
container-format, disk-format, size

Closes-Bug: #1446362
Change-Id: Id9f40f15702e8f14f0327a37fcc7d7971338c258
2015-05-25 22:49:55 -07:00
Dean Troyer
47791a1639 Add image show tests
Image v2 uses warlock objects rather than the usua Resource objects
so we need to test for those.  This adds a subset of the Image v2
schema that should be enough to test for proper warlock image handling.

Depends-On: Ic95db2f63d9f5f37e29f0d7e048397da311fbf8c
Change-Id: Ib89cce87f110a554f40e726718e31d39b500a6ae
2015-05-01 11:12:35 -05:00
TerryHowe
3c7b5185ca Handle the pagination for image list
Handle the paginatiion for image list.  We were sorting the
data here, so nothing lost for the generator.

Change-Id: I2d7d4b3d5c9f650953f309c971ac53b64f6f7f77
2015-04-20 11:23:15 -06:00
zhiyuan_cai
42cff38834 Add sort support to image list
Add sort support to image list by sorting items in the client side.
The parameter syntax follows this spec[1].

[1] https://review.openstack.org/#/c/145544/

Change-Id: I42b487d18f00f937db1938daa46487cea2a896ab
Closes-Bug: #1410251
2015-02-06 10:57:10 +08:00
Dean Troyer
61a40343fd Add filter to image list
* Hides previously broken --page-size option
* Adds --property to image list for filtering on properties
* Adds Visibility, Protected, Owner, Properties/Tags to --long output
* Adds api.utils.simple_filter() for selecting matches out of a list
  of objects
* Adds tests for all of the above
* Updates image docs

There are additional filtering options to be added in later reviews.

Change-Id: I32feff0ad61aae749b33621c817658d7dc90c3aa
Closes-bug: 1401902
2015-01-27 19:17:35 -06:00
wanghong
127af151ff fix the wrong order of assertEqual args
Let's fix them thoroughly.

Change-Id: I8a1f042fb614b05c9836a49041f3883638b870b0
2015-01-27 17:02:41 +08:00
Dean Troyer
1ecf1bee2d Begin low-level API for Image v1 and v2
image list for v1 and v2:
* Add --public|--private to command parsers
* Implement local public/private filtering for v1 image_list()
* Pass public/private filter to server for v2 image_list()

Change-Id: Ie7c24ea2d1bf2b3b1b7fa342eb45fee45894634d
2015-01-20 17:01:23 -06:00
wanghong
470b7e53a8 add multi-delete support for compute/image/net/volume
This is part1, add support for these objects:
compute.server
imagev1.image
imagev2.image
network.network
volume.volume
volume.backup
volume.snapshot

Closes-Bug: #1400597
Change-Id: Ice21fee85203a8a55417e0ead8b509b8fd6705c1
2014-12-23 09:31:10 +08:00
Dean Troyer
936722d59f Add arg to 'server image create' tests
The 'protected' column was not being checked.  Also add it to
image.fakes.IMAGE.

Change-Id: Ie431e9871a7da78b5a3924bfbc51d5575d994d86
2014-11-14 16:13:01 -06:00
Dean Troyer
ca783f4659 Close files on image create
The file opened for --file was never closed.  Close it if it is a
file object.

Change-Id: I7bd120a2413de42339771d01e8fd1894d38c3011
2014-10-14 15:37:23 -05:00
Jenkins
7b70143695 Merge "Add more columns to image list output" 2014-07-26 22:20:19 +00:00
Steve Martinelli
6e1fa8b27d Change V2 image tests to actually run V2 image code
The current tests for image do not run v2 image code, changing
that portion also made it's only test fail.
I opted to change the image delete code and not the test, since
passing the object ID is more in line with the rest of the
project code.

Change-Id: I62e13c063a5d68279dbbf31e59266db6285d73bf
2014-07-25 01:16:01 -04:00
Steve Martinelli
e1c32b8224 Add more columns to image list output
Add disk_format, container_format, size and status to image list
command. Added tests as well.

Change-Id: I8e3822c6d46d0020fc706955c026549f6c635587
Closes-Bug: #1348475
2014-07-25 01:09:59 -04:00
Cyril Roelandt
169587ddbd Python 3: do not use __builtin__
Use six.moves.builtins instead, this works with both Python 2 and 3.

Change-Id: I57e7257d4f06c805f26383e0778ad104d50ea139
2014-07-03 00:27:35 +02:00
Dean Troyer
6380b8b959 Image create and set command updates and tests
Refactor image create and set commands to properly handle properties.
This is particularly tricky with exclusive booleans as in this case leaving
both choices off the command line should NOT assume a default value but
leave the existing value unchanged.

Properties were not being updated correctly in the 'image set' command.
Refactor it to use the same pattern as in other SetXxx commands.
Add tests for arg handling.

Change-Id: I123a64c9b4feecab25a3e2013cc047f55b1c9967
2014-06-16 23:30:46 -04:00
Terry Howe
e6e0dbf754 Add --volume option to image create command
Add ability to create an image from a volume.
* Added --volume command to image create
* Added --force option to image create
* Added block to access volume manager in image create
* Tests added for the volume option

Change-Id: I3910a2b5e04acd0d15dd230747ba6ebca07aa316
Closes-Bug: #1207615
2014-03-05 11:26:13 -07:00
Alexander Ignatov
ad4367839f Remove copyright from empty files
According to policy change in HACKING:
http://docs.openstack.org/developer/hacking/#openstack-licensing
empty files should no longer contain copyright notices.

Change-Id: Iba09a00f24dfbd1cd03c1c9f70ea216788e64d93
Closes-Bug: #1262424
2014-01-20 17:28:13 +04:00