Preparar certificación Azure DevOps Engineer Expert

Mapa necesario para obtener la certificación Azure DevOps Engineer Expert

Hace algunos meses obtuve el certificado de Azure Solutions Architect Expert. Mi siguiente objetivo a nivel de certificaciones es el DevOps Engineer Expert, que consta de dos exámenes, el AZ-400 que es el de Microsoft DevOps Solutions y luego hay que tener un examen previo, que puede ser el de Azure Administrator Associate o el de Azure Developer Associate. En mi caso, como tengo mucha experiencia en el tema de desarrollo y algo menos en el de administración, voy a aprovechar para hacer el de administrador, el AZ-104.

En este primer artículo os voy a comentar como voy a preparar la certificación y mas adelante, cuando realice los exámenes, os comentaré que tal.

Sigue leyendo Preparar certificación Azure DevOps Engineer Expert

Como hacer Git Flow con Azure Repos

Hace ya unos cuantos años, en 2010, Vincent Driessen escribió una entrada que titulo «Un modelo exitoso de ramas para Git«. Han pasado 10 años y el modelo que definió sigue siendo extensamente usado. A ese modelo lo llamó Git Flow y aunque el mismo recomienda otros modelos mas sencillos en algunos escenarios (que abordaré en futuras entradas y videos), a día de hoy es un sistema muy utilizado.

En el siguiente video muestro que es y como usar Git Flow, usando Azure Repos y Visual Studio.

El sistema se basa en la gestión de un sistema de ramas donde existen dos ramas principales: master y develop. A partir de ahí podemos trabajar con ramas de feature, de hotfix y de releases.

Modelo de ramas propuesto por Git Flow
Modelo de ramas propuesto por Git Flow

Integración continua y despliegue automatizado en Azure con Azure DevOps

Os dejo por aquí la sesión que grabé el otro día en directo. En esta sesión se crea desde cero una implantación de integración y despliegue continuos de una web en Azure, usando Azure DevOps.

Espero que os guste. ¡Nos leemos!

Vincular Azure DevOps a una suscripción de Azure

Un escenario muy común en Azure DevOps, es que tu pipeline de Release tenga que desplegar sobre una suscripción de Azure que no es la que tienes vinculada por defecto. En esta entrada vamos a ver como podemos vincular Azure DevOps y una suscripción de Azure.

Sigue leyendo Vincular Azure DevOps a una suscripción de Azure

Como pasar variables entre la Build y la Release en Azure DevOps

El otro día, montando un pileline en Azure DevOps, me encontré con una situación en la que según un valor que se obtiene en tiempo de Buid, tenia que ejecutar o no, una tarea en tiempo de Release.

Actualmente (no se si en el futuro lo implementarán) no se pueden pasar variables entre la build y la release, así que tuve que utilizar un pequeño workarround muy sencillo:

Guardar el valor en un fichero que añado al artifact, que luego leeré en la Release.

Existe en el marketplace una tarea que a priori hace esto mismo. Yo no la he probado pero parece que funciona. Si puedes, úsala y ya lo tendrás resuelto:

Variable Tools for Azure DevOps Services

Pero si estas trabajando para una organización, en la que no controlas la instalación de extensiones y que además tiene mucha burocracia, has de pensar muy bien cada petición de instalar nuevas extensiones. Si este es tu caso, aquí te explico como hacerlo con PowerShell.

Sigue leyendo Como pasar variables entre la Build y la Release en Azure DevOps

Como desplegar un Azure App Service sin tiempos de caída

Es muy probable que si estamos realizando y desplegando una API o una web usando App Services, necesitemos que nuestro producto este siempre on-line, sin dejar de dar servicio en ningún momento durante el proceso de despliegue. También es posible que quieras probar manualmente que todo funciona correctamente, pero sin que esto afecte a los usuarios en producción. O simplemente te puede interesar realizar pruebas A/B y redirigir parte del trafico entrante a distintos servicios. Para ello, Azure App Service ofrece los Staging Slots.

Hemos de tener en cuenta que esta característica no esta disponible en todos los niveles del servicio, por lo que en los niveles gratuitos, compartidos y el básico no podrás utilizarlo. También es algo normal, ya que es una característica útil en entornos productivos.

Listado de las características incluidas en el app service, entre ellas se encuentra staging slot, en este caso permite hasta cinco slots

Vamos a ver como crear y configurar un App Service que no deje de dar servicio durante un despliegue.

Sigue leyendo Como desplegar un Azure App Service sin tiempos de caída

Nuevo tema oscuro (dark) en Azure DevOps

En la nueva actualización del sprint 150 de Azure DevOps, han lanzado un nuevo tema oscuro (dark) para Azure DevOps, una cambio que puede parecer menor (solo es visual), pero que agradeceremos los que estamos acostumbrados a trabajar con el tema oscuro de Visual Studio.

Activarlo es muy sencillo, solo hay que ir a las opciones de usuario y seleccionar el tema:

¡Nos leemos!

Tareas de Azure DevOps: ARM Outputs

Voy a iniciar una serie de entradas para ir comentando algunas tareas de Azure DevOps que por un motivo u otro me han facilitado la vida. Voy a empezar con ARM Outputs. Esta tarea no viene por defecto y hay que descargarla e instalarla desde el Market.

Esta tarea nos permite obtener valores que hemos definido como outoputs en una plantilla ARM para poder utilizarlos posteriormente como variables en las siguientes tareas. Por ejemplo, podemos definir como outputs las distintas claves de servicios creados por ARM, que después podemos usar para insertar en valores de settings.

Sigue leyendo Tareas de Azure DevOps: ARM Outputs