def Run(self, args): service = tags.TagKeysService() messages = tags.TagMessages() if args.RESOURCE_NAME.find('tagKeys/') == 0: tag_key = args.RESOURCE_NAME else: tag_key = tag_utils.GetTagKeyFromNamespacedName( args.RESOURCE_NAME).name get_iam_policy_req = ( messages.CloudresourcemanagerTagKeysGetIamPolicyRequest( resource=tag_key)) policy = service.GetIamPolicy(get_iam_policy_req) condition = iam_util.ValidateAndExtractConditionMutexRole(args) iam_util.AddBindingToIamPolicyWithCondition(messages.Binding, messages.Expr, policy, args.member, args.role, condition) set_iam_policy_request = messages.SetIamPolicyRequest(policy=policy) request = messages.CloudresourcemanagerTagKeysSetIamPolicyRequest( resource=tag_key, setIamPolicyRequest=set_iam_policy_request) result = service.SetIamPolicy(request) iam_util.LogSetIamPolicy(tag_key, 'TagKey') return result
def Run(self, args): service = tags.TagKeysService() messages = tags.TagMessages() tag_parent = args.parent list_request = messages.CloudresourcemanagerTagKeysListRequest( parent=tag_parent) response = service.List(list_request) return response.tagKeys
def Run(self, args): service = tags.TagKeysService() messages = tags.TagMessages() if args.RESOURCE_NAME.find('tagKeys/') == 0: tag_key = args.RESOURCE_NAME else: tag_key = tag_utils.GetTagKeyFromNamespacedName( args.RESOURCE_NAME).name get_request = messages.CloudresourcemanagerTagKeysGetRequest( name=tag_key) return service.Get(get_request)
def Run(self, args): service = tags.TagKeysService() messages = tags.TagMessages() if args.RESOURCE_NAME.find('tagKeys/') == 0: tag_key = args.RESOURCE_NAME else: tag_key = tag_utils.GetTagKeyFromNamespacedName( args.RESOURCE_NAME).name policy = iam_util.ParsePolicyFile(args.POLICY_FILE, messages.Policy) policy.version = iam_util.MAX_LIBRARY_IAM_SUPPORTED_VERSION set_iam_policy_request = messages.SetIamPolicyRequest(policy=policy) request = messages.CloudresourcemanagerTagKeysSetIamPolicyRequest( resource=tag_key, setIamPolicyRequest=set_iam_policy_request) result = service.SetIamPolicy(request) iam_util.LogSetIamPolicy(tag_key, 'TagKey') return result
def Run(self, args): service = tags.TagKeysService() messages = tags.TagMessages() if args.RESOURCE_NAME.find('tagKeys/') == 0: tag_key = args.RESOURCE_NAME else: tag_key = tag_utils.GetTagKeyFromNamespacedName( args.RESOURCE_NAME).name delete_request = messages.CloudresourcemanagerTagKeysDeleteRequest( name=tag_key) op = service.Delete(delete_request) if args.async_: return op return operations.WaitForOperation( op, 'Waiting for TagKey [{}] to be deleted'.format(tag_key), service=service)
def Run(self, args): service = tags.TagKeysService() messages = tags.TagMessages() short_name = args.short_name tag_parent = args.parent description = args.description tag_key = messages.TagKey(shortName=short_name, parent=tag_parent, description=description) create_req = messages.CloudresourcemanagerTagKeysCreateRequest( tagKey=tag_key) op = service.Create(create_req) if args.async_: return op return operations.WaitForOperation( op, "Waiting for TagKey [{}] to be created".format(short_name), service=service)