def DoCommand(self, use_org_parent=True, use_folder_parent=False, is_async=False): folder_parent_args = [ '--folder', folders.FolderNameToId(self.TEST_FOLDER_WITH_FOLDER_PARENT.parent) ] if use_folder_parent else [] org_parent_args = [ '--organization', self.TEST_FOLDER.parent[len('organizations/'):] ] if use_org_parent else [] async_args = ['--async'] if is_async else [] all_args = folder_parent_args + org_parent_args + async_args return self.RunFolders('move', folders.FolderNameToId(self.TEST_FOLDER.name), *all_args)
def ExpectedRequest(self): return self.messages.CloudresourcemanagerFoldersGetIamPolicyRequest( foldersId=folders.FolderNameToId(self.TEST_FOLDER.name), getIamPolicyRequest=self.messages.GetIamPolicyRequest( options=self.messages.GetPolicyOptions( requestedPolicyVersion=iam_util. MAX_LIBRARY_IAM_SUPPORTED_VERSION)))
def DoRequest(self, args=None): command = [ 'get-iam-policy', folders.FolderNameToId(self.TEST_FOLDER.name) ] if args: command += args return self.RunFolders(*command)
def ParentNameToResourceId(parent_name): messages = projects_util.GetMessages() if not parent_name: return None elif parent_name.startswith('folders/'): return messages.ResourceId(id=folders.FolderNameToId(parent_name), type='folder') elif parent_name.startswith('organizations/'): return messages.ResourceId(id=parent_name[len('organizations/'):], type='organization')
def Run(self, args): flags.CheckParentFlags(args) messages = folders.FoldersMessages() folder = folders.GetFolder(args.id) move_request = messages.CloudresourcemanagerFoldersMoveRequest( foldersId=folders.FolderNameToId(folder.name), moveFolderRequest=messages.MoveFolderRequest( destinationParent=flags.GetParentFromFlags(args))) operation = folders.FoldersService().Move(move_request) if args. async: return operation else: finished_op = operations.WaitForOperation(operation) result = operations.ExtractOperationResponse( finished_op, messages.Folder) log.UpdatedResource(result)
def testSetIamPolicy(self): folder_id = folders.FolderNameToId(TEST_SUBFOLDER_B.name) new_policy = self.messages.Policy(bindings=[ self.messages.Binding(members=['serviceAccount:' + self.Account()], role='roles/owner') ], version=0) # Because this policy won't mess up any other integration # tests, we don't need to worry about changing it back to # the original policy (which is nontrivial to perform safely # in an environment where tests can be executed concurrently). created_policy = self.setIamPolicy(folder_id, new_policy) self.assertListEqual(created_policy.auditConfigs, []) self.assertListEqual(created_policy.bindings, new_policy.bindings)
def SetUpFolderMove(self, original, moved, is_async=False): response_value = operations.ToOperationResponse(moved) test_move_operation = self.messages.Operation(done=False, name=TEST_OPERATION_NAME) expected_move_request = folders.FoldersMessages( ).CloudresourcemanagerFoldersMoveRequest( foldersId=folders.FolderNameToId(original.name), moveFolderRequest=folders.FoldersMessages().MoveFolderRequest( destinationParent=moved.parent)) self.mock_folders.Move.Expect(expected_move_request, test_move_operation) if not is_async: test_move_operation_done = operations.OperationsMessages( ).Operation(done=True, name=TEST_OPERATION_NAME, response=response_value) self.mock_operations.Get.Expect( self.ExpectedGetOperationRequest(test_move_operation), test_move_operation_done)
def DoRequest(self): return self.RunFolders('delete', folders.FolderNameToId(self.TEST_FOLDER.name))
def ExpectedRequest(self): return folders.FoldersMessages( ).CloudresourcemanagerFoldersDeleteRequest( foldersId=folders.FolderNameToId(self.TEST_FOLDER.name))
def _GetUri(resource): folder_id = folders.FolderNameToId(resource.name) return self.GetFolderRef(folder_id).SelfLink()
def DoRequestWithoutName(self): self.RunFolders('update', folders.FolderNameToId(self.TEST_FOLDER.name))
def DoRequest(self): return self.RunFolders('update', folders.FolderNameToId(self.TEST_FOLDER.name), '--display-name', self.UPDATED_TEST_FOLDER.displayName)
def ExpectedPatchRequest(self): return folders.FoldersMessages( ).CloudresourcemanagerFoldersPatchRequest( folder=self.UPDATED_TEST_FOLDER, foldersId=folders.FolderNameToId(self.UPDATED_TEST_FOLDER.name), updateMask='display_name')