summaryrefslogtreecommitdiff
path: root/openstackclient/identity/v3/project.py
Commit message (Collapse)AuthorAgeFilesLines
* Merge "Add parent project filter for listing projects" into stable/trainZuul2022-07-051-0/+10
|\
| * Add parent project filter for listing projectsTakashi Kajinami2020-03-041-0/+10
| | | | | | | | | | | | | | | | | | | | This patch introduces a new option --parent into project list, to specify a parent project to filter projects which has the given project as their parent. Depends-on: https://review.opendev.org/#/c/677101 Change-Id: I6725262cf040e0ec6ceca9cf0462ce59224049c6 (cherry picked from commit 7c1b6a799e0ac6fea511a2cf1e97aebb2f94e0d6)
* | Client should parse string to boolean for value 'is_domain'4.0.1yanpuqing2020-06-101-0/+8
|/ | | | | | | | | | | | | | | | | | | | | | | | | | | When we use "--property" parameter, client get lists these the value is string type, but the type of the value 'is_domain' should be boolean, so we should judge it and parse it. The patch parse string to boolean for value 'is_domain'. Co-Authored-By: Lance Bragstad <lbragstad@gmail.com> Conflict: Direct backports of this patch fail because the original tests proposed to the Victoria (master) branch included keystone ``options``. Support for ``options`` was added in: I9c3bdd741f28bf558267fb217818d947597ce13e This backport removes the ``options`` key from the expected values in the tests since feature support for ``options`` isn't going to be backported. Otherwise, the functionality of this change is fully tested like it is on later releases. Change-Id: I37c9eb854524bde3a1530bfe2e3a03810fb1a676 Task: 30039 Story: 2005246 (cherry picked from commit 533af9f1b2de40d98f69e83cdf89ecf254cf3879) (cherry picked from commit 19723aee18e2901e9250dd840a61359704baa170)
* Add project tags functionalityGage Hugo2018-02-231-1/+8
| | | | | | | | | This change adds tags functionality for projects in keystone. A user can add a single tag with "--tag", chain "--tag" to add multiple tags, or clear tags with "--no-tag". Change-Id: I31cfef3e76dcefe299dacb00c11bb1a10a252628 Partially-Implements: bp project-tags
* Merge "Use *_as_ids instead *_as_list"Jenkins2017-07-261-9/+2
|\
| * Use *_as_ids instead *_as_listRodrigo Duarte Sousa2017-03-011-9/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The parents_as_list and subtree_as_list query parameters limit the result to only parents and subtree where the user making the call has role assignments in. Since OSC only displays the IDs, the call would be the same as the similar *_as_ids queries, the difference is that the later doesn't enforce the role assignments (making it more useful). Output example by using this patch: $ openstack project show --children root +-------------+------------------------------+ | Field | Value | +-------------+------------------------------+ | description | | | domain_id | default | | enabled | True | | id | 123 | | is_domain | False | | name | root | | parent_id | default | | subtree | {u'456': None, u'789': None} | +-------------+------------------------------+ Change-Id: Ib7b37ae8f55190a7efcc375d5be4a2823d02d1a4
* | Fix 'domain' filter not work well in some commandsjiangpch2017-07-181-1/+2
| | | | | | | | | | | | | | | | | | The 'domain' filter not work well in commands 'project show', 'user show' and 'user set'. Depends-On: I490900d6249f01654d4cba43bddd3e7af7928a84 Closes-Bug: #1704097 Change-Id: Ib4f47cbaba27eb56c4a41d187fee74a995e62dc7
* | Non-Admin can't list own projectsadrian-turjak2017-03-201-1/+23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Due to a default Keystone policy until Newtown, and the use of resource_find, non-admins are unable to list their own projects. This patch bypasses this problem while also introducing better UX for non-admins wishing to get their project list. 'openstack project list' retains the default of 'list all projects' but on a forbidden error will default instead to 'list my projects'. This way for non-admins 'list my projects' feels like the default without breaking the expected admin default. Adding the '--my-projects' option allows admins to easily list their own projects or allows non-admins to be explicit and bypass the forbidden error fallback. Change-Id: I1021276f69fbbf28e13e17c4e567d932fce7ed8b Closes-Bug: #1627555
* | Merge "Add sort support to project list"Jenkins2017-03-161-0/+9
|\ \ | |/ |/|
| * Add sort support to project listTom Jose Kalapura2017-03-081-0/+9
| | | | | | | | | | | | | | | | Add sort support to project list by sorting items in the client side. By default list will be sorted by name. Change-Id: I00011406846b4003aff075eeeb88ac18fa5e2820 Closes-Bug: #1596818
* | Fix --parents and --children options in project showRui Chen2017-02-091-4/+9
| | | | | | | | | | | | | | | | Options "--parents" and "--children" don't work in "project show" command, fix the issue and add related unit and functional tests. Change-Id: Id9965267a037442f1077f8e1929d0527981f643d Closes-Bug: #1499657
* | Error handling for delete commands in identityHuanxuan Ao2017-01-031-8/+22
| | | | | | | | | | | | | | | | | | Add missing multi deletion error handling for identity delete commands. All delete commands in identity support error handling now. Change-Id: I05626dcb5e516a423d610906347b02236ba7eeaf
* | translate all command help strings3.4.0Steve Martinelli2016-11-171-5/+5
|/ | | | | | | | | | | | | | Leverage the new cliff command class attribute (_description) to get the help of a command, this allows us to mark strings for translation. We could not do this before since the help was grabbed from the docstring. This also depends on a new release of cliff and a bump to the minimum level in osc's requirements. Closes-Bug: 1636209 Depends-On: Id915f6aa7d95a0ff3dc6e2ceaac5decb3f3bf0da Change-Id: I8673080bb5625e8e3c499feaefd42dfc7121e96f
* Remove execute permission on a few filesSongmingYan2016-07-221-0/+0
| | | | | | | Some files have execute permission unnecessarily. Change them from 755 to 644. Change-Id: I471ebd1c3d123ad4a7376f7f5996f53f8c2d9b0b
* Make set/unset commands pass normally when nothing specified in identityv3Huanxuan Ao2016-07-141-7/+0
| | | | | Change-Id: I554b41969f96b62a2c6d37024caa56b1441d5ed1 Partial-bug: #1588588
* Correct reraising of exceptionqinchunhua2016-07-071-2/+2
| | | | | | | | | When an exception was caught and rethrown, it should call 'raise' without any arguments because it shows the place where an exception occured initially instead of place where the exception re-raised. Change-Id: I5fb6dea5da7fb6e1e2b339a713c7d37f8c99e407
* Use resource id when name given for identity showDavid Rosales2016-06-221-2/+5
| | | | | | | | | | | | | | | Currently a user is allowed to specify either a resource ID or name when running openstack identity comands. In some cases, when a name is specified instead of an ID, the command will return as not able to find the resource when it in fact does exist. The changes here are to check the client against the token on such requests and to extract the ID of the resource specified if enough information exists between the two. We then use the ID associated with the resource to complete the user requests. Change-Id: I40713b0ded42063b786dc21247e854224b9d2fe2 Closes-Bug: #1561599
* Standardize logger usageTang Chen2016-06-201-1/+6
| | | | | | | | | | | | | | | | | | | Use file logger for all command specific logs. This patch also fixes some usage that doesn't follow rules in: http://docs.openstack.org/developer/oslo.i18n/guidelines.html After this patch, all self.log and self.app.log will be standardized to LOG(). NOTE: In shell.py, we got the log in class OpenStackShell, which is also known as self.app.log in other classes. This logger is used to record non-command-specific logs. So we leave it as-is. Change-Id: I114f73ee6c7e84593d71e724bc1ad00d343c1896 Implements: blueprint log-usage
* osc-lib: commandDean Troyer2016-06-131-1/+1
| | | | | | | Leave command.py and test_command.py as a sanity check during the deprecation period. Change-Id: I24e1b755cbfbcbcaeb5273ec0c9706b82384fc85
* osc-lib: parseractionsDean Troyer2016-06-131-1/+1
| | | | | | | Leave parseractions.py and test_parseractions.py as a sanity check during the deprecation period. Change-Id: I1a7469b6d872284e0276502a1a287bc0b87f8f83
* osc-lib: utilsDean Troyer2016-06-131-3/+2
| | | | | | | | Use osc-lib directly for utils. Leave openstackclient.common.utils for deprecation period. Change-Id: I5bd9579abc4e07f45219ccd0565626e6667472f7
* Fix i18n support problems in identityTang Chen2016-06-071-26/+26
| | | | | Change-Id: I3b48d17850343051239b5b69e8b890dba32d3ac8 Partial-bug: #1574965
* remove #noqa from i18n importsSteve Martinelli2016-05-131-1/+1
| | | | | | hacking checks no longer fail on `import _` Change-Id: Idd60f0a0e71e5081691eacb39e5091ab08fcce6d
* take_action() method from command.Command shouldn't returnMohan Muppidi2016-02-291-4/+2
| | | | | | | | | | | | command.Command and command.Showone are base classes implemented in cliff framework. Showone extends Command to allow take_action() to return data to be formatted using a user-selectable formatter. Most of the classes which are extended from Command in openstackclient/identity/v3/ in some cases return data or return nothing where it is not necessary, this commit fixes most of them. Change-Id: I84c72ea4d6680f8bdbef5449316dd9a8af8c8286 Closes-Bug: 1550892
* log take_action parameters in a single placeAkihiro Motoki2016-02-021-22/+4
| | | | | | | | | | | | Previously each command logs take_action parameters explicitly by using @utils.log_method decorator or log.debug(). Some commands have no logging. This commit calls a logger in the base class and drops all logging definition from individual commands. Closes-Bug: #1532294 Change-Id: I43cd0290a4353c68c075bade9571c940733da1be
* Enabling domain lookup for project set v3 commandJude Job2015-12-311-6/+2
| | | | | | | | | | | | | | Currently the domain option for `project set` attempts to set a new domain that owns the project. This is actually an action that is denied by keystone server. Instead, the domain option should be used as a lookup, to find projects that exist in the non-default domain. Co-Authored-By: Steve Martinelli <stevemar@ca.ibm.com> Closes-Bug: #1524456 Change-Id: I30a3812184fe262667e09baa106d2275c2cbb981
* Switch to ksa SessionDean Troyer2015-12-021-2/+2
| | | | | | | | * Change session imports to keystoneauth1 * Change keystoneclient.exception imports to keystoneauth1 * Change exceptions raised from internal API from keystoneclient to openstack.common Change-Id: I046d89f561d6fe04baae53726f9749d2e7fe2056
* Use a common decorator to log 'take_action' activationJoshua Harlow2015-09-011-5/+5
| | | | | | | | | Instead of duplicating the same log statement throughout the code, the same logic can be provided by a shared decorator that abstracts away the logging capability and unifies it behind a common function instead. Change-Id: Icc63bced7347c8bbf0299a4c5821425a10892a79
* Enables retrieval of project's parents and subtreeRodrigo Duarte Sousa2015-06-091-7/+30
| | | | | | | | | | | | Adds the possibility to retrieve a project and list its parents and subtree in the hierarchy. Co-Authored-By: Rodrigo Duarte <rodrigods@lsd.ufcg.edu.br> Co-Authored-By: Samuel de Medeiros Queiroz <samuel@lsd.ufcg.edu.br> Implements: bp hierarchical-multitenancy Change-Id: I874f6faffc8a2db9d99f12cbe0a69c0a30c0d9df
* add --domain argument to v3 project setGuojian Shao2015-05-291-0/+8
| | | | | | | | | Currently argument 'domain' is not supported by command 'os project set', but it is required by keystone v3 update project API to match the domain id. Closes-Bug: #1460122 Change-Id: I1b32f67f78b369f6134a74cdf9a4811b7539d44b
* Merge "Add parent field to project creation"Jenkins2015-04-301-2/+13
|\
| * Add parent field to project creationRodrigo Duarte2015-03-231-2/+13
| | | | | | | | | | | | | | | | | | | | Adding the possibility to create projects hierarchies by adding the parent field in the create project call. Co-Authored-By: Victor Silva <victor@lsd.ufcg.edu.br> Implements: bp hierarchical-multitenancy Change-Id: I4eac4f5bc067634cc38c305dacc59ab1da63c153
* | remove unnecessary conditionalsSteve Martinelli2015-04-191-2/+1
|/ | | | | | | | In several places we had else branches where a reasonable default would do the job. This makes the code a mean cleaer and easier to read. Change-Id: I231e09aab85fd32b8300bc33c48d0899b728b96e
* Do not allow user to change domain of a projectSteve Martinelli2015-02-091-9/+0
| | | | | | | | | Keystone Server already surfaces an error for this operation, but we should restrict the user, and not offer --domain to be changed for a project. Change-Id: I48317e8accfea3c285e6ad213e75b783de8070ac Closes-Bug: #1418384
* Fine tune some of the helps commandsSteve Martinelli2015-01-131-2/+2
| | | | | | | | | try and add some consistency with the show and delete commands. replace 'show x' with 'display x' change 'delete a y' with just 'delete y' Change-Id: I47dfa8ee23ac5c41b355796415eb515155832f65
* add multi-delete support for identitywanghong2014-12-231-11/+14
| | | | | | | | | | | | | | This is part2. Add support for these objects: identity.project(v2.0) identity.role(v2.0) identity.user(v2.0) identity.project(v3) identity.role(v3) identity.user(v3) identity.group(v3) Closes-Bug: #1400597 Change-Id: I270434d657cf4ddc23c3aba2c704d6ef184b0dbc
* Don't import form keystoneclient.openstack.commonJamie Lennox2014-12-171-1/+1
| | | | | | | | The keystoneclient.openstack.common directory is where we sync files from oslo incubator. It is not a public directory and should not be being consumed by openstackclient. Change-Id: I011bb95c2c824e2dbc4b822ca922ae77b8d9b955
* Safely pop project parent idSteve Martinelli2014-12-041-0/+4
| | | | | | | | | Since we don't support multitenancy yet, we should just pop the parent id of a project. When keystoneclient supports mulittenancy we should bring everything in at once (CRUD), and these changes should be removed. Change-Id: I82c7c825502124a24ccdbadf09ecb2748887ca5d
* Add the ability to list projects based on a userSteve Martinelli2014-12-011-2/+22
| | | | | | | Essentially performing GET /users/{user_id}/projects Change-Id: Iae6ddfc86a856fa24fbe293ec4af52ea671390f8 Closes-Bug: #1394793
* Add support for domains when deleting identity v3 resourcesSteve Martinelli2014-12-011-4/+13
| | | | | | | | | | Currently, only deleting via IDs is possible for groups, projects and users. We should have an optional --domain argument that allows for a name to be specified for the resource. (Since these are all namespaced by domains). Change-Id: I18ace3db85a3969f0b97678d432d6f8368baa9cd
* Command object docs: project, role, userDean Troyer2014-12-011-19/+19
| | | | | | | | | project role user user role Change-Id: I445e09a3ffb69114912ae562a9285963a636bfd1
* Add --or-show support for v3 identity resourcesSteve Martinelli2014-11-181-7/+23
| | | | | | | | | | | | Add --or-show for the following: * v3 roles * v3 projects * v3 domains * v3 users * v3 groups Closes-Bug: #1390389 Change-Id: Id4ef043e5fda6be49a515eb3fe138c813c393ec9
* Remove 'links' section from several v3 Identity objectsSteve Martinelli2014-10-111-11/+4
| | | | | | | | | | | | | | | The links field in the returned objects from the v3 Identity API aren't really useful, so let's remove them. Managed to remove most of them from the core API. I'll likely remove the extension/contribution (oauth/federation) related ones in another patch. Also in this patch the code for setting services and projects was changed. Though not incorrect, it was not needed to copy the entire returned object, we should just need to pass in the fields we want to update. Change-Id: I164ca9ad8b28fa10b291e9115ef40753e387c547
* Allow --domain to be used for identity commands without lookupNathan Kinder2014-10-091-6/+7
| | | | | | | | | | | | | | | | | Performing create, list, or set operations for users, groups, and projects with the --domain option attempts to look up the domain for name to ID conversion. In the case of an environment using Keystone domains, it is desired to allow a domain admin to perform these operations for objects in their domain without allowing them to list or show domains. The current behavior prevents the domain admin from performing these operations since they will be forbidden to perform the underlying list_domains operation. This patch makes the domain lookup error a soft failure, and falls back to using the passed in domain argument directly as a domain ID in the request that it sends to Keystone. Change-Id: I5139097f8cedc53693f6f71297518917ac72e50a Closes-Bug: #1378565
* Add domain parameters to user show for Identity V3Steve Martinelli2014-10-091-6/+17
| | | | | | | | | | | Update `user show` for Identity V3 to account for a domain argument, in doing so, also update `find resource` to be more flexible by allowing **kwargs. Also update `group show` and `project show` since they follow the same logic as a user within a group. Change-Id: Ib828e4dbeb0bd31164396069ce8a64c873179779 Closes-Bug: #1378165
* Domain administrator cannot do project operationsTerry Howe2014-07-071-12/+6
| | | | | | | | | | | | | | | Domain administrator cannot do project operations because the require access to the domain API (which they don't have). When attempting to find a domain for project operations, ignore errors because the API returns nothing without indicating there is a problem. The domain administrators will have to use a domain id, but they will still be able to do project operations. If the user does not have permission to read the domain table, they cannot use domain names. Change-Id: Ieed5d420022a407c8296a0bb3569d9469c89d752 Closes-Bug: #1317478 Closes-Bug: #1317485
* Merge "replace string format arguments with function parameters"Jenkins2014-06-101-5/+5
|\
| * replace string format arguments with function parametersChristian Berendt2014-05-201-5/+5
| | | | | | | | | | | | | | | | There are files containing string format arguments inside logging messages. Using logging function parameters should be preferred. Change-Id: Ic749ac9eb55564ed631d57055a5a4dfc3aebd169
* | Fixed several typos throughout the codebaseAlex Gaynor2014-05-211-1/+1
|/ | | | Change-Id: I048ee857fc1215fea7f60978364894e1b5abdf66
* Pass arguments to v3 keystoneclient by kwargJamie Lennox2014-04-041-2/+2
| | | | | | | | | Keystoneclient has added the positional decorator which emits a warning if arguments aren't passed by keyword. This means we are getting warnings in certain places in openstackclient. Change-Id: Ic5446cd6f122cbb56fce543011386d53bc31fe18 Closes-Bug: #1302199