Esta página se aplica a Apigee y Apigee Hybrid.
Consulta la documentación de
Apigee Edge.
Desarrolla y prueba tus proxies de API programables con Apigee en VS Code. A continuación, despliega un archivo de tu entorno de configuración de proxy de API en tu entorno de prueba de integración y de producción de Apigee, tal como se describe en las siguientes secciones.
Habilitar el despliegue de archivos en un entorno de Apigee
Para poder desplegar un archivo, debes habilitar el despliegue de archivos en tu entorno de Apigee.
Habilita la implementación de archivos como se describe en las siguientes secciones.
Apigee en la consola de Cloud
-
En la Google Cloud consola, ve a la página Entornos.
- Haz clic en + Crear entorno.
Seleccione Archivar en Tipo de implementación.
- Haz clic en Crear.
UI clásica de Apigee
Para habilitar el despliegue de archivos en tu entorno de Apigee, cuando crees un entorno de Apigee (fuera del asistente de aprovisionamiento), selecciona Archivo en Tipo de despliegue.

API de Apigee
Para habilitar el archivo de despliegue al crear un entorno mediante la API, defina deploymentType
como ARCHIVE
en el cuerpo de la solicitud.
Por ejemplo:
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" }'
Donde $TOKEN
es tu token de acceso OAuth 2.0, tal como se describe en Obtener un token de acceso OAuth 2.0. Para obtener información sobre las opciones de curl
que se usan en este ejemplo, consulta Usar curl. Para ver una descripción de las variables de entorno que puedes usar, consulta Definir variables de entorno para solicitudes a la API de Apigee.
A continuación, se muestra un ejemplo de la respuesta:
{ "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" } }
Puedes consultar el estado de la operación. Por ejemplo:
curl https://apigee.googleapis.com/v1/organizations/$ORG/operations/11b1ad1c-2371-473d-bcd4-f621f8d98ef7 / -H "Authorization: Bearer $TOKEN"
A continuación, se muestra un ejemplo de la respuesta. Ten en cuenta que el estado de la operación es FINISHED
y el estado del entorno es 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 obtener más información sobre la API, consulta API Create environments.
Desplegar un archivo en un entorno de Apigee
Para desplegar un archivo en un entorno de Apigee, usa el siguiente comando gcloud
:
gcloud beta apigee archives deploy \ --environment=$ENV \ [--organization=$ORG] \ [--source=$SOURCE] \ [--labels $KEY=$VALUE[,$KEY2=$VALUE2,$KEY3=$VALUE3,...]]
Debes especificar el entorno de Apigee en el que quieres desplegar el archivo mediante la marca --environment
. El entorno de Apigee debe estar habilitado para los despliegues de archivos.
Para obtener más información, consulta gcloud beta apigee archives deploy.
De forma predeterminada, el archivo se implementa:
- A la organización asociada al proyecto activo actual configurado para
gcloud
.Para ver la configuración actual de gcloud, ejecuta
gcloud config list
. Para especificar la organización, usa la marca--organization
. - Desde el directorio de trabajo actual.
Si el directorio raízsrc/main/apigee
del archivo se encuentra en una ubicación distinta del directorio de trabajo actual, usa la marca--source
para especificar la ubicación del directorio raíz del archivo. Consulta también Información sobre la estructura de un espacio de trabajo de Apigee.
Opcionalmente, puede añadir hasta 64 pares clave-valor de etiquetas personalizadas a una implementación de archivo
con la marca --labels
. Por ejemplo, puedes etiquetar un archivo con un número de compilación. Las etiquetas se mostrarán cuando listar las implementaciones de archivos. Los valores clave deben cumplir las siguientes directrices:
- Longitud máxima de 63 caracteres
- Tamaño máximo de 128 bytes
- Codificado en UTF-8
- Cumple la siguiente expresión regular compatible con Perl (PCRE):
[\p{Ll}\p{Lo}][\p{Ll}\p{Lo}\p{N}_-]{0,62}
En segundo plano, el comando gcloud
realiza los siguientes pasos al implementar en Apigee en Google Cloud:
- Crea un archivo ZIP del directorio de tu espacio de trabajo de
src/main/apigee
Apigee. Para obtener más información, consulta Estructura de un espacio de trabajo de Apigee. - Despliega el archivo en Apigee en Google Cloud de la siguiente manera:
- Genera una URL firmada para el segmento de Google Cloud Storage del proyecto asociado a la organización de Apigee actual mediante la API generateUploadUrl.
- Sube el archivo ZIP del archivo al segmento de Cloud Storage mediante la URL firmada.
- Despliega el archivo que se encuentra en el segmento de Cloud Storage en Apigee en Google Cloud. con la API Archive Deployments.
Solicitudes de ejemplo
En el siguiente ejemplo se crea un archivo ZIP de src/main/apigee
en el directorio actual y se despliega en el entorno de Apigee especificado:
gcloud beta apigee archives deploy --environment=$ENV
En el siguiente ejemplo se muestra cómo puede especificar una organización que no esté asociada al proyecto activo configurado para gcloud
:
gcloud beta apigee archives deploy --environment=$ENV --organization=$ORG
En el siguiente ejemplo se crea un archivo ZIP del directorio src/main/apigee
en myarchive
y se despliega en el entorno de Apigee especificado:
gcloud beta apigee archives deploy --environment=$ENV --source=/myarchive
En el siguiente ejemplo se añaden las etiquetas status
y build_id
a la implementación del archivo:
gcloud beta apigee archives deploy --environment=$ENV --labels=status=released,build=210315
Respuesta de ejemplo
A continuación, se muestra un ejemplo de la respuesta:
Using Apigee organization 'myorg' Waiting for operation [b64c2665-b5ac-43cc-9e2d-232e8895c2ed] to complete...done.
Comprobar el estado del despliegue del archivo
Para comprobar el estado de la implementación del archivo, usa el comando gcloud alpha apigee operations.
En el siguiente ejemplo se muestra el estado de la implementación del archivo de la operación con el ID de revisión 439fa3f7-6aa4-42ad-8b12-3ca912c75d5c
, que es IN_PROGRESS
.
gcloud alpha apigee operations describe b64c2665-b5ac-43cc-9e2d-232e8895c2ed
A continuación, se muestra un ejemplo de la respuesta. Ten en cuenta que state
está configurado 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
Una vez completada la operación, el state
se establece en FINISHED
.
Mostrar todos los despliegues de archivos en un entorno
Consulta todos los despliegues de archivos de un entorno, tal como se describe en las siguientes secciones.
gcloud
Para enumerar todas las implementaciones de archivos en Apigee en Google Cloud, usa el siguiente comando gcloud
:
gcloud beta apigee archives list --environment=$ENV
Debe especificar el entorno de Apigee en el que quiere ver las implementaciones archivadas mediante la marca --environment
.
El entorno de Apigee debe ser Ver detalles de un despliegue de archivo.
Para obtener más información, consulta gcloud beta apigee archives list.
A continuación, se muestra un ejemplo de la respuesta:
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 de Apigee
Para enumerar los despliegues de archivos en un entorno, envía una solicitud GET a la siguiente API:
https://apigee.googleapis.com/v1/organizations/$ORG/environments/$ENV/archiveDeployments
.
Por ejemplo:
curl "https://apigee.googleapis.com/v1/organizations/$ORG/environments/$ENV/archiveDeployments" \ -H "Authorization: Bearer $TOKEN"
Donde $TOKEN
es tu token de acceso OAuth 2.0, tal como se describe en Obtener un token de acceso OAuth 2.0. Para obtener información sobre las opciones de curl
que se usan en este ejemplo, consulta Usar curl. Para ver una descripción de las variables de entorno que puedes usar, consulta Definir variables de entorno para solicitudes a la API de Apigee.
A continuación, se muestra un ejemplo de la respuesta:
{ "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 los detalles de una implementación archivada
Consulta los detalles de una implementación de archivo como se describe en las siguientes secciones.
gcloud
Para ver los detalles de una implementación de archivo en Apigee en Google Cloud, usa el siguiente comando gcloud
:
gcloud beta apigee archives describe $ID --environment=$ENV
Deberás especificar lo siguiente:
- ID de la revisión de la implementación del archivo.
- Entorno de Apigee en el que quiere ver las implementaciones archivadas mediante la marca
--environment
. El entorno de Apigee debe estar habilitado para los despliegues de archivos.
Para obtener más información, consulta gcloud beta apigee archives describe.
Por ejemplo:
gcloud apigee archives describe pzfbs8uidbdv224joz --environment=$ENV
A continuación, se muestra un ejemplo de la respuesta:
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 de Apigee
Para ver los detalles de una implementación de un archivo, envía una solicitud GET a la siguiente API:
https://apigee.googleapis.com/v1/organizations/$ORG/environments/$ENV/archiveDeployments/$ID
.
Debes proporcionar el ID de la revisión de la implementación del archivo. Para ver la lista de IDs de revisión de despliegue de archivos de un entorno de Apigee, consulta Mostrar todos los despliegues de archivos en un entorno.
Por ejemplo:
curl "https://apigee.googleapis.com/v1/organizations/$ORG/environments/$ENV/archiveDeployments/pzfbs8uidbdv224joz" \ -X GET \ -H "Authorization: Bearer $TOKEN"
Donde $TOKEN
es tu token de acceso OAuth 2.0, tal como se describe en Obtener un token de acceso OAuth 2.0. Para obtener información sobre las opciones de curl
que se usan en este ejemplo, consulta Usar curl. Para ver una descripción de las variables de entorno que puedes usar, consulta Definir variables de entorno para solicitudes a la API de Apigee.
A continuación, se muestra un ejemplo de la respuesta:
{ "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" }
Actualizar las etiquetas de un despliegue archivado
Actualiza las etiquetas de una implementación de archivo tal como se describe en las siguientes secciones.
gcloud
Para actualizar las etiquetas de una implementación de archivo en Apigee en Google Cloud, usa el siguiente 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]]
Deberás especificar lo siguiente:
- ID de la revisión de la implementación del archivo
- Entorno de Apigee en el que quiere ver las implementaciones archivadas mediante la marca
--environment
. El entorno de Apigee debe estar habilitado para los despliegues de archivos. - Una o varias de las siguientes marcas:
Bandera Descripción --clear-labels
Elimina todas las etiquetas. Si también se especifica --update-labels
, se aplica primero--clear-labels
.No se puede especificar si se ha indicado
--remove-labels
.--remove-labels
Quita las etiquetas especificadas. Si también se especifica --update-labels
, se aplica primero.No se puede especificar si se ha indicado
--clear-labels
.--update-labels
Actualiza las etiquetas. Si la etiqueta ya existe, se modifica su valor. De lo contrario, se crea una etiqueta. Combínalo con las marcas --remove-labels
o--clear-labels
para quitar un subconjunto o todas las etiquetas, respectivamente, antes de actualizar las etiquetas.
Para obtener más información, consulta gcloud beta apigee archives update.
Por ejemplo:
gcloud apigee archives update pzfbs8uidbdv224joz --environment=$ENV \ --clear-labels --update-labels=status=released,build=210315,tier=1
A continuación, se muestra un ejemplo de la respuesta:
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 de Apigee
Para actualizar las etiquetas de una implementación de archivo en Apigee en Google Cloud, envía una solicitud PATCH a la siguiente API:
https://apigee.googleapis.com/v1/organizations/$ORG/environments/$ENV/archiveDeployments/$ID
.
Debes proporcionar el ID de la revisión de la implementación del archivo. Para ver la lista de IDs de revisión de despliegue de archivos de un entorno de Apigee, consulta Mostrar todos los despliegues de archivos en un entorno.
Pasa todas las etiquetas que quieras añadir al archivo en el cuerpo de la solicitud. Las etiquetas que envíes sobrescribirán el conjunto de etiquetas actual, por lo que puedes quitar etiquetas omitiéndolas en el cuerpo de la solicitud o quitar todas las etiquetas enviando una lista vacía.
Por ejemplo:
curl "https://apigee.googleapis.com/v1/organizations/$ORG/environments/$ENV/archiveDeployments/$ID" \ -X PATCH \ -H "Authorization: Bearer $TOKEN" \ -d '{ "labels": { "status" : "released", "build" : "210315" } }'
Donde $TOKEN
es tu token de acceso OAuth 2.0, tal como se describe en Obtener un token de acceso OAuth 2.0. Para obtener información sobre las opciones de curl
que se usan en este ejemplo, consulta Usar curl. Para ver una descripción de las variables de entorno que puedes usar, consulta Definir variables de entorno para solicitudes a la API de Apigee.
A continuación, se muestra un ejemplo de la respuesta:
{ "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 un entorno de Apigee con despliegues de archivos
Para eliminar un entorno de Apigee con implementaciones de archivos, sigue estos pasos:
- En una carpeta temporal, crea la siguiente estructura de directorios, donde $ENV coincide con el nombre del entorno que quieres eliminar.
Por ejemplo:
mkdir -p /$TEMP/archive/src/main/apigee/environments/$ENV
- Añade el archivo
deployments.json
al directorio. Por ejemplo:touch /$TEMP/archive/src/main/apigee/environments/$ENV/deployments.json
- Actualice el
deployments.json
para que incluya un arrayproxies
vacío, como se muestra a continuación.{ "proxies" : [] }
- Cambia el directorio (cd) a la carpeta
$TEMP/archive
.cd $TEMP/archive
- Despliega el archivo en el entorno de Apigee que quieras eliminar.
gcloud beta apigee archives deploy --environment=$ENV
- Elimina el entorno de Apigee.
Eliminar una revisión de un despliegue archivado
Elimina una revisión de una implementación de archivo tal como se describe en la siguiente sección.
gcloud
Para eliminar una revisión de una implementación de archivo en Apigee en Google Cloud, usa el siguiente comando gcloud
:
gcloud beta apigee archives delete $ID --environment=$ENV
Deberás especificar lo siguiente:
- El ID de la revisión que quieres eliminar.
- Entorno de Apigee en el que quiere ver las implementaciones archivadas mediante la marca
--environment
. El entorno de Apigee debe estar habilitado para los despliegues de archivos.
Por ejemplo:
gcloud apigee archives delete fb4r8log2gm63r3gtu --environment=dev
A continuación, se muestra un ejemplo de la respuesta:
Archive deployment revision "fb4r8log2gm63r3gtu" deleted
API de Apigee
Para eliminar una revisión de una implementación de archivo en Apigee en Google Cloud, envía una solicitud DELETE a la siguiente API:
https://apigee.googleapis.com/v1/organizations/$ORG/environments/$ENV/archiveDeployments/$ID
.
Debes indicar el ID de la revisión de la implementación del archivo que quieras eliminar. Para ver la lista de IDs de revisión de despliegues archivados de un entorno, consulta Mostrar todos los despliegues archivados de un entorno.
Por ejemplo:
curl "https://apigee.googleapis.com/v1/organizations/$ORG/environments/$ENV/archiveDeployments/$ID" \ -X DELETE \ -H "Authorization: Bearer $TOKEN" \
Donde $TOKEN
es tu token de acceso OAuth 2.0, tal como se describe en Obtener un token de acceso OAuth 2.0. Para obtener información sobre las opciones de curl
que se usan en este ejemplo, consulta Usar curl. Para ver una descripción de las variables de entorno que puedes usar, consulta Definir variables de entorno para solicitudes a la API de Apigee.
A continuación, se muestra un ejemplo de la respuesta:
{}