次のセクションでは、サンプル シナリオを用いて、API を使用して API プロキシのデプロイを管理する方法を説明します。サポートされている Apigee API の完全なリストについては、Apigee API リファレンスをご覧ください。
API を使用した API プロキシのデプロイ
API プロキシは、デプロイされるまで呼び出すことはできません。
ベースパスを変更せずに API プロキシの新しいリビジョンを作成し、それをデプロイ済みリビジョンが存在する環境にデプロイすると、以前のリビジョンがデプロイ解除され、代わりに新しいリビジョンがデプロイされます。
Apigee 組織内の特定の環境に API プロキシをデプロイするには、POST リクエストを次のリソースに発行します。
https://apigee.googleapis.com/v1/organizations/org_name/environments/environment_name/apis/api_proxy_name/revisions/revision_number/deployments
ここで
- org_name は実際の Apigee 組織名です。
- environment_name は環境名です。
- api_proxy_name は API プロキシの名前です。
- revision_number はリビジョン番号です。そのリビジョンは存在している必要があります。
API プロキシの既存のリビジョンがデプロイされている場合、ダウンタイムなしでシームレスにデプロイできるように、override
クエリ パラメータを true
に設定します。この場合、ハイブリッド デプロイが実施され、既存のリビジョンをデプロイ解除する前に、新しいリビジョンがデプロイされます。
次の例は、helloworld API プロキシのリビジョン 1 をテスト環境にデプロイする方法を示しています(API プロキシを作成するには、API を使用した API プロキシの作成をご覧ください)。
curl "https://apigee.googleapis.com/v1/organizations/myorg/environments/test/apis/helloworld/revisions/1/deployments" \ -X POST \ -H "Content-type:application/x-www-form-urlencoded" \ -H "Authorization: Bearer $TOKEN"
ここで、$TOKEN
は、OAuth 2.0 アクセス トークンの取得の説明に従って、OAuth 2.0 アクセス トークンに設定します。この例で使用されている curl オプションの詳細については、curl を使用するをご覧ください。
次にレスポンス出力の例を示します。
{ "environment": "test", "apiProxy": "helloworld", "revision": "1", "deployStartTime": "1559149080457", "basePath": "/" }
詳細については、API プロキシ リビジョン環境の Deployments API を参照してください。
API を使用した Apigee 組織内のすべてのデプロイの表示
次のリソースに GET リクエストを発行して、Apigee 組織における API プロキシと共有フローのすべてのデプロイを表示します。
https://apigee.googleapis.com/v1/organizations/org_name/deployments
org_name は実際の Apigee 組織名です。
次の例は、myorg 組織の API プロキシと共有フローのデプロイをすべて表示する方法を示しています。
curl "https://apigee.googleapis.com/v1/organizations/myorg/deployments" \ -X GET -H "Authorization: Bearer $TOKEN"
ここで、$TOKEN
は、OAuth 2.0 アクセス トークンの取得の説明に従って、OAuth 2.0 アクセス トークンに設定します。この例で使用されている curl
オプションの詳細については、curl を使用するをご覧ください。
次に、レスポンスの例を示します。この例では、前のセクションでデプロイされた helloworld など、3 つの API プロキシがデプロイされています。
{ "deployments": [ { "environment": "test", "apiProxy": "helloworld", "revision": "1", "deployStartTime": "1559149080457", "basePath": "/" }, { "environment": "test", "apiProxy": "weather", "revision": "1", "deployStartTime": "1558620435217", "basePath": "/" }, { "environment": "test", "apiProxy": "testproxy", "revision": "2", "deployStartTime": "1558635113086", "basePath": "/" } ] }
詳細については、Deployments API をご覧ください。
API を使用した API プロキシ リビジョンのデプロイ ステータスの確認
次のリソースに GET リクエストを発行して、API プロキシ リビジョンのデプロイ ステータスを確認します。
https://apigee.googleapis.com/v1/organizations/org_name/environments/environment_name/apis/api_proxy_name/revisions/revision_number/deployments
ここで
org_name
は実際の Apigee 組織名です。environment_name
は環境名です。api_proxy_name
は API プロキシの名前です。revision_number
はリビジョン番号です。
例:
curl "https://apigee.googleapis.com/v1/organizations/myorg/environments/test/apis/helloworld/revisions/1/deployments" \ -X GET \ -H "Authorization: Bearer $TOKEN"
ここで、$TOKEN
は、OAuth 2.0 アクセス トークンの取得の説明に従って、OAuth 2.0 アクセス トークンに設定します。この例で使用されている curl
オプションの詳細については、curl を使用するをご覧ください。
次にレスポンスの例を示します。
{ "environment": "test", "apiProxy": "helloworld", "revision": "1", "deployStartTime": "1559149080457", "pods": [ { "podName": "apigee-runtime-myorg-test-f8bdf9d-2s72w", "appVersion": "self", "deploymentStatusTime": "1559164511972", "deploymentStatus": "deployed", "statusCode": "200", "statusCodeDetails": "Deployment Success", "deploymentTime": "1559149659417" } ], "basePath": "/" }
詳細については、API プロキシ リビジョン環境の Deployments API を参照してください。
API を使用した API プロキシのデプロイ解除
Apigee 組織の API プロキシをデプロイ解除するには、次のリソースに DELETE リクエストを発行します。
https://apigee.googleapis.com/v1/organizations/org_name/environments/environment_name/apis/api_proxy_name/revisions/revision_number/deployments
ここで
org_name
は実際の Apigee 組織名です。environment_name
は環境名です。api_proxy_name
は API プロキシの名前です。revision_number
はリビジョン番号です。
例:
curl "https://apigee.googleapis.com/v1/organizations/myorg/environments/test/apis/helloworld/revisions/1/deployments" \ -X DELETE \ -H "Authorization: Bearer $TOKEN"
ここで、$TOKEN
は、OAuth 2.0 アクセス トークンの取得の説明に従って、OAuth 2.0 アクセス トークンに設定します。この例で使用されている curl
オプションの詳細については、curl を使用するをご覧ください。
次にレスポンス出力の例(空のレスポンス)を示します。
{}
詳細については、API プロキシ リビジョン環境の Deployments API を参照してください。