def Args(parser): iam_util.AddArgsForAddIamPolicyBinding( parser, role_completer=self._GenerateDeclarativeIamRolesCompleter(), add_condition=self._add_condition) self._CommonArgs(parser) base.URI_FLAG.RemoveFromParser(parser)
def Args(parser): flags.GetModelName().AddToParser(parser) flags.GetRegionArg('model').AddToParser(parser) iam_util.AddArgsForAddIamPolicyBinding( parser, flags.MlEngineIamRolesCompleter, add_condition=True)
def testAddArgsForAddIamPolicyBinding_Viewer(self): parser = argparse.ArgumentParser() ai = self.getDummyArgumentInterceptor(parser) iam_util.AddArgsForAddIamPolicyBinding(ai) res = parser.parse_args(['--role=roles/viewer', '--member=vtest']) self.assertEqual(res.role, 'roles/viewer') self.assertEqual(res.member, 'vtest')
def _AddIamPolicyBindingFlags(parser, add_condition=False, hide_region_flag=True): flags.GetModelName().AddToParser(parser) flags.GetRegionArg(hidden=hide_region_flag).AddToParser(parser) iam_util.AddArgsForAddIamPolicyBinding(parser, flags.MlEngineIamRolesCompleter, add_condition=add_condition)
def Args(parser): group = parser.add_argument_group('LabelKey.', required=True) arguments.AddLabelParentArgToParser( group, message=( 'This field is required if LABEL_KEY_ID is a display name ' 'instead of a numeric id.')) arguments.AddLabelKeyIdArgToParser(group) iam_util.AddArgsForAddIamPolicyBinding(parser, add_condition=True)
def Args(parser, track=base.ReleaseTrack.GA): """Registers flags for this command. Args: parser: The argparse parser. track: base.ReleaseTrack, calliope release track. """ flags.AddFunctionResourceArg(parser, 'to add IAM policy binding for') iam_util.AddArgsForAddIamPolicyBinding(parser)
def Args(parser): """Register flags for this command. Args: parser: An argparse.ArgumentParser-like object. It is mocked out in order to capture some information, but behaves like an ArgumentParser. """ parser.add_argument('name', help='The name of this cluster.') iam_util.AddArgsForAddIamPolicyBinding(parser)
def Args(parser): flags.AddConcepts( parser, flags.GetAttestorPresentationSpec( positional=True, group_help='The attestor whose IAM policy will be modified.', ), ) iam_util.AddArgsForAddIamPolicyBinding(parser)
def Args(parser): resource_args.AddInstanceResourceArg(parser, 'Instance to add IAM binding.') base.URI_FLAG.RemoveFromParser(parser) iam_util.AddArgsForAddIamPolicyBinding(parser) parser.add_argument( '--namespace', help='CDAP Namespace whose IAM policy we wish to append. ' 'For example: `--namespace=my-namespace`.')
def testAddArgsForAddIamPolicyBindingAddCondition_NoneCondition(self): parser = util.ArgumentParser() iam_util.AddArgsForAddIamPolicyBinding(parser, add_condition=True) res = parser.parse_args( ['--role=roles/viewer', '--member=guest', '--condition=None']) self.assertEqual(res.role, 'roles/viewer') self.assertEqual(res.member, 'guest') self.assertTrue('None' in res.condition) self.assertFalse('expression' in res.condition) self.assertFalse('title' in res.condition) self.assertFalse('description' in res.condition)
def testValidateAndExtractConditionMutex_PrimitiveRole(self): parser = util.ArgumentParser() iam_util.AddArgsForAddIamPolicyBinding(parser, add_condition=True) res = parser.parse_args([ '--role=roles/editor', '--member=user:[email protected]', '--condition=expression=expr,title=title,description=descr' ]) with self.AssertRaisesExceptionRegexp( iam_util.IamPolicyBindingInvalidError, r'.*Binding with a condition and a primitive role is not allowed.*' ): iam_util.ValidateAndExtractConditionMutexRole(res)
def Args(parser): """Args is called by calliope to gather arguments for this command. Args: parser: An argparse parser that you can use to add arguments that go on the command line after this command. Positional arguments are allowed. """ service_flag = common_flags.producer_service_flag( suffix='to which the member is to be added') service_flag.AddToParser(parser) iam_util.AddArgsForAddIamPolicyBinding(parser)
def testAddArgsForAddIamPolicyBindingAddCondition(self): parser = util.ArgumentParser() iam_util.AddArgsForAddIamPolicyBinding(parser, add_condition=True) res = parser.parse_args([ '--role=roles/viewer', '--member=guest', '--condition=expression=ip=whitelist_ip,title=title_value,' 'description=description_value' ]) self.assertEqual(res.role, 'roles/viewer') self.assertEqual(res.member, 'guest') self.assertEqual(res.condition.get('expression'), 'ip=whitelist_ip') self.assertEqual(res.condition.get('title'), 'title_value') self.assertEqual(res.condition.get('description'), 'description_value')
def Args(parser): """Args is called by calliope to gather arguments for this command. Please add arguments in alphabetical order except for no- or a clear- pair for that argument which can follow the argument itself. Args: parser: An argparse parser that you can use to add arguments that go on the command line after this command. Positional arguments are allowed. """ flags.Instance().AddToParser(parser) iam_util.AddArgsForAddIamPolicyBinding(parser)
def testValidateAndExtractCondition_FromCondition(self): parser = util.ArgumentParser() iam_util.AddArgsForAddIamPolicyBinding(parser, add_condition=True) res = parser.parse_args([ '--role=roles/non-primitive', '--member=user:[email protected]', '--condition=expression=expr,title=title,description=descr' ]) condition = iam_util.ValidateAndExtractCondition(res) expected_condition = { 'expression': 'expr', 'title': 'title', 'description': 'descr' } self.assertEqual(condition, expected_condition)
def testAddBindingToIamPolicy(self): parser = argparse.ArgumentParser() ai = self.getDummyArgumentInterceptor(parser) iam_util.AddArgsForAddIamPolicyBinding(ai) args = parser.parse_args( ['--role=roles/editor', '--member=user:[email protected]']) expected_policy = copy.deepcopy(self.TEST_IAM_POLICY) expected_policy.bindings.append( self.messages.Binding(members=['user:[email protected]'], role='roles/editor')) actual_policy = copy.deepcopy(self.TEST_IAM_POLICY) iam_util.AddBindingToIamPolicy(self.messages.Binding, actual_policy, args.member, args.role) self.assertEqual(actual_policy, expected_policy)
def testAddArgsForAddIamPolicyBindingAddCondition_FromFile(self): parser = util.ArgumentParser() iam_util.AddArgsForAddIamPolicyBinding(parser, add_condition=True) condition_file = self.Touch( self.temp_path, 'condition', contents='expression=ip=whitelist_ip,title=title_value,' 'description=description_value') res = parser.parse_args([ '--role=roles/viewer', '--member=guest', '--condition-from-file={}'.format(condition_file) ]) self.assertEqual(res.role, 'roles/viewer') self.assertEqual(res.member, 'guest') self.assertEqual( res.condition_from_file, 'expression=ip=whitelist_ip,title=title_value,' 'description=description_value')
def testValidateAndExtractCondition_FromFile(self): parser = util.ArgumentParser() iam_util.AddArgsForAddIamPolicyBinding(parser, add_condition=True) condition_file = self.Touch(self.temp_path, 'condition', contents='expression: expr\ntitle: title\n' 'description: descr') res = parser.parse_args([ '--role=roles/non-primitive', '--member=user:[email protected]', '--condition-from-file={}'.format(condition_file) ]) condition = iam_util.ValidateAndExtractCondition(res) expected_condition = { 'expression': 'expr', 'title': 'title', 'description': 'descr' } self.assertEqual(condition, expected_condition)
def Args(parser): flags.IdArg('to which you want to add a binding').AddToParser(parser) iam_util.AddArgsForAddIamPolicyBinding( parser, completer=completers.OrganizationsIamRolesCompleter)
def Args(parser): flags.AddLocationFlag(parser, 'keyring') flags.AddKeyRingArgument(parser, 'whose IAM policy to modify') iam_util.AddArgsForAddIamPolicyBinding( parser, role_completer=completers.KeyRingIamRolesCompleter)
def Args(parser): flags.INSTANCE_ARG.AddArgument( parser, operation_type='add the IAM policy binding to') iam_util.AddArgsForAddIamPolicyBinding(parser)
def Args(parser): flags.GetProjectFlag('add IAM policy binding to').AddToParser(parser) iam_util.AddArgsForAddIamPolicyBinding( parser, completer=completers.ProjectsIamRolesCompleter)
def Args(parser): iam_util.AddServiceAccountNameArg( parser, action='whose policy to add bindings to') iam_util.AddArgsForAddIamPolicyBinding(parser)
def Args(parser): """Register flags for this command.""" iam_util.AddArgsForAddIamPolicyBinding(parser) flags.AddStoreResourceFlags(parser)
def Args(parser): iam_util.AddArgsForAddIamPolicyBinding(parser)
def Args(parser): resource_args.AddApiResourceArg(parser, 'IAM policy binding will be added to', positional=True) iam_util.AddArgsForAddIamPolicyBinding( parser, common_flags.GatewayIamRolesCompleter)
def Args(parser): resource_args.AddSubscriptionResourceArg( parser, 'to add an IAM policy binding to.') iam_util.AddArgsForAddIamPolicyBinding(parser)
def Args(parser): resource_args.AddAssetResourceArg(parser, 'to add IAM policy binding to.') iam_util.AddArgsForAddIamPolicyBinding(parser)
def Args(parser): """Register flags for this command.""" flags.AddFunctionResourceArg(parser, 'to add IAM policy binding for') iam_util.AddArgsForAddIamPolicyBinding(parser)
def Args(parser): flags.GetProjectFlag('add IAM policy binding to').AddToParser(parser) iam_util.AddArgsForAddIamPolicyBinding( parser, 'id', 'cloudresourcemanager.projects')