def _CreatePolicy(self, args): """Create the policy on the service if needed. Args: args: argparse.Namespace, An object that contains the values for the arguments specified in the Args method. Returns: The created policy. """ name = utils.GetPolicyNameFromArgs(args) constraint = utils.GetConstraintFromArgs(args) parent = utils.GetResourceFromArgs(args) empty_policy = self.org_policy_messages.GoogleCloudOrgpolicyV2alpha1Policy( name=name, spec=self.org_policy_messages. GoogleCloudOrgpolicyV2alpha1PolicySpec()) new_policy = self.UpdatePolicy(empty_policy, args) if not new_policy.spec.rules and not new_policy.spec.inheritFromParent and not new_policy.spec.reset: # Return the response received after a successful DeletePolicy. return self.org_policy_messages.GoogleProtobufEmpty() create_request = self.org_policy_messages.OrgpolicyPoliciesCreateRequest( constraint=constraint, parent=parent, googleCloudOrgpolicyV2alpha1Policy=new_policy) create_response = self.policy_service.Create(create_request) log.CreatedResource(name, 'policy') return create_response
def testGetConstraintFromArgs_ConstraintPrefixPresent_SkipsAddingPrefix( self): args = self.parser.parse_args([ self.CONSTRAINT_WITH_PREFIX, self.RESOURCE_FLAG, self.RESOURCE_ID ]) constraint_name = utils.GetConstraintFromArgs(args) self.assertEqual(constraint_name, self.CONSTRAINT_WITH_PREFIX)
def testGetConstraintFromArgs_ConstraintPrefixNotPresent_AddsPrefix(self): args = self.parser.parse_args([ self.CONSTRAINT_WITHOUT_PREFIX, self.RESOURCE_FLAG, self.RESOURCE_ID ]) constraint = utils.GetConstraintFromArgs(args) self.assertEqual(constraint, self.CONSTRAINT_WITH_PREFIX)