Questa pagina si applica a Apigee e Apigee ibrido.
Visualizza la documentazione di
Apigee Edge.
Sviluppa e testa i proxy API programmabili utilizzando Apigee in VS Code. Quindi, esegui il deployment di un archivio del tuo ambiente di configurazione proxy API nel tuo ambiente di test di integrazione e produzione Apigee, come descritto nelle sezioni seguenti.
Abilitazione del deployment degli archivi in un ambiente Apigee
Prima di poter eseguire il deployment di un archivio, devi abilitare il deployment dell'archivio nel tuo ambiente Apigee.
Abilita il deployment degli archivi come descritto nelle sezioni seguenti.
Interfaccia utente di Apigee
Per abilitare il deployment dell'archivio nel tuo ambiente Apigee, durante la creazione di un ambiente Apigee (al di fuori della procedura guidata di provisioning), seleziona Archivia in Tipo di deployment.
![Finestra di dialogo Nuovo ambiente.](https://cloud.google.com/static/apigee/docs/api-platform/images/archive-deployment-type.png?hl=it)
API Apigee
Per abilitare il deployment degli archivi durante la creazione di un ambiente utilizzando l'API, imposta deploymentType
su ARCHIVE
nel corpo della richiesta.
Ad esempio:
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" }'
Dove $TOKEN
è impostato sul token di accesso OAuth 2.0, come descritto in
Ottenere un token di accesso OAuth 2.0. Per informazioni sulle opzioni curl
utilizzate in questo esempio, consulta Utilizzo di curl. Per una descrizione delle variabili di ambiente utilizzate,
consulta Impostare le variabili di ambiente per le richieste API Apigee.
Di seguito viene fornito un esempio della risposta:
{ "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" } }
Puoi controllare lo stato dell'operazione. Ad esempio:
curl https://apigee.googleapis.com/v1/organizations/$ORG/operations/11b1ad1c-2371-473d-bcd4-f621f8d98ef7 / -H "Authorization: Bearer $TOKEN"
Di seguito viene fornito un esempio della risposta. Tieni presente che lo stato dell'operazione è FINISHED
e lo stato dell'ambiente è impostato su 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" } }
Per saperne di più sull'API, consulta API Create ambienti.
Deployment di un archivio in un ambiente Apigee
Per eseguire il deployment di un archivio in un ambiente Apigee, utilizza il seguente comando gcloud
:
gcloud beta apigee archives deploy \ --environment=$ENV \ [--organization=$ORG] \ [--source=$SOURCE] \ [--labels $KEY=$VALUE[,$KEY2=$VALUE2,$KEY3=$VALUE3,...]]
Devi specificare l'ambiente Apigee in cui vuoi eseguire il deployment dell'archivio utilizzando il flag --environment
. L'ambiente Apigee deve essere
abilitato per il deployment di archivi.
Per ulteriori informazioni, consulta gcloud beta apigee archive deploy.
Per impostazione predefinita, viene eseguito il deployment dell'archivio:
- All'organizzazione associata al progetto attivo corrente configurato per
gcloud
.Per visualizzare l'attuale configurazione di gcloud, esegui
gcloud config list
. Per specificare l'organizzazione, usa il flag--organization
. - Dalla directory di lavoro corrente.
Se la directory rootsrc/main/apigee
dell'archivio si trova in una posizione diversa dalla directory di lavoro attuale, utilizza il flag--source
per specificare la posizione della directory root dell'archivio. Vedi anche Informazioni sulla struttura di un'area di lavoro Apigee.
Facoltativamente, puoi aggiungere fino a 64 coppie chiave/valore di etichette personalizzate a un deployment di archiviazione utilizzando il flag --labels
. Ad esempio, potresti voler etichettare un archivio con un numero di build. Le etichette verranno visualizzate quando elenchi i deployment dell'archivio. Le coppie chiave-valore devono rispettare le seguenti linee guida:
- La lunghezza massima è di 63 caratteri
- Dimensione massima di 128 byte
- Codifica UTF-8
- Rispetta la seguente espressione regolare compatibile con Perl (PCRE):
[\p{Ll}\p{Lo}][\p{Ll}\p{Lo}\p{N}_-]{0,62}
In background, il comando gcloud
esegue i seguenti passaggi durante il deployment in Apigee su Google Cloud:
- Crea un file ZIP della directory
src/main/apigee
dell'area di lavoro Apigee. Per maggiori informazioni, consulta Informazioni sulla struttura di un'area di lavoro Apigee. - Esegue il deployment dell'archivio in Apigee su Google Cloud nel seguente modo:
- Genera un URL firmato per il bucket Google Cloud Storage nel progetto associato all'organizzazione Apigee attuale utilizzando l'API generateUploadUrl.
- Carica il file ZIP dell'archivio nel bucket Cloud Storage utilizzando l'URL firmato.
- Esegue il deployment in Apigee su Google Cloud dell'archivio attualmente memorizzato nel bucket Cloud Storage. utilizzando l'API Archive Deployments.
Richieste di esempio
L'esempio seguente crea un archivio ZIP di src/main/apigee
nella directory attuale e ne esegue il deployment nell'ambiente Apigee specificato:
gcloud beta apigee archives deploy --environment=$ENV
L'esempio seguente mostra come specificare un'organizzazione non associata al progetto attivo corrente configurato per gcloud
:
gcloud beta apigee archives deploy --environment=$ENV --organization=$ORG
L'esempio seguente crea un archivio ZIP della directory src/main/apigee
in myarchive
e ne esegue il deployment nell'ambiente Apigee specificato:
gcloud beta apigee archives deploy --environment=$ENV --source=/myarchive
Nell'esempio seguente vengono aggiunte le etichette status
e build_id
al deployment dell'archivio:
gcloud beta apigee archives deploy --environment=$ENV --labels=status=released,build=210315
Esempio di risposta
Di seguito viene fornito un esempio della risposta:
Using Apigee organization 'myorg' Waiting for operation [b64c2665-b5ac-43cc-9e2d-232e8895c2ed] to complete...done.
Controllo dello stato del deployment dell'archivio in corso
Per controllare lo stato del deployment dell'archivio, utilizza il comando gcloud alpha apigee Operations.
L'esempio seguente mostra lo stato del deployment dell'archivio per l'operazione con ID revisione 439fa3f7-6aa4-42ad-8b12-3ca912c75d5c
è IN_PROGRESS
.
gcloud alpha apigee operations describe b64c2665-b5ac-43cc-9e2d-232e8895c2ed
Di seguito viene fornito un esempio della risposta. Tieni presente che state
è impostato su 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
Al termine dell'operazione, state
viene impostato su FINISHED
.
Elenco di tutti i deployment di archiviazione in un ambiente
Elenca tutti i deployment degli archivi in un ambiente come descritto nelle sezioni seguenti.
gcloud
Per elencare tutti i deployment degli archivi in Apigee su Google Cloud, utilizza il seguente comando gcloud
:
gcloud beta apigee archives list --environment=$ENV
Devi specificare l'ambiente Apigee in cui vuoi visualizzare i deployment di archiviazione utilizzando il flag --environment
.
L'ambiente Apigee deve essere in Visualizzazione dei dettagli di un deployment in archivio.
Per ulteriori informazioni, consulta gcloud beta apigee archive list.
Di seguito viene fornito un esempio della risposta:
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
Per elencare i deployment degli archivi in un ambiente, invia una richiesta GET alla seguente API:
https://apigee.googleapis.com/v1/organizations/$ORG/environments/$ENV/archiveDeployments
.
Ad esempio:
curl "https://apigee.googleapis.com/v1/organizations/$ORG/environments/$ENV/archiveDeployments" \ -H "Authorization: Bearer $TOKEN"
Dove $TOKEN
è impostato sul token di accesso OAuth 2.0, come descritto in
Ottenere un token di accesso OAuth 2.0. Per informazioni sulle opzioni curl
utilizzate in questo esempio, consulta Utilizzo di curl. Per una descrizione delle variabili di ambiente utilizzate,
consulta Impostare le variabili di ambiente per le richieste API Apigee.
Di seguito viene fornito un esempio della risposta:
{ "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" } ] }
Visualizzazione dei dettagli per un deployment di archiviazione
Visualizza i dettagli di un deployment di archiviazione come descritto nelle sezioni seguenti.
gcloud
Per visualizzare i dettagli di un deployment di archiviazione in Apigee su Google Cloud, utilizza il seguente comando gcloud
:
gcloud beta apigee archives describe $ID --environment=$ENV
Devi specificare quanto segue:
- ID della revisione del deployment dell'archivio.
- Ambiente Apigee in cui vuoi visualizzare i deployment di archiviazione utilizzando il flag
--environment
. L'ambiente Apigee deve essere abilitato per il deployment di archiviazione.
Per maggiori informazioni, consulta gcloud beta apigee archive describe.
Ad esempio:
gcloud apigee archives describe pzfbs8uidbdv224joz --environment=$ENV
Di seguito viene fornito un esempio della risposta:
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
Per visualizzare i dettagli di un deployment di archiviazione, invia una richiesta GET alla seguente API:
https://apigee.googleapis.com/v1/organizations/$ORG/environments/$ENV/archiveDeployments/$ID
.
Devi passare l'ID della revisione del deployment dell'archivio. Per visualizzare l'elenco degli ID revisione dei deployment degli archivi per un ambiente Apigee, consulta Elenco di tutti i deployment di archivi in un ambiente.
Ad esempio:
curl "https://apigee.googleapis.com/v1/organizations/$ORG/environments/$ENV/archiveDeployments/pzfbs8uidbdv224joz" \ -X GET \ -H "Authorization: Bearer $TOKEN"
Dove $TOKEN
è impostato sul token di accesso OAuth 2.0, come descritto in
Ottenere un token di accesso OAuth 2.0. Per informazioni sulle opzioni curl
utilizzate in questo esempio, consulta Utilizzo di curl. Per una descrizione delle variabili di ambiente utilizzate,
consulta Impostare le variabili di ambiente per le richieste API Apigee.
Di seguito viene fornito un esempio della risposta:
{ "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" }
Aggiornamento delle etichette per un deployment di archiviazione
Aggiorna le etichette per un deployment di archiviazione come descritto nelle sezioni seguenti.
gcloud
Per aggiornare le etichette per un deployment di archiviazione in Apigee su Google Cloud, utilizza il seguente 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]]
Devi specificare quanto segue:
- ID della revisione del deployment dell'archivio
- Ambiente Apigee in cui vuoi visualizzare i deployment di archiviazione utilizzando il flag
--environment
. L'ambiente Apigee deve essere abilitato per il deployment di archiviazione. - Uno o più dei seguenti flag:
Flag Descrizione --clear-labels
Rimuove tutte le etichette. Se viene specificato anche --update-labels
, viene applicato prima--clear-labels
.Non può essere specificato se
--remove-labels
è specificato.--remove-labels
Rimuove le etichette specificate. Se è specificato anche --update-labels
, viene applicato per primo.Non può essere specificato se
--clear-labels
è specificato.--update-labels
Aggiorna le etichette. Se esiste un'etichetta, il suo valore viene modificato, altrimenti viene creata una nuova etichetta. Combinalo con i flag --remove-labels
o--clear-labels
per rimuovere rispettivamente un sottoinsieme o tutte le etichette prima di aggiornare le etichette.
Per maggiori informazioni, consulta gcloud beta apigee archive.
Ad esempio:
gcloud apigee archives update pzfbs8uidbdv224joz --environment=$ENV \ --clear-labels --update-labels=status=released,build=210315,tier=1
Di seguito viene fornito un esempio della risposta:
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
Per aggiornare le etichette per un deployment di archivi in Apigee su Google Cloud, invia una richiesta PATCH all'API seguente:
https://apigee.googleapis.com/v1/organizations/$ORG/environments/$ENV/archiveDeployments/$ID
.
Devi passare l'ID della revisione del deployment dell'archivio. Per visualizzare l'elenco degli ID di revisione dei deployment degli archivi per un ambiente Apigee, vedi Elenco di tutti i deployment degli archivi in un ambiente.
Trasmetti tutte le etichette che vuoi aggiungere all'archivio nel corpo della richiesta. Le etichette che passi sovrascrivono l'insieme corrente di etichette, in modo da poter rimuovere le etichette omettendole dal corpo della richiesta o rimuovere tutte le etichette trasmettendo un elenco vuoto.
Ad esempio:
curl "https://apigee.googleapis.com/v1/organizations/$ORG/environments/$ENV/archiveDeployments/$ID" \ -X PATCH \ -H "Authorization: Bearer $TOKEN" \ -d '{ "labels": { "status" : "released", "build" : "210315" } }'
Dove $TOKEN
è impostato sul token di accesso OAuth 2.0, come descritto in
Ottenere un token di accesso OAuth 2.0. Per informazioni sulle opzioni curl
utilizzate in questo esempio, consulta Utilizzo di curl. Per una descrizione delle variabili di ambiente utilizzate,
consulta Impostare le variabili di ambiente per le richieste API Apigee.
Di seguito viene fornito un esempio della risposta:
{ "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" }
Eliminazione di un ambiente Apigee con deployment di archiviazione
Per eliminare un ambiente Apigee con deployment di archiviazione:
- In una cartella temporanea, crea la seguente struttura di directory in cui $ENV corrisponde al nome dell'ambiente che vuoi eliminare.
Ad esempio:
mkdir -p /$TEMP/archive/src/main/apigee/environments/$ENV
- Aggiungi il file
deployments.json
alla directory. Ad esempio:touch /$TEMP/archive/src/main/apigee/environments/$ENV/deployments.json
- Aggiorna
deployments.json
in modo da includere un arrayproxies
vuoto, come mostrato di seguito.{ "proxies" : [] }
- Cambia directory (cd) con la cartella
$TEMP/archive
.cd $TEMP/archive
Se
- Esegui il deployment dell'archivio nell'ambiente Apigee che vuoi eliminare.
gcloud beta apigee archives deploy --environment=$ENV
- Elimina l'ambiente Apigee.
Eliminazione di una revisione di un deployment in archivio
Elimina la revisione di un deployment di archiviazione come descritto nella sezione seguente.
gcloud
Per eliminare una revisione di un deployment di archiviazione in Apigee su Google Cloud, utilizza il seguente comando gcloud
:
gcloud apigee archives delete $ID --environment=$ENV
Devi specificare quanto segue:
- L'ID della revisione da eliminare.
- Ambiente Apigee in cui vuoi visualizzare i deployment di archiviazione utilizzando il flag
--environment
. L'ambiente Apigee deve essere abilitato per il deployment di archiviazione.
Ad esempio:
gcloud apigee archives delete fb4r8log2gm63r3gtu --environment=dev
Di seguito viene fornito un esempio della risposta:
Archive deployment revision "fb4r8log2gm63r3gtu" deleted
API Apigee
Per eliminare una revisione di un deployment di archiviazione in Apigee su Google Cloud, invia una richiesta DELETE all'API seguente:
https://apigee.googleapis.com/v1/organizations/$ORG/environments/$ENV/archiveDeployments/$ID
.
Devi passare l'ID della revisione del deployment dell'archivio che vuoi eliminare. Per visualizzare l'elenco degli ID revisione dei deployment degli archivi per un ambiente, vedi Elenco di tutti i deployment degli archivi in un ambiente.
Ad esempio:
curl "https://apigee.googleapis.com/v1/organizations/$ORG/environments/$ENV/archiveDeployments/$ID" \ -X DELETE \ -H "Authorization: Bearer $TOKEN" \
Dove $TOKEN
è impostato sul token di accesso OAuth 2.0, come descritto in
Ottenere un token di accesso OAuth 2.0. Per informazioni sulle opzioni curl
utilizzate in questo esempio, consulta Utilizzo di curl. Per una descrizione delle variabili di ambiente utilizzate,
consulta Impostare le variabili di ambiente per le richieste API Apigee.
Di seguito viene fornito un esempio della risposta:
{}