【发布时间】:2021-11-08 04:33:23
【问题描述】:
我看到 this documentation 的 REST 包装器用于删除 AppEngine 服务(以及同样的版本)。但是如何使用它们呢?我没有看到任何代码示例,而且由于这些 REST 包装器是自动生成的,因此使用起来并不直观。
是否有关于如何删除 AppEngine 版本或服务的代码示例
【问题讨论】:
标签: java google-app-engine google-api
我看到 this documentation 的 REST 包装器用于删除 AppEngine 服务(以及同样的版本)。但是如何使用它们呢?我没有看到任何代码示例,而且由于这些 REST 包装器是自动生成的,因此使用起来并不直观。
是否有关于如何删除 AppEngine 版本或服务的代码示例
【问题讨论】:
标签: java google-app-engine google-api
删除版本:
import com.google.api.client.http.HttpRequestInitializer;
import com.google.auth.http.HttpCredentialsAdapter;
import com.google.auth.oauth2.GoogleCredentials;
import com.google.api.client.json.jackson2.JacksonFactory;
import com.google.api.services.appengine.v1.Appengine;
import com.google.api.services.appengine.v1.model.Operation;
GoogleCredentials credentials = GoogleCredentials.getApplicationDefault();
HttpRequestInitializer requestInitializer = new HttpCredentialsAdapter(credentials);
Appengine engine = new Appengine.Builder(
GoogleNetHttpTransport.newTrustedTransport(), new JacksonFactory(), requestInitializer
).setApplicationName("application").build();
// Replace to delete service, see below.
Appengine.Apps.Services.Versions versions = engine.apps().services().versions();
Appengine.Apps.Services.Versions.Delete del = versions.delete(project, service, version);
Operation result = del.execute();
要删除服务,请将上面的第 2 行和倒数第 3 行替换为:
Appengine.Apps.Services services = engine.apps().services();
Appengine.Apps.Services.Delete del = services.delete(project, service);
无法删除应用,因为 AppEngine 应用位于项目级别。 (从历史上看,项目最初是 AppEngine 应用程序。)
删除 API 的 JavaDocs 可以在 here 找到,但没有使用示例。
另一种方法根本不使用 GCP API,而是封装了 gcloud 命令行工具。见here。
【讨论】: