Esta página aplica-se ao Apigee e ao Apigee Hybrid.
Veja a documentação do
Apigee Edge.
Desenvolva e teste os seus proxies de API programáveis com o Apigee no VS Code. Em seguida, implemente um arquivo do ambiente de configuração do proxy de API no ambiente de teste de integração e de produção do Apigee, conforme descrito nas secções seguintes.
Ativar a implementação de arquivos num ambiente do Apigee
Antes de poder implementar um arquivo, tem de ativar a implementação de arquivos no seu ambiente do Apigee.
Ative a implementação de arquivos conforme descrito nas secções seguintes.
Apigee na Cloud Console
-
Na Google Cloud consola, aceda à página Ambientes.
- Clique em + Criar ambiente.
Selecione Arquivar em Tipo de implementação.
- Clique em Criar.
IU do Apigee Classic
Para ativar a implementação de arquivos no seu ambiente do Apigee, quando criar um ambiente do Apigee (fora do assistente de aprovisionamento), selecione Arquivo em Tipo de implementação.

API Apigee
Para ativar a implementação de arquivos quando cria um ambiente através da API, defina deploymentType
como ARCHIVE
no corpo do pedido.
Por exemplo:
curl "https://apigee.googleapis.com/v1/organizations/$ORG/environments" \ -X POST \ -H "Authorization: Bearer $TOKEN" \ -H "Content-type: application/json" \ -d '{ "name": "integration-test", "description": "Integration test environment", "displayName" : "Integration test", "deploymentType" : "ARCHIVE" }'
Onde $TOKEN
está definido como a sua chave de acesso OAuth 2.0, conforme descrito em
Obter uma chave de acesso OAuth 2.0. Para informações sobre as opções de curl
usadas neste exemplo, consulte a secção
Usar o curl. Para uma descrição das variáveis de ambiente que pode usar, consulte o artigo
Definir
variáveis de ambiente para pedidos de API Apigee.
Segue-se um exemplo da resposta:
{ "name": "organizations/$ORG/operations/11b1ad1c-2371-473d-bcd4-f621f8d98ef7", "metadata": { "@type": "type.googleapis.com/google.cloud.apigee.v1.OperationMetadata", "operationType": "INSERT", "targetResourceName": "organizations/$ORG/environments/integration-test", "state": "IN_PROGRESS" } }
Pode verificar o estado da operação. Por exemplo:
curl https://apigee.googleapis.com/v1/organizations/$ORG/operations/11b1ad1c-2371-473d-bcd4-f621f8d98ef7 / -H "Authorization: Bearer $TOKEN"
Segue-se um exemplo da resposta. Tenha em atenção que o estado da operação é FINISHED
e o estado do ambiente está definido como ACTIVE
.
{ "name": "organizations/$ORG/operations/11b1ad1c-2371-473d-bcd4-f621f8d98ef7", "metadata": { "@type": "type.googleapis.com/google.cloud.apigee.v1.OperationMetadata", "operationType": "INSERT", "targetResourceName": "organizations/$ORG/environments/integration-test", "state": "FINISHED" }, "done": true, "response": { "@type": "type.googleapis.com/google.cloud.apigee.v1.Environment", "name": "integration-test", "description": "Integration test environment", "createdAt": "1615553880084", "lastModifiedAt": "1615553881911", "displayName": "Integration test", "state": "ACTIVE", "deploymentType": "ARCHIVE" } }
Para mais informações sobre a API, consulte o artigo API Create environments.
Implementar um arquivo num ambiente do Apigee
Para implementar um arquivo num ambiente do Apigee, use o seguinte comando gcloud
:
gcloud beta apigee archives deploy \ --environment=$ENV \ [--organization=$ORG] \ [--source=$SOURCE] \ [--labels $KEY=$VALUE[,$KEY2=$VALUE2,$KEY3=$VALUE3,...]]
Tem de especificar o ambiente do Apigee no qual quer implementar o arquivo através da flag --environment
. O ambiente do Apigee tem de estar ativado para implementações de arquivo.
Para mais informações, consulte o artigo gcloud beta apigee archives deploy.
Por predefinição, o arquivo é implementado:
- À organização associada ao projeto ativo atual configurado para
gcloud
.Para ver a configuração atual do gcloud, execute
gcloud config list
. Para especificar a organização, use a flag--organization
. - A partir do diretório de trabalho atual.
Se o diretório raiz do arquivo estiver numa localização diferente do diretório de trabalho atual, use a flag--source
para especificar a localização do diretório raiz do arquivo.src/main/apigee
Veja também Compreender a estrutura de um espaço de trabalho do Apigee.
Opcionalmente, pode adicionar até 64 pares de chave/valor de etiqueta personalizada a uma implementação de arquivo usando a flag --labels
. Por exemplo, pode querer etiquetar um arquivo com um número de compilação. As etiquetas são apresentadas quando lista as implementações de arquivo. Os valores-chave têm de cumprir as seguintes diretrizes:
- Comprimento máximo de 63 carateres
- Tamanho máximo de 128 bytes
- Com codificação UTF-8
- Estar em conformidade com a seguinte expressão regular compatível com Perl (PCRE):
[\p{Ll}\p{Lo}][\p{Ll}\p{Lo}\p{N}_-]{0,62}
Nos bastidores, o comando gcloud
executa os seguintes passos quando implementa no Apigee no Google Cloud:
- Cria um ficheiro ZIP do seu diretório do espaço de trabalho do
src/main/apigee
Apigee. Para mais informações, consulte o artigo Compreender a estrutura de um espaço de trabalho do Apigee. - Implementa o arquivo no Apigee no Google Cloud, da seguinte forma:
- Gera um URL assinado para o contentor do Google Cloud Storage no projeto associado à organização do Apigee atual através da API generateUploadUrl.
- Carrega o ficheiro ZIP do arquivo para o contentor do Cloud Storage através do URL assinado.
- Implementa o arquivo atualmente preparado no contentor do Cloud Storage no Apigee no Google Cloud. através da API Archive Deployments.
Exemplos de pedidos
O exemplo seguinte cria um arquivo ZIP de src/main/apigee
no diretório atual e implementa-o no ambiente do Apigee especificado:
gcloud beta apigee archives deploy --environment=$ENV
O exemplo seguinte mostra como pode especificar uma organização que não está associada ao projeto ativo atual configurado para gcloud
:
gcloud beta apigee archives deploy --environment=$ENV --organization=$ORG
O exemplo seguinte cria um arquivo ZIP do diretório src/main/apigee
em myarchive
e implementa-o no ambiente do Apigee especificado:
gcloud beta apigee archives deploy --environment=$ENV --source=/myarchive
O exemplo seguinte adiciona as etiquetas status
e build_id
à implementação do arquivo:
gcloud beta apigee archives deploy --environment=$ENV --labels=status=released,build=210315
Exemplo de resposta
Segue-se um exemplo da resposta:
Using Apigee organization 'myorg' Waiting for operation [b64c2665-b5ac-43cc-9e2d-232e8895c2ed] to complete...done.
Verificar o estado da implementação do arquivo
Para verificar o estado da implementação do arquivo, use o comando gcloud alpha apigee operations.
O exemplo seguinte mostra que o estado de implementação do arquivo para a operação com o ID de revisão 439fa3f7-6aa4-42ad-8b12-3ca912c75d5c
é IN_PROGRESS
.
gcloud alpha apigee operations describe b64c2665-b5ac-43cc-9e2d-232e8895c2ed
Segue-se um exemplo da resposta. Tenha em atenção que state
está definido como IN_PROGRESS
.
Using Apigee organization 'myorg' done: true metadata: '@type': type.googleapis.com/google.cloud.apigee.v1.OperationMetadata operationType: INSERT state: IN_PROGRESS targetResourceName: uri name: organizations/myorg/operations/b64c2665-b5ac-43cc-9e2d-232e8895c2ed organization: myorg response: '@type': type.googleapis.com/google.cloud.apigee.v1.CanaryEvaluation control: 1-5-0-20210319-071117-ghq74 endTime: '2021-03-20T06:15:44.329363950Z' metricLabels: env: test location: us-central1 name: uri startTime: '2021-03-20T06:14:44.306534584Z' treatment: 1-5-0-20210319-190954-if0wk verdict: NONE uuid: b64c2665-b5ac-43cc-9e2d-232e8895c2ed
Após a conclusão da operação, o valor state
é definido como FINISHED
.
Apresentar todas as implementações de arquivo num ambiente
Apresenta todas as implementações de arquivo num ambiente, conforme descrito nas secções seguintes.
gcloud
Para apresentar uma lista de todas as implementações de arquivos no Apigee no Google Cloud, use o seguinte comando gcloud
:
gcloud beta apigee archives list --environment=$ENV
Tem de especificar o ambiente do Apigee no qual quer ver as implementações de arquivo através da flag --environment
.
O ambiente do Apigee tem de estar a ver detalhes de uma implementação de arquivo.
Para mais informações, consulte gcloud beta apigee archives list.
Segue-se um exemplo da resposta:
Using Apigee organization 'myorg' ARCHIVE ID ENVIRONMENT DEPLOYED AT LABELS OPERATION STATUS pzfbs8uidbdv224joz myorg 2021-03-10 11:21:29 status=released,build=210315 Deployed fb4r8log2gm63r3gtu myorg 2021-03-05 13:40:30 vrytwbhso558oil53m myorg 2021-03-03 21:20:53
API Apigee
Para listar as implementações de arquivos num ambiente, envie um pedido GET para a seguinte API:
https://apigee.googleapis.com/v1/organizations/$ORG/environments/$ENV/archiveDeployments
.
Por exemplo:
curl "https://apigee.googleapis.com/v1/organizations/$ORG/environments/$ENV/archiveDeployments" \ -H "Authorization: Bearer $TOKEN"
Onde $TOKEN
está definido como a sua chave de acesso OAuth 2.0, conforme descrito em
Obter uma chave de acesso OAuth 2.0. Para informações sobre as opções de curl
usadas neste exemplo, consulte a secção
Usar o curl. Para uma descrição das variáveis de ambiente que pode usar, consulte o artigo
Definir
variáveis de ambiente para pedidos de API Apigee.
Segue-se um exemplo da resposta:
{ "archiveDeployments": [ { "name": "organizations/myorg/environments/integration-test/archiveDeployments/pzfbs8uidbdv224joz", "labels": { "status": "released", "build": "210315" }, "createdAt": "1615821232451727", "updatedAt": "1615821232451727", "operation": "organizations/apigee-docs-c/operations/b64c2665-b5ac-43cc-9e2d-232e8895c2ed" }, { "name": "organizations/myorg/environments/integration-test/archiveDeployments/fb4r8log2gm63r3gtu", "createdAt": "1615819281858447", "updatedAt": "1615819281858447", "operation": "organizations/apigee-docs-c/operations/71549b9c-4493-41b6-9838-c0ad5b1b3181" }, { "name": "organizations/myorg/environments/integration-test/archiveDeployments/vrytwbhso558oil53m", "createdAt": "1615578337832207", "updatedAt": "1615578337832207", "operation": "organizations/apigee-docs-c/operations/a2eb50b5-f276-4de4-96a3-72fac3d4c05e" } ] }
Ver detalhes de uma implementação de arquivo
Veja os detalhes de uma implementação de arquivo, conforme descrito nas secções seguintes.
gcloud
Para ver os detalhes de uma implementação de arquivo no Apigee no Google Cloud, use o seguinte comando gcloud
:
gcloud beta apigee archives describe $ID --environment=$ENV
Tem de especificar o seguinte:
- ID da revisão de implementação do arquivo.
- Ambiente do Apigee no qual quer ver as implementações de arquivo com a flag
--environment
. O ambiente do Apigee tem de estar ativado para implementações de arquivo.
Para mais informações, consulte o artigo gcloud beta apigee archives describe.
Por exemplo:
gcloud apigee archives describe pzfbs8uidbdv224joz --environment=$ENV
Segue-se um exemplo da resposta:
Using Apigee organization 'myorg' createdAt: '1615578337832207' labels: status: 'released' build: '210315' name: organizations/myorg/environments/$ENV/archiveDeployments/pzfbs8uidbdv224joz operation: organizations/myorg/operations/b64c2665-b5ac-43cc-9e2d-232e8895c2ed operationStatus: Deployed updatedAt: '1615821232451727'
API Apigee
Para ver os detalhes de uma implementação de arquivo, envie um pedido GET para a seguinte API:
https://apigee.googleapis.com/v1/organizations/$ORG/environments/$ENV/archiveDeployments/$ID
.
Tem de transmitir o ID da revisão da implementação do arquivo. Para ver a lista de IDs de revisão de implementação de arquivo para um ambiente do Apigee, consulte o artigo Listar todas as implementações de arquivo num ambiente.
Por exemplo:
curl "https://apigee.googleapis.com/v1/organizations/$ORG/environments/$ENV/archiveDeployments/pzfbs8uidbdv224joz" \ -X GET \ -H "Authorization: Bearer $TOKEN"
Onde $TOKEN
está definido como a sua chave de acesso OAuth 2.0, conforme descrito em
Obter uma chave de acesso OAuth 2.0. Para informações sobre as opções de curl
usadas neste exemplo, consulte a secção
Usar o curl. Para uma descrição das variáveis de ambiente que pode usar, consulte o artigo
Definir
variáveis de ambiente para pedidos de API Apigee.
Segue-se um exemplo da resposta:
{ "name": "organizations/myorg/environments/integration-test/archiveDeployments/pzfbs8uidbdv224joz", "labels": { "status": "released", "build": "210315" }, "createdAt": "1615578337832207", "updatedAt": "1615821232451727", "operation": "organizations/apigee-docs-c/operations/b64c2665-b5ac-43cc-9e2d-232e8895c2ed" }
Atualizar etiquetas para uma implementação de arquivo
Atualize as etiquetas de uma implementação de arquivo conforme descrito nas secções seguintes.
gcloud
Para atualizar as etiquetas de uma implementação de arquivo no Apigee no Google Cloud, use o seguinte comando gcloud
:
gcloud beta apigee archives update [$ID] --environment=$ENV [--update-labels=$KEY=$VALUE[,$KEY2=$VALUE2...$KEYn=$VALUEn]], [--clear-labels | --remove-labels=$KEY[,$KEY2...$KEYn]]
Tem de especificar o seguinte:
- ID da revisão de implementação do arquivo
- Ambiente do Apigee no qual quer ver as implementações de arquivo com a flag
--environment
. O ambiente do Apigee tem de estar ativado para implementações de arquivo. - Uma ou mais das seguintes flags:
Bandeira Descrição --clear-labels
Remove todas as etiquetas. Se --update-labels
também for especificado,--clear-labels
é aplicado primeiro.Não pode ser especificado se
--remove-labels
estiver especificado.--remove-labels
Remove as etiquetas especificadas. Se --update-labels
também for especificado, é aplicado primeiro.Não pode ser especificado se
--clear-labels
estiver especificado.--update-labels
Atualize as etiquetas. Se existir uma etiqueta, o respetivo valor é modificado. Caso contrário, é criada uma nova etiqueta. Combine com as flags --remove-labels
ou--clear-labels
para remover um subconjunto ou todas as etiquetas, respetivamente, antes de atualizar as etiquetas.
Para mais informações, consulte o artigo gcloud beta apigee archives update.
Por exemplo:
gcloud apigee archives update pzfbs8uidbdv224joz --environment=$ENV \ --clear-labels --update-labels=status=released,build=210315,tier=1
Segue-se um exemplo da resposta:
Using Apigee organization `myorg` createdAt: 2020-04-04T04:04:04.004Z labels: status: released, build: 210315, tier: 1 name: organizations/apigee-docs-c/environments/dev/archiveDeployments/pzfbs8uidbdv224joz operation: organizations/apigee-docs-c/operations/bf587121-8b5c-4897-9d8f-9b1ef0cb06ca updatedAt: '1633450432067431'
API Apigee
Para atualizar as etiquetas de uma implementação de arquivo no Apigee no Google Cloud, emita um pedido PATCH para a seguinte API:
https://apigee.googleapis.com/v1/organizations/$ORG/environments/$ENV/archiveDeployments/$ID
.
Tem de transmitir o ID da revisão da implementação do arquivo. Para ver a lista de IDs de revisão da implementação de arquivo para um ambiente do Apigee, consulte o artigo Listar todas as implementações de arquivo num ambiente.
Transmita todas as etiquetas que quer adicionar ao arquivo no corpo do pedido. As etiquetas que transmite substituem o conjunto atual de etiquetas, pelo que pode remover etiquetas omitindo-as do corpo do pedido ou remover todas as etiquetas transmitindo uma lista vazia.
Por exemplo:
curl "https://apigee.googleapis.com/v1/organizations/$ORG/environments/$ENV/archiveDeployments/$ID" \ -X PATCH \ -H "Authorization: Bearer $TOKEN" \ -d '{ "labels": { "status" : "released", "build" : "210315" } }'
Onde $TOKEN
está definido como a sua chave de acesso OAuth 2.0, conforme descrito em
Obter uma chave de acesso OAuth 2.0. Para informações sobre as opções de curl
usadas neste exemplo, consulte a secção
Usar o curl. Para uma descrição das variáveis de ambiente que pode usar, consulte o artigo
Definir
variáveis de ambiente para pedidos de API Apigee.
Segue-se um exemplo da resposta:
{ "name": "organizations/myorg/environments/integration-test/archiveDeployments/pzfbs8uidbdv224joz", "labels": { "status": "released", "build": "210315" }, "createdAt": "1615578337832207", "updatedAt": "1615821232451727", "operation": "organizations/apigee-docs-c/operations/b64c2665-b5ac-43cc-9e2d-232e8895c2ed" }
Eliminar um ambiente do Apigee com implementações de arquivo
Para eliminar um ambiente do Apigee com implementações de arquivo:
- Numa pasta temporária, crie a seguinte estrutura de diretórios, em que $ENV corresponde ao nome do ambiente que quer eliminar.
Por exemplo:
mkdir -p /$TEMP/archive/src/main/apigee/environments/$ENV
- Adicione o ficheiro
deployments.json
ao diretório. Por exemplo:touch /$TEMP/archive/src/main/apigee/environments/$ENV/deployments.json
- Atualize o elemento
deployments.json
para incluir uma matrizproxies
vazia, conforme mostrado abaixo.{ "proxies" : [] }
- Altere o diretório (cd) para a pasta
$TEMP/archive
.cd $TEMP/archive
- Implemente o arquivo no ambiente do Apigee que quer eliminar.
gcloud beta apigee archives deploy --environment=$ENV
- Elimine o ambiente do Apigee.
Eliminar uma revisão de uma implementação de arquivo
Elimine uma revisão de uma implementação de arquivo, conforme descrito na secção seguinte.
gcloud
Para eliminar uma revisão de uma implementação de arquivo no Apigee no Google Cloud, use o seguinte comando gcloud
:
gcloud beta apigee archives delete $ID --environment=$ENV
Tem de especificar o seguinte:
- O ID da revisão que quer eliminar.
- Ambiente do Apigee no qual quer ver as implementações de arquivo com a flag
--environment
. O ambiente do Apigee tem de estar ativado para implementações de arquivo.
Por exemplo:
gcloud apigee archives delete fb4r8log2gm63r3gtu --environment=dev
Segue-se um exemplo da resposta:
Archive deployment revision "fb4r8log2gm63r3gtu" deleted
API Apigee
Para eliminar uma revisão de uma implementação de arquivo no Apigee no Google Cloud, emita um pedido DELETE para a seguinte API:
https://apigee.googleapis.com/v1/organizations/$ORG/environments/$ENV/archiveDeployments/$ID
.
Tem de transmitir o ID da revisão da implementação do arquivo que quer eliminar. Para ver a lista de IDs de revisões de implementações de arquivos para um ambiente, consulte o artigo Listar todas as implementações de arquivos num ambiente.
Por exemplo:
curl "https://apigee.googleapis.com/v1/organizations/$ORG/environments/$ENV/archiveDeployments/$ID" \ -X DELETE \ -H "Authorization: Bearer $TOKEN" \
Onde $TOKEN
está definido como a sua chave de acesso OAuth 2.0, conforme descrito em
Obter uma chave de acesso OAuth 2.0. Para informações sobre as opções de curl
usadas neste exemplo, consulte a secção
Usar o curl. Para uma descrição das variáveis de ambiente que pode usar, consulte o artigo
Definir
variáveis de ambiente para pedidos de API Apigee.
Segue-se um exemplo da resposta:
{}