DevOps serie CI/CD en SAP BTP (Parte 1)

Pues esta vez os traigo una serie de 9 capítulos de duración variable donde aprenderemos a configurar un servició de CI/CD. Algunas de las cosas que veréis os sonarán de otras entradas, así que algunas partes son actualizaciones ya que no he reaprovechado nada de los blogs anteriores.

Esta vez, incluso la introducción es distinta como podéis ver, esto es porque la manera de escribir ha sido un poco distinta, normalmente primero hago pruebas y luego escribo repitiendo lo que he hecho. Esta vez mientras montaba los servicios lo escribia.

Pero antes de empezar con esta serie, un poco de contexto para entender lo que vamos a hacer.

Un poco de contexto

El motivo de esta entrada es mostrar como montamos nuestro sistema de despliegues o sistema de continuos integration and delivery de manera fácil utilizando todo lo que tenemos disponible en SAP BTP.

Existen otras maneras de hacer estos despliegues como Bitbucket, AzureOps o Jenkins. Uses la herramienta que uses la idea detrás de este concepto no deja de ser la de poder desplegar aplicaciones o mejoras a nuestro software de una manera rápida y con una frecuencia alta.

Esto se consigue mediante la automatización de tareas, entra las que se encuentran el testing y el transporte del código.

Estos son algunos de los beneficios de de utilizar Integración continua.

6 Beneficios de la Integración Continua “CI” – SmartNodus

Esta es una pata mas del famoso Devops, que mediante algunas practicas, agrupan el modelado, desarrollo, despliegue y control del software de una manera ágil.

Sentando las bases de la metodología DevOps

Y aquí me voy a poner un poco critico, ya que una Devops no es una cultura, pero obliga a un cambio cultural en la parte de IT de la empresa. Si que es cierto que podríamos activar todos los servicios de BTP usados en esta serie y en otros post del blog y decir, hemos desarrollado un marco de Devops y a demás tenemos los mejores sistemas de CI/CD (Continuous integration and delivery), somos un ejemplo a seguir, pero…

  • Como automatizamos pruebas si los tiempos de desarrollo se acortan tanto que casi no se puede ni desarrollar el software con calidad.
  • Como definimos un flujo de trabajo continuo, por ejemplo con Kanban si los distintos departamentos no entienden que las tareas solo puede progresas, nunca ir para atrás para ser redefinidas a media construcción.

Estas son reflexiones que cualquier departamento de IT debería hacerse para moderniza su operativa. El objetivo de esta serie es que veáis los distintos pasos y sus dificultades o facilidades para que en el momento de implementar Devops (y en esta serie concreta CI/CD) podáis valorar la dificultad.

Espero que os guste y que lo disfrutéis igual que lo he disfrutado yo.

Preparativos en nuestras subaccount de desarrollo

Todos estos servicios los activaremos en nuestra cuenta de desarrollo que es donde se cuecen los cambios hacia los siguientes sistemas.

Activaremos estos servicios, “Cloud transport management”, “Continuous Integration & Delivery” y una instancia de
Launchpad Service. Esto lo hacemos ya que por un lado necesitamos la aplicación SaaS para que nos haga cada una de las acciones y por otro lado las instancias que nos permitirán tener APIs para conectar los distintos servicios.

Preparación del servicio Continuous Integration & Delivery

activamos el servicio

Veremos el servicio apunto cuando nos aparezca una instancia activa, con lo que ya podremos ir al servico de CI/CD

Preparación del servicio Transport cloud management

Como en el paso anterior vamos a crear una instancia de transport cloud management

Activaremos el tipo “Subscription” y seleccionaremos el plan “standard”

Este es el resultado:

Adicionalmente necesitaremos una instancia del transport management para poder conectar nuestro servicio de CI /CD con el transport management.

Estos serán los datos a seleccionar:

Una vez creada la instancia generaremos una service key:

En el wizard añadimos el Id de la key y pulsamos crear:

Destination a la subaccount despliegue

Solo nos queda crear una destination para poder conectar el transport management con nuestra subcuenta. Vamos al apartado de destinations, pero antes necesitaremos recopilar estos datos:

Zona y SubOrg:

Space:

Con estos datos tendremos el endpoint de publicación:

https://deploy-service.cfapps.<<ZONA>>.hana.ondemand.com/slprot/<<SUB_ORG>>/<<SPACE>>/slp

Y este es el resultado de la destination, en credenciales añadiremos los datos de nuestra cuenta CF

Toda la infraestructura apunto, en el siguiente capítulo veremos los permisos a asignar a nuestro usuario para acceder y utilizar toda la infraestructura.


Este post corresponde a una serie de post relacionados con DevOps y en concreto con la parte de CI/CD. Si te ha gustado suscribete, dale a la campanita de notificaciones y comparte en redes para estar a la última. Vota Like / Dislike para aportar feedback.

Deja una respuesta

Tu dirección de correo electrónico no será publicada.

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.