Make Jenkinsfiles use the indigo-dc shared library
Summary:
Jenkinsfile has been splitted in two: one for the main project and a specific one for DEEP-OC
- Logic seems to follow this path. Otherwise, we would need an additional step of cloning DEEP-OC repo (with a sh 'git clone ..' command) rather than using the more straightforward 'checkout scm' statement.
- Jenkinsfile@main-project triggers Jenkinsfile@DEEP-OC by referring to the job name in Jenkins
job_location = Pipeline-as-code/DEEP-OC-org/DEEP-OC-{{ cookiecutter.repo_name }}
- Jenkinsfile@DEEP-OC might substitute the automated build already configured. Thus additional checks can be done at this level (i.e. Dockerfile syntax, ..).
- New DEEP-OC repos can be automatically detected by the "GitHub organization" job type in Jenkins, filtering repository names starting with 'DEEP-OC-*'
Uses credentials defined at Jenkins
- No need of passing creds as parameters
- This might remove the need of asking for DockerHub login in cookiecutter execution (not done in this PR)
Style checks
- PEP8 and Pylint through Tox environments ('pep8' and 'pylint').
- Test tools are installed in
test-requirements.txt
file, triggered bytox
command.