README.md 1.98 KB
Newer Older
Enrique Garcia's avatar
Enrique Garcia committed
1
# README _.singularityci_ module
2 3 4 5 6

[![DOI](https://zenodo.org/badge/DOI/10.5281/zenodo.3834833.svg)](https://doi.org/10.5281/zenodo.3834833)

**PLEASE HAVE A LOOK TO THE LICENSING SECTION BELOW BEFORE IMPLEMENTING ANY PART OF THIS CODE INTO YOURS !!**

Enrique Garcia's avatar
Enrique Garcia committed
7
## Building Singularity Containers using the continuous integration in GitLab 
8 9

The source code contained in this folder is based on the following 
Enrique Garcia's avatar
Enrique Garcia committed
10
[GitLab-CI project](https://gitlab.com/singularityhub/gitlab-ci). You can  find a very didactic **tutorial** of how 
11 12
to implement this code [here](https://vsoch.github.io/2018/gitlab-singularity-ci/).

Enrique Garcia's avatar
Enrique Garcia committed
13
This software (composed of the files within this directory **AND** part of the the `.gitlab-ci.yml` file in the
Enrique Garcia's avatar
Enrique Garcia committed
14
root directory - the `build_singularity_image` stage) provide the necessary tools to:
15 16 17
 - Use a container image stored in the DockerHub site to create a Singularity container of your repository 
 (thus no need of having installed the Singularity source code), and upload it directly to your GitLab repository.
 - The Singularity recipe must be provided, of course.
18
 - In case the container is too large (10 Gb total storage limit for a single GitLab project), you must pass 
19
 through a cloud service (various examples of different services are shown in the tutorial and the original repository). 
20

Enrique Garcia's avatar
Enrique Garcia committed
21
## License of the `template_project_repository`:
22 23
The `template_project_repository` contains code from different projects. This 'mixing' can be done because:
 - Both 'parent' projects are Open Source.
Enrique Garcia's avatar
Enrique Garcia committed
24 25 26 27 28
 - None of the original licenses are copy-left.
 - Both `BSD 3-Clause` and `MIT`, are permissive licenses. All of these points mean that source code distributed with 
 a BSD 3-Clause license can be included in a project with a MIT license - and of course be re-distributed under `MIT`:
    - Note however, that the **original licenses** must be included in the resulting project and mentioned in the 
    LICENSE/documentation files.  
29

30
**PLEASE TAKE THE TIME TO CHECK AND VERIFY LICENSES AND THEIR COMPATIBILITIES** 
31