Inicio > CI, Delphi, GIT, Jenkins, TDD > 2- Integración continua con Delphi (Jenkins)-Instalación

2- Integración continua con Delphi (Jenkins)-Instalación

domingo, 8 de diciembre de 2019 Dejar un comentario Ir a comentarios

imageEn la anterior entrada empezamos con el tema de Integración continua. Vimos cómo crear y trabajar por encima con repositorios GIT.

A continuación os adjunto los links a las otras entradas de esta serie (las anteriores y las previstas):

1- Integración continua con Delphi (GIT)
2- Integración continua con Delphi (Jenkins) – Instalación
3- Integración continua con Delphi (Jenkins) – Primer proyecto
4- Integración continua con Delphi (Jenkins) – Pipelines

Una vez visto el paso previo de GIT, lo siguiente que necesitamos  en “montar” nuestro servidor de automatización. Para ello he escogido Jenkins. Jenkins en un “Servidor de Automatización” Open Source escrito en java y que está basado en Hudson.

Admite herramientas de control de versiones como CVS, Subversion, Git, Mercurial, Perforce y Clearcase y puede ejecutar proyectos basados en Apache Ant y Apache Maven, así como secuencias de comandos de consola y programas por lotes de Windows.

A continuación vamos a ver los pasos necesarios para instalar y configurar Jenkins.

INSTALACIÓN DE JENKINS

Una vez descargado el paquete correspondiente a nuestro sistema, comenzamos la instalación. Actualmente está disponible la versión v2.202, pero la verdad es que tanto las actualizaciones del sistema, como la de los múltiples plugins que posee son muy frecuentes.

image

Captura_2019-10-31 08_54_05

Jenkins se instala como un servicio de Windows y la instalación no tiene más opciones que el directorio de destino, que podemos dejar el que propone por defecto. El acceso se realiza a través de un navegador web y utiliza por defecto el puerto 8080.

Una vez finalizada la instalación podemos comprobar que la consola de Servicios de Windows que se ha instalado correctamente y que está “Iniciado”. Se abrirá una ventana del navegador a la dirección:   http://localhost:8080/

Lo primero que se nos solicita es un “Password de Inicialización”. Simplemente hemos de buscarlo en la ruta donde se nos indica y pegarlo en el espacio habilitado en la pantalla.

image

Lo siguiente que hace es instalar los plugins que la instalación propone por defecto y las dependencias que necesitan para funcionar. Posteriormente desde la configuración podemos instalar más según nuestras necesidades.

Entre los que se instalan por defecto podemos ver que está el de GIT y SVN; El de SSH y la extensión para poder enviar Mails. También los relacionados con pipelines.

image

Una vez completado este paso, nos pedirá definir el usuario Administrador:

image

Por último Jenkins nos pide que cambiemos la URL de localhost por la IP.

Una vez completada la configuración, podremos hacer “login” como administradores (con el usuario definido anteriormente) para poder acceder al “Panel de Control” de Jenkins, donde veremos una imagen como esta:

image

CONFIGURACION BÁSICA DE JENKINS

Lo siguiente es configurar lo mínimo para que Jenkins pueda automatizar un proyecto.

CUENTA DE INICIO

Este es un paso muy importante si queremos que posteriormente Jenkins compile correctamente los proyectos de Delphi, ya sea mediante línea de comandos o mediante el plugin de RAD Studio.  Por defecto, Jenkins instala el servicio para iniciarlo desde la “Cuenta local del Sistema”. Necesitamos cambiar esa cuenta a la de nuestro “usuario local”. Si no lo hacemos así, es posible que luego el compilador tenga problemas para encontrar las librerías que necesita.

Para ello, accedemos a la consola de administración de Servicios y seleccionamos las propiedades del servicio de Jenkins. En la pestaña de “Iniciar sesión” es necesario modificar la cuenta de inicio.

image

Debemos desactivar la «Cuenta del sistema» y colocar la del usuario con la que hemos iniciado la sesión. Tendremos que rellenar usuario y contraseña y una vez guardados los cambios reiniciar el servicio (desde la propia consola –Acción/Reiniciar-).

image

CONFIGURAR GIT

En la entrada anterior vimos cómo instalar y realizar tareas con GIT. Si estamos instalando el Servidor de Jenkins en una máquina diferente, también deberemos instalarlo aquí. En este caso sin necesidad de herramientas gráficas (TortoiseGIT/GITExtensions) ya que Jenkins no las necesita.

Accedemos a “Administrar Jenkins”/”Global Tool Configuration”. En la sección de GIT necesitamos configurar el path de acceso al ejecutable.

image

INSTALAR EL PLUGIN DE RAD STUDIO

A la hora de compilar nuestros proyectos, hay diferentes alternativas. Podemos utilizar directamente la herramienta de MSBuild, también ficheros .BAT donde llamemos al compilador con los parámetros necesarios o utilizar el plugin existente para RAD Studio.

Este plugin para Jenkins nos permite configurar el path de RAD Studio (o diferentes versiones que tengamos instaladas), de forma que también se pueden compilar los proyectos desde él.

Basta con instalar el plugin de RAD Studio desde la sección de “Administrar Plugins”.

image

Y configurarlo desde “Administrar Jenkins”/”Global Tool Configuration”. Como he dicho podemos configurar varias versiones de RAD Studio si deseamos compilar proyectos de diferentes versiones y luego utilizar en cada proyecto la que corresponda.

image

CONFIGURACIÓN PARA ENVÍO DE CORREOS

Lo siguiente que podemos configurar es el envío de correo, para obtener información por correo de las diferentes tareas y su resultado que se realizan en el servidor. Se puede hacer desde: “Administrar Jenkins”/”Configurar el sistema”.

Las configuraciones varían según el servidor a utilizar. Por ejemplo, una configuración para utilizar cuentas de GMail sería la siguiente (habilitando el uso de aplicaciones externas en la cuenta de GMail):

image

En la parte inferior aparece un botón para generar un mail de prueba. Si la prueba es satisfactoria, aparecerá el texto que hay en el recuadro y en la cuenta de Mail configurada, recibiréis un correo de prueba. Si queremos configurar otro servidor de correo, bastará modificar los parámetros de conexión (usuario, puerto, SSL,…).

Hasta aquí esta segunda entrada. Si necesitemos configurar alguna cosa más, lo haremos sobre la marcha, pero los elementos más importantes son los que hemos visto aquí.

Como siempre los comentarios, sugerencias y criticas “constructivas” son bienvenidas.

Hasta la próxima!!

Vota este post
Categories: CI, Delphi, GIT, Jenkins, TDD Tags: , , , ,
  1. David
    martes, 7 de enero de 2020 a las 10:46 | #1

    Hola,
    Entiendo que en cualquier caso hay que instalar el compilador de Delphi en el servidor donde corra el servicio del jenkins? Lo pregunto porque arriba comentas que se puede usar solo el msbuild a la hora de compilar pero entiendo que algo de delphi hará falta compilar en algún sitio.
    Saludos y gracias como siempre por estos artículos tan útiles

  2. David
    martes, 7 de enero de 2020 a las 10:49 | #2

    En el mensaje anterior me he dejado una palabra y se malentiende, tendría que ser:’algo de delphi hará falta para poder compilar…’

  3. jueves, 16 de enero de 2020 a las 20:26 | #3

    @David
    Correcto, en la máquina de compilación debes tener instalada una versión de Delphi.

  1. Sin trackbacks aún.