Skip to content

Latest commit

 

History

History

.gitlab

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 

GitLab CI for elos

The goal of this is to provide a gitlab-ci setup which can be used to build and test the elos build on premise in self hosted gitlab instance. The official open source repository uses the GitHub-CI.

Aim of the Pipeline

  • build elos
  • run the unit tests
  • run the smoke tests
  • run the integration tests
    • integrate the integration test report into GitLab like the unit tests
  • lint the source code
  • run benchmarks
  • create a coverage report
  • publish the KPIs to a time series database
  • build the documentation
  • run the BaseOS Lab tests to test for other targets

How to enable the pipeline for a repository

To enable this pipeline in elos under Settings > CI/CD > General pipelines > CI/CD configuration file enter:

./gitlab/gitlab-ci.yml

Or follow the GitLab pipeline documentation for all the options.

Exported configuration variables

The gitlab-CI setup exports some variables which can be configured by the gitlab instance ti should run on. For details how to set those variables see gitlab:define-a-cicd-variable-in-the-ui.

SOURCES_URI:

Set this to a base URI to checkout dependencies like safu and samconf:

SOURCES_URI = https://${GIT_USER_TOKEN}@mygitlabinstance.com/<group>/

The default is the public github repository group https://github.com/Elektrobit/elos.

ELOS_DEPENDENCY_CONFIG:

Set this to define configuration file for install_deps script. See https://elektrobit.github.io/elos/ci/index.html for details about options to tune each dependency checkout and build.

ELOS_DEPENDENCY_CONFIG = ci/dependencies_emlix.json

The default uses a configuration file which in turn uses SOURCES_URI to checkout all dependencies.

How to extend the pipeline

For a documentation on how to add/modify follow the GitLab CI documentation

known issues