def Run(self, args): if args.name is None: raise ArgumentError('--name must be specified.') project_ref = command_lib_util.ParseProject(args.id) result = projects_api.Update(project_ref, name=args.name) log.UpdatedResource(project_ref) return result
def Run(self, args): labels_diff = labels_util.Diff.FromUpdateArgs(args) project_ref = command_lib_util.ParseProject(args.id) result = projects_api.Update(project_ref, name=args.name, labels_diff=labels_diff) log.UpdatedResource(project_ref) return result
def Run(self, args): folder_flags.CheckParentFlags(args) project_ref = command_lib_util.ParseProject(args.id) result = projects_api.Update( project_ref, parent=projects_api.ParentNameToResourceId( folder_flags.GetParentFromFlags(args))) log.UpdatedResource(project_ref) return result
def testUpdateHttpError(self): test_project = util.GetTestActiveProject() test_project_ref = command_lib_util.ParseProject(test_project.projectId) self.mock_client.projects.Get.Expect( self.messages.CloudresourcemanagerProjectsGetRequest( projectId=test_project.projectId), exception=self.HttpError()) with self.assertRaises(exceptions.HttpError): projects_api.Update(test_project_ref, name='new name')
def Run(self, args): labels_diff = labels_util.Diff.FromUpdateArgs(args) if args.name is None and not labels_diff.MayHaveUpdates(): raise ArgumentError('At least one of --name, --update-labels or ' '--remove-labels must be specified.') project_ref = command_lib_util.ParseProject(args.id) result = projects_api.Update(project_ref, name=args.name, labels_diff=labels_diff) log.UpdatedResource(project_ref) return result
def Run(self, args): update_labels = labels_util.GetUpdateLabelsDictFromArgs(args) remove_labels = labels_util.GetRemoveLabelsListFromArgs(args) if args.name is None and update_labels is None and remove_labels is None: raise ArgumentError('At least one of --name, --update-labels or ' '--remove-labels must be specified.') project_ref = command_lib_util.ParseProject(args.id) result = projects_api.Update(project_ref, name=args.name, update_labels=update_labels, remove_labels=remove_labels) log.UpdatedResource(project_ref) return result
def testUpdate(self): test_project = util.GetTestActiveProject() test_project_ref = command_lib_util.ParseProject(test_project.projectId) updated_test_project = util.GetTestActiveProject() updated_test_project.name = 'Test Project, New and Improved' self.mock_client.projects.Get.Expect( self.messages.CloudresourcemanagerProjectsGetRequest( projectId=test_project.projectId), test_project) self.mock_client.projects.Update.Expect(updated_test_project, updated_test_project) response = projects_api.Update( test_project_ref, name=updated_test_project.name) self.assertEqual(response, updated_test_project)
def Run(self, args): folder_flags.CheckParentFlags(args) project_ref = command_lib_util.ParseProject(args.id) if not console_io.PromptContinue( 'Your project will be moved. This may alter the policies enforced on ' 'your Project, either exposing your Project to more security risk ' 'through looser polices or cause an outage through stricter polices. ' 'See these public notes on policy implications for more information: ' 'https://cloud.google.com/resource-manager/docs/' 'creating-managing-folders#moving-folders-policy-considerations and ' 'https://cloud.google.com/resource-manager/docs/' 'migrating-projects-billing#note_on_policy_implications. ' 'Once moved, you can move the Project again so long as you have the ' 'appropriate permissions. See our public documentation for more ' 'information: https://cloud.google.com/resource-manager/docs/' 'creating-managing-folders#moving_a_project_into_a_folder'): return None result = projects_api.Update( project_ref, parent=projects_api.ParentNameToResourceId( folder_flags.GetParentFromFlags(args))) log.UpdatedResource(project_ref) return result
def Run(self, args): project_ref = command_lib_util.ParseProject(args.id) result = projects_api.Update(project_ref, organization=args.organization) log.UpdatedResource(project_ref) return result