Para que funcione docker por medio de gitlab-runner es necesario modificar la configuración del runner agregando el nombre y la ip de la máquina como se muestra a continuación (archivo /etc/gitlab-runner/config.toml):
[[
[
tls_verify = false
disable_cache = false
extra_hosts = ["
[
Insecure = false
Luego de modificar el archivo se ejecuta:
En el artículo del runner se tiene registrado un proyecto llamado sample-gitlabci-cpp-project tomado de github.
├── helloworld.cpp
├── README
└── verify
El archivo helloworld.cpp tiene lo siguiente:
// 'Hello World!' program
#include <iostream >
{
}
El archivo verify.sh es el que genera la construcción:
#! /bin/bash
OUTPUT=`. /helloworld `
RETVAL=$?
else
fi
else
fi
Se tiene otro archivo que está oculto con nombre .gitlab-ci.yml, que contiene el proceso de construcción del contenedor docker con la ejecución del verify.sh:
# Specify the docker image to use (only used if using docker runners)
# See: http://doc.gitlab.com/ee/ci/docker/using_docker_images.html
# Define commands that run before each job's script
before_script:
- apt -get update
- apt -get install -y gcc g++
# Try t o compile our sampl e hello world app
# Compile our app
- g++ helloworld.cpp -o helloworld
# Verify that our compiled app works properly with a custom "test" script
- ./verify . sh
# Save the compiled output from the above for downloading via GitLab and in Gitlab 8.6 to use in future build steps
- helloworld
Ahora sólo queda ir a la sección build del proyecto y ejecutar un build, la siguiente figura muestra la ejecución del build como tal:
Como se ve en la figura la construción se dió sin problemas.
En siguientes artículos se mostrará el uso con node.js y con Django.
No hay comentarios:
Publicar un comentario