Cuando se utiliza una tarea de plantilla de nube en Code Stream, una pregunta común es cómo utilizar los resultados de esa tarea en una tarea posterior de la canalización. Para usar los resultados de una tarea de plantilla de nube, como una máquina de nube, debe saber cómo encontrar las propiedades de recursos en los detalles de implementación de la tarea de plantilla de nube y la dirección IP de la máquina de nube.

Por ejemplo, los detalles de implementación de una plantilla de VMware Cloud incluyen el recurso de máquina de nube y su dirección IP. En la canalización, puede utilizar la máquina de nube y la dirección IP como una variable para enlazar una tarea de plantilla de nube a una tarea de REST.

El método que utiliza para buscar la dirección IP de la máquina de nube no es típico, ya que la implementación de la plantilla de VMware Cloud debe finalizar antes de que los detalles de la implementación estén disponibles. A continuación, puede utilizar los recursos de la implementación de la plantilla de VMware Cloud para enlazar las tareas de la canalización.

  • Las propiedades de recursos que aparecen en una tarea de plantilla de nube de la canalización se definen en la plantilla de VMware Cloud en Cloud Assembly.
  • Es posible que no sepa cuándo finalizó la implementación de esa plantilla de nube.
  • Una tarea de plantilla de nube en Code Stream solo puede mostrar las propiedades de los resultados de la plantilla de VMware Cloud una vez finalizada la implementación.

Este ejemplo puede resultar especialmente útil si implementa una aplicación e invoca varias API. Por ejemplo, si utiliza una tarea de plantilla de nube que invoca una plantilla de VMware Cloud, que a su vez implementa una aplicación de WordPress con una REST API, puede localizar la dirección IP de la máquina implementada en los detalles de la implementación y utilizar la API para probarla.

La tarea de plantilla de nube permite utilizar el enlace de variables al mostrar los detalles del tipo de rellenado automático. Dependerá de cómo se enlaza la variable.

En este ejemplo se muestra cómo hacerlo:

  • Buscar los detalles de la implementación y las propiedades de los recursos de la tarea de plantilla de nube en una canalización que se ejecutó correctamente.
  • Buscar la dirección IP de la máquina de nube en la sección de recursos de los detalles de la implementación.
  • Agregar una tarea de REST posterior a la tarea de plantilla de nube en la canalización.
  • Enlazar la tarea de plantilla de nube a la tarea de REST mediante la dirección IP de la máquina de nube en la dirección URL de la tarea de REST.
  • Ejecutar la canalización y ver el trabajo de enlace de la tarea de plantilla de nube en la tarea de REST.

Requisitos previos

  • Compruebe que cuenta con una plantilla de VMware Cloud en funcionamiento y con una versión.
  • Compruebe que la implementación de la plantilla de VMware Cloud se haya realizado correctamente en Cloud Assembly.
  • Compruebe que cuenta con una canalización que incluya una tarea de plantilla de nube que utilice esa plantilla de VMware Cloud.
  • Compruebe que la canalización se haya ejecutado y completado correctamente.

Procedimiento

  1. En la canalización, busque la dirección IP de la máquina de nube en la sección de recursos de los detalles de implementación de tareas de la plantilla de nube.
    1. Haga clic en Acciones > Ver ejecuciones.
    2. En una ejecución de canalización correcta, haga clic en el vínculo de ejecución de la canalización.
      La ejecución de la canalización muestra el estado de finalización e incluye un vínculo a la ejecución de la canalización.
    3. En el nombre de la canalización, haga clic en el vínculo de la Tarea.
      Desde la ejecución de la canalización, puede hacer clic en el vínculo a la tarea y ver los detalles.
    4. En el área Resultados, busque los detalles de la implementación.
      En los detalles de la tarea de canalización, el área de salida muestra los detalles y un vínculo a la implementación.
    5. En la sección de recursos de los detalles de la implementación, busque el nombre de la máquina de nube.
      Incluirá la sintaxis del nombre de la máquina de nube en la dirección URL de la tarea de REST.
    6. Para buscar la expresión de enlace de la propiedad de resultados de la tarea de plantilla de nube, haga clic en Ver salida de JSON, busque la propiedad de dirección y, a continuación, busque la dirección IP de la máquina de nube.
      La expresión de enlace aparece debajo del icono de propiedad y de búsqueda en los resultados de JSON.
      Para buscar una expresión, como una dirección de máquina de nube, puede utilizar el buscador de rutas en la parte inferior de los detalles de la tarea.
      La propiedad del recurso de dirección muestra la dirección IP de la máquina de nube. Por ejemplo:
      "resources": {
      		"Cloud_Machine_1[0]": {
      			"name": "Cloud_Machine_1[0]",
      			"powerState": "ON",
      			"address": "10.108.79.51",
      			"resourceName": "Cloud_Machine_1-mcm187515-152919380820"
  2. Vuelva al modelo de canalización e introduzca la URL en la tarea de REST.
    1. Haga clic en Acciones > Ver canalización.
    2. Haga clic en la tarea de REST.
    3. En el área URL de la solicitud de REST, escriba $, seleccione la Etapa, Tarea, resultados, deploymentDetails e introduzca los recursos.
      La capacidad de escritura anticipada con relleno automático está disponible hasta el momento en el que debe introducir los recursos.
    4. Introduzca el resto del recurso de la máquina de nube de los detalles de la implementación como: {'Cloud_Machine_1[0]'].address}
      En la tarea de REST, puede introducir la expresión de la dirección de máquina de nube.
      Para la entrada de la máquina de nube, debe utilizar la notación de corchetes como se muestra.
    El formato de la URL completa es: ${Stage0.Task0.output.deploymentDetails.resources{'Cloud_Machine_1[0]'].address}
  3. Ejecute la canalización y observe que la tarea de REST use la máquina de nube y la dirección IP de los resultados de la tarea de la plantilla de nube como la URL que se va a probar.

Resultados

Enhorabuena. Se encontró el nombre y la dirección IP de la máquina de nube en los detalles de implementación y los resultados de JSON de una tarea de plantilla de nube, y se utilizan para enlazar la salida de la tarea de la plantilla de nube a la entrada de la URL de la tarea de REST en la canalización.

Qué hacer a continuación

Siga explorando el uso de variables de enlace de los recursos en la tarea de plantilla de nube con otras tareas de la canalización.