Creación del botón Desplegar en IBM Cloud
El botón Desplegar en IBM Cloud es una forma eficiente de compartir la app de origen Git público con otras personas para que puedan experimentar con el código y desplegarla en IBM Cloud mediante una cadena de herramientas. Este botón requiere una configuración mínima y puede insertarse en cualquier lugar que admita la marcación. El usuario que pulse el botón creará una copia del código en un nuevo repositorio Git (repo), de manera que la app original no se verá afectada.
Cuando el usuario pulsa el botón tienen lugar las siguientes acciones:
-
El usuario deberá crear una cuenta de IBM Cloud si no dispone de una cuenta activa. Puede crear una cuenta de prueba o una cuenta real.
-
El usuario puede pulsar el icono Delivery Pipeline para seleccionar una región, un grupo de recursos y un nombre de aplicación. El nombre de app sugerido es el mismo que el nombre de la cadena de herramientas, que se crea a partir del nombre del repositorio Git original y de la hora. El nombre de la cadena de herramientas también se puede editar.
-
Se crea una cadena de herramientas que incluye un nuevo clon privado del repositorio Git, un conducto para crear y desplegar cambios de código y un rastreador de problemas.
Si el directorio
.bluemix
contiene un archivotoolchain.yml
, el archivo se utilizará para especificar las integraciones de herramientas para la cadena de herramientas. Para obtener más información sobre el archivotoolchain.yml
, consulte Creación de plantillas de cadena de herramientas personalizadas. -
Si la app requiere un archivo de compilación, este se detectará automáticamente y se compilará la app.
-
Si se configura un conducto para el proceso de compilación y de despliegue, se utilizará un archivo
pipeline.yml
para desplegar la app. -
Si la app necesita un contenedor, se utiliza un archivo
pipeline.yml
que defina el IBM Cloud Kubernetes Service y un Dockerfile que defina una imagen, para desplegar la app en el IBM Cloud Kubernetes Service. -
Se desplegará la app en la organización de IBM Cloud que haya seleccionado el usuario.
Ejemplos del botón
Ejemplo del botón de la app de un repositorio Git Repos and Issue Tracking público:
Ejemplo del botón de la app de un repositorio GitHub público:
Creación de un botón
Para crear el botón Desplegar en IBM Cloud, copie y modifique una de las siguientes plantillas de fragmento de código. Especifique un repositorio de Git y una rama en el URL.
Creación de un botón en HTML
Para crear un botón en HTML, copie este fragmento de código e inserte un URL y una rama de repositorio de Git públicos.
<a href="https://cloud.ibm.com/devops/setup/deploy?repository=<git_repository_URL>&branch=<git_branch>"><img src="https://cloud.ibm.com/media/docs/images/icons/Deploy_to_cloud.svg" alt="Deploy to IBM Cloud" target="_blank"></a>
Si no incluye el parámetro branch
en el URL de repositorio del fragmento de código, el botón Desplegar en IBM Cloud tendrá como valor predeterminado la rama maestra del repositorio.
Creación de un botón en Markdown
Para crear un botón en Markdown, copie este fragmento de código e inserte un URL y una rama de repositorio de Git públicos.
[](https://cloud.ibm.com/devops/setup/deploy?repository=<git_repository_URL>&branch=<git_branch>)
Si no incluye el parámetro branch
en el URL de repositorio del fragmento de código, el botón Desplegar en IBM Cloud tendrá como valor predeterminado la rama maestra del repositorio.
Uso del fragmento de código del botón
Una vez que cree un fragmento de código del botón Desplegar en IBM Cloud, puede insertarlo en blogs, artículos, wikis, archivos léame, o en cualquier otro lugar que desee para promocionar su app.
Cuando personalice el fragmento de código para el botón Desplegar en IBM Cloud, tenga en cuenta que ambas plantillas utilizan una vía de acceso predeterminada a una imagen de botón externo en formato SVG y en inglés. Si prefiere almacenar la imagen localmente, puede descargarla y almacenarla en el repositorio de Git. Ajuste la vía de acceso para utilizar la ubicación relativa de la imagen.
Consideraciones sobre el repositorio
Revise estas consideraciones del repositorio que se utiliza en el botón Desplegar en IBM Cloud.
Requisitos del archivo de compilación
Si la app debe compilarse antes de que se pueda desplegar, debe incluir un archivo de compilación en el repositorio. Si se detecta un archivo script de construcción en el directorio raíz del repositorio, se desencadenará una compilación automatizada del código antes del despliegue.
Entre los compiladores soportados se incluye:
Requisitos del archivo de conducto
Para configurar el conducto para la cadena de herramientas en un directorio .bluemix
, incluya un archivo pipeline.yml
. Para cada archivo pipeline.yml
del directorio, se creará un conducto cuando se cree
una instancia de la cadena de herramientas.
Para crear un archivo de interconexión, consulte el archivo de ejemplo en la documentación Creación de plantillas de cadena de herramientas personalizadas. En el momento en que defina un conducto en la interfaz web, defina un conducto en el texto creando etapas y trabajos, estableciendo entradas y variables de entorno y añadiendo scripts. También puede ver una serie de archivos de interconexión más complejos en este proyecto de demostración.
Requisitos del Dockerfile del contenedor
Para desplegar una app en un contenedor utilizando el IBM Cloud Kubernetes Service, debe incluir un Dockerfile en el directorio raíz del repositorio y, en un directorio .bluemix
, incluya un archivo pipeline.yml
.
El Dockerfile actúa como un tipo de script de construcción para la app. Si se detecta un Dockerfile en el repositorio, la app se creará automáticamente en una imagen antes de que se despliegue en un contenedor. Si la propia app debe compilarse antes de que la app se compile en una imagen, incluya un script de compilación para la app y un Dockerfile.
Para obtener más información sobre la creación de Dockerfiles, consulte la documentación deDocker. Para obtener más información sobre Kubernetes, consulte Servicio de KuberenetesIBM Cloud.
Para crear manualmente un pipeline.yml
que sea específicamente para contenedores, consulte los ejemplos de en GitHub.