执行迁移

如果您拥有适当的 IAM 权限并强制执行了所需的组织政策,则可以使用 Resource Manager API 在组织资源之间迁移项目资源。

gcloud

如需将项目迁移到另一个组织资源,请运行以下命令:

gcloud beta projects move PROJECT_ID \
    --organization ORGANIZATION_ID

您还可以使用以下命令将文件夹指定为目标资源:

gcloud beta projects move PROJECT_ID \
    --folder FOLDER_ID

替换以下字段:

  • PROJECT_ID 是您要迁移的项目的 ID 或编号。
  • ORGANIZATION_ID 是项目要移动到的组织资源的 ID。您只能指定一个目标,即组织资源或文件夹。
  • FOLDER_ID 是项目要移动到的文件夹的 ID。您只能指定一个目标,即一个文件夹或一个组织资源。

API

使用 v1 Resource Manager API,您可以通过将项目的 parent 字段设置为目标资源的 ID 在组织资源之间迁移项目。

如需迁移项目,请执行以下操作:

  • 使用 projects.get() 方法获取 project 对象。
  • 将其 parent 字段设置为组织资源的组织资源 ID 或要将该资源移动到的目标文件夹的文件夹 ID。
  • 使用 projects.update() 方法更新 project 对象。

以下代码段展示了上述步骤:

    project = crm.projects().get(projectId=flags.projectId).execute()
    project['parent'] = {
        'type': 'organization',
        'id': flags.organizationId
    }

    project = crm.projects().update(
    projectId=flags.projectId, body=project).execute()

回滚迁移

如果您误迁移了项目,可以通过再次执行迁移来回滚操作,将旧来源用作新目标位置,将旧目标位置用作新来源。您必须强制执行必要的 IAM 权限和组织政策,才能允许这种迁移,就像是一次全新的迁移一样。

如需回滚项目从无组织迁移到组织资源的迁移操作,请与 Google Cloud Customer Care 团队联系。