Jenkinsfile Checkout SCM

Jenkinsfile Checkout SCM

La administración del código fuente o SCM se refiere al sistema de control de versiones (VCS) que se utiliza para administrar el código fuente de un proyecto. Jenkins admite múltiples sistemas SCM que incluyen GIT, Subversion, Mercurial y muchos otros.

Durante la configuración del proyecto, podemos especificar el repositorio SCM donde se almacena el código fuente del proyecto. Jenkins luego verifica periódicamente el repositorio de los cambios. Si detecta alguna nueva compromiso o actualización, activa automáticamente una compilación de un proyecto.

En un Jenkinsfile, podemos definir el paso SCM de pago para recuperar el código fuente para la tubería del repositorio SCM especificado. Este paso suele ser el primer paso en un Jenkinsfile, asegurando que el código fuente esté disponible para el resto de la tubería.

Jenkins SCM Step Plugin

El complemento de paso Jenkins SCM permite que las tuberías de Jenkins usen los complementos estándar de Jenkins SCM para verificar el código fuente desde una fuente SCM. Esto proporciona opciones de pago extensibles, especificando las diversas fuentes de SCM, ramas específicas y más.

Para usar este complemento, debe instalarlo en su controlador Jenkins. Abra el tablero de Jenkins y seleccione "Administrar Jenkins" en el menú izquierdo. Navegue a la página Administrar complementos -> complementos disponibles y busque "Paso SCM".

Usando el paso Jenkins SCM

Una vez que tengamos instalado el complemento SCM, podemos usar el complemento SCM de pago como se muestra en el siguiente ejemplo de tubería:

tubería
Agente etiqueta 'my-agent'
etapas
etapa ('construir')
pasos
Vista SCM
SH hacer



En el ejemplo anterior, usamos el paso SCM de pago para verificar la fuente y ejecutar la compilación usando el comando Make.

Puede especificar las diversas fuentes de SCM, como AWS Code Pipeline, Bazaar SCM, Bitkeeper, Mercuria, Open Shift Images, Files System y más.

La siguiente imagen muestra las fuentes SCM aceptadas para el paso de pago:

Fuente: Jenkins SCM Documentation.

El siguiente ejemplo muestra cómo puede especificar la fuente SCM y otras opciones, como las credenciales:

SCM de comprobación: [$ clase: 'MercurialSCM', Fuente: 'ssh: // [email protected]/user/repo ', limpio: true, credencialsid:' 1234-5678-ABCD '], encuesta: falso

En el ejemplo anterior, el bloque SCM de pago especifica SCM desde el cual el paso de pago obtiene el código fuente.

También definimos la configuración para el SCM de destino, incluida la URL y las credenciales para el servidor.

En este caso, la [clase $: 'MercurialSCM'] se define utilizando el SCM mercurial para conectarse al repositorio.

A continuación, utilizamos la opción de origen para especificar la URL del repositorio que es un repositorio mercurial que está alojado en bitbucket.

También definimos la opción limpia que le dice a Jenkins que realice un pago "limpio". Esto le permite a Jenkins descartar cualquier cambio local y consulte una copia nueva del repositorio.

La opción CredentialSID especifica un conjunto de ID de credenciales para autenticarse con el repositorio de destino.

Finalmente, la encuesta de opción se establece en falso. Esto evita que Jenkins encueste el repositorio de cambios. Por lo tanto, Jenkins no activará automáticamente una compilación si se detectan nuevas compromisos o actualizaciones en el repositorio. Tenemos que activar manualmente una compilación o usar otros medios (como un webhook) para activar una compilación.

Conclusión

Exploramos los fundamentos de usar el paso de pago SCM en Jenkins para controlar el código fuente de un repositorio determinado.