Automation Pipelines proporciona un complemento de REST que le permite integrar Automation Pipelines con otras aplicaciones que utilizan REST API para que pueda desarrollar y distribuir continuamente aplicaciones de software que deben interactuar entre sí. El complemento de REST invoca una API, que envía y recibe información entre Automation Pipelines y otra aplicación.
Con el complemento de REST, puede:
- Integrar sistemas externos basados en REST API en una canalización de Automation Pipelines.
- Integrar una canalización de Automation Pipelines como parte del flujo de sistemas externos.
El complemento de REST funciona con cualquier instancia de REST API y admite los métodos GET, POST, PUT, PATCH y DELETE para enviar o recibir información entre Automation Pipelines y otras aplicaciones.
Tabla 1.
Preparar una canalización para comunicarse a través de REST API
Qué hacer |
Qué sucede como resultado |
Agregue una tarea de REST a la canalización. |
La tarea de REST comunica información entre aplicaciones y puede proporcionar información de estado para una tarea posterior en la etapa de la canalización. |
En la tarea de REST, seleccione la acción REST e incluya la URL. |
La tarea de la canalización llama a la URL cuando se ejecuta la canalización. Para las acciones POST, PUT y PATCH, debe incluir una carga útil. En la carga útil, puede enlazar las propiedades de la canalización y de la tarea cuando se ejecuta la canalización. |
Observe este ejemplo. |
Ejemplo de uso del complemento de REST: Puede agregar una tarea de REST para obtener la información necesaria para una tarea de canalización posterior. |
Al igual que si usa el complemento de REST para invocar una API, puede incluir una tarea de sondeo en la canalización para invocar REST API y sondearla hasta que finalice y la tarea de la canalización cumpla los criterios de salida. Consulte Qué tipos de tareas están disponibles en Automation Pipelines.
También puede usar las REST API para importar y exportar una canalización, y utilizar los scripts de ejemplo para ejecutar una canalización.
En este procedimiento, la tarea de REST obtiene una etiqueta de construcción de un servicio, y una tarea de CI posterior utiliza la etiqueta de construcción para obtener un número de construcción de CICD.
Procedimiento
- Para crear una canalización, haga clic en .
- En la etapa de la canalización, haga clic en + Tarea secuencial.
- En el panel de tareas, agregue la tarea de REST:
- Introduzca un nombre para la tarea.
- En el menú desplegable Tipo, seleccione REST.
- En el área Solicitud de REST, seleccione GET.
Para que la tarea de REST solicite datos de otra aplicación, seleccione el método GET. Para enviar datos a otra aplicación, seleccione el método POST.
- Introduzca la URL que identifica el endpoint de REST API utilizado para obtener la etiqueta de compilación. Por ejemplo:
https://devops.mycompany.com:8001/job/service-build/api/json
Nota:
Automation Pipelines no admite
%2F
como codificación de URL para
/
como en:
https://gitlab.com/api/v4/projects/1234567/repository/files/FOLDERNAME%2Ftest.yaml
Al especificar el endpoint de REST API, utilice un formato de URL básico, como el siguiente:
https://gitlab.com/api/v4/projects/1234567/repository/files/FOLDERNAME/test.yaml
Para que una tarea de REST importe datos desde otra aplicación, puede incluir la variable de carga útil. Por ejemplo, para una acción de importación, puede introducir
${Stage0.export.responseBody}
. Si el tamaño de los datos de respuesta supera los 5 MB, es posible que se produzca un error en la tarea de REST.
Utilice variables secretas para ocultar y cifrar información confidencial. Utilice variables restringidas para las cadenas, las contraseñas y las URL que deben estar ocultas y cifradas, así como para restringir el uso en ejecuciones. Por ejemplo, utilice una variable secreta para una contraseña o una URL. Puede usar variables de tipo secreto y restringido en cualquier tipo de tarea de la canalización.
- Para autorizar la tarea, haga clic en Agregar encabezados e introduzca los valores y las claves de encabezado, por ejemplo:
Key |
Valor |
Aceptar |
aplicación/json |
Tipo de contenido |
aplicación/json |
- Agregue una tarea posterior que utilice información de la respuesta de la tarea de REST.
- Para guardar la canalización, haga clic en Guardar.
- En la pestaña Canalización, haga clic en Habilitar canalización.
- Haga clic en Guardar y, a continuación, haga clic en Cerrar.
- Haga clic en Ejecutar.
- Para ver la ejecución de la canalización, haga clic en Ejecuciones.
- Para comprobar que la tarea de REST devuelve la información esperada, examine la ejecución de la canalización y los resultados de la tarea.
- Una vez que se complete la canalización, para confirmar que la otra aplicación devolvió los datos solicitados, haga clic en el vínculo a la ejecución de la canalización.
- Haga clic en la tarea de REST de la canalización.
- En la ejecución de la canalización, haga clic en la tarea, observe los detalles de la tarea y compruebe que la tarea de REST devolvió los resultados esperados.
Los detalles de la tarea muestran el código de respuesta, el cuerpo, las claves de encabezado y los valores.
- Para ver la salida de JSON, haga clic en VER SALIDA DE JSON.
Resultados
Enhorabuena. Ha configurado una tarea de REST que ha invocado REST API y enviado información entre Automation Pipelines y otra aplicación mediante el complemento de REST.
Qué hacer a continuación
Siga utilizando tareas de REST en las canalizaciones para ejecutar comandos e integrar Automation Pipelines con otras aplicaciones para poder desarrollar y distribuir aplicaciones de software. Considere la posibilidad de usar tareas de sondeo para sondear la API hasta que finalice y la tarea de canalización cumpla los criterios de salida.