Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
bob
bob.buildout
Commits
4b712c9d
Commit
4b712c9d
authored
Feb 11, 2018
by
Amir MOHAMMADI
Browse files
Update the CI template [skip ci]
parent
eefd6ecb
Pipeline
#16443
skipped
Changes
1
Pipelines
1
Hide whitespace changes
Inline
Side-by-side
.gitlab-ci.yml
View file @
4b712c9d
# This build file heavily uses template features from YAML so it is generic
# This build file uses template features from YAML so it is generic enough for
# enough for any Bob project. Don't modify it unless you know what you're
# any Bob project. Don't modify it unless you know what you're doing.
# doing.
# Definition of global variables (all stages)
variables
:
CONDA_ROOT
:
"
${CI_PROJECT_DIR}/miniconda"
# Definition of our build pipeline
# Definition of our build pipeline order
stages
:
stages
:
-
build
-
build
-
test
-
docs
-
wheels
-
deploy
-
deploy
-
pypi
# ---------
# Build targets
# Templates
# ---------
# Template for the build stage
# Needs to run on all supported architectures, platforms and python versions
.build_template
:
&build_job
.build_template
:
&build_job
stage
:
build
stage
:
build
before_script
:
before_script
:
-
git clean -ffdx
-
mkdir _ci
-
mkdir _ci
-
curl --silent "https://gitlab.idiap.ch/bob/bob.admin/raw/master/gitlab/install.sh" > _ci/install.sh
-
curl --silent "https://gitlab.idiap.ch/bob/bob.admin/raw/master/gitlab/install.sh" > _ci/install.sh
-
chmod 755 _ci/install.sh
-
chmod 755 _ci/install.sh
-
./_ci/install.sh _ci
#update
s
-
./_ci/install.sh _ci
master
#installs ci support script
s
-
./_ci/before_build.sh
-
./_ci/before_build.sh
script
:
script
:
-
./_ci/build.sh
-
./_ci/build.sh
after_script
:
after_script
:
-
./_ci/after_build.sh
-
./_ci/after_build.sh
artifacts
:
cache
:
&build_caches
expire_in
:
1 week
paths
:
paths
:
-
_ci/
-
miniconda.sh
-
dist/
-
${CONDA_ROOT}/pkgs/*.tar.bz2
-
sphinx/
-
${CONDA_ROOT}/pkgs/urls.txt
# Template for the test stage - re-installs from uploaded wheels
# Needs to run on all supported architectures, platforms and python versions
.test_template
:
&test_job
stage
:
test
before_script
:
-
./_ci/install.sh _ci
#updates
-
./_ci/before_test.sh
script
:
-
./_ci/test.sh
after_script
:
-
./_ci/after_test.sh
# Template for the wheel uploading stage
# Needs to run against one supported architecture, platform and python version
.wheels_template
:
&wheels_job
stage
:
wheels
environment
:
intranet
only
:
-
master
-
/^v\d+\.\d+\.\d+([abc]\d*)?$/
# PEP-440 compliant version (tags)
before_script
:
-
./_ci/install.sh _ci
#updates
-
./_ci/before_wheels.sh
script
:
-
./_ci/wheels.sh
after_script
:
-
./_ci/after_wheels.sh
# Template for (latest) documentation upload stage
# Only one real job needs to do this
.docs_template
:
&docs_job
stage
:
docs
environment
:
intranet
only
:
-
master
before_script
:
-
./_ci/install.sh _ci
#updates
-
./_ci/before_docs.sh
script
:
-
./_ci/docs.sh
after_script
:
-
./_ci/after_docs.sh
# Template for the deployment stage - re-installs from uploaded wheels
.build_linux_template
:
&linux_build_job
# Needs to run on a single architecture only
# Will deploy your package to PyPI and other required services
# Only runs for tags
.deploy_template
:
&deploy_job
stage
:
deploy
environment
:
internet
only
:
-
/^v\d+\.\d+\.\d+([abc]\d*)?$/
# PEP-440 compliant version (tags)
except
:
-
branches
before_script
:
-
./_ci/install.sh _ci
#updates
-
./_ci/before_deploy.sh
script
:
-
./_ci/deploy.sh
after_script
:
-
./_ci/after_deploy.sh
# -------------
# Build Targets
# -------------
# Linux + Python 2.7: Builds, tests, uploads wheel and deploys (if needed)
build_linux_27
:
<<
:
*build_job
<<
:
*build_job
variables
:
&linux_27_build_variables
PYTHON_VERSION
:
"
2.7"
WHEEL_TAG
:
"
py27"
tags
:
tags
:
-
conda-linux
-
docker
image
:
continuumio/conda-concourse-ci
test_linux_27
:
artifacts
:
<<
:
*test_job
expire_in
:
1 week
variables
:
*linux_27_build_variables
paths
:
dependencies
:
-
_ci/
-
build_linux_27
-
${CONDA_ROOT}/conda-bld/linux-64/*.tar.bz2
tags
:
cache
:
-
conda-linux
<<
:
*build_caches
key
:
"
linux-cache"
wheels_linux_27
:
<<
:
*wheels_job
variables
:
*linux_27_build_variables
dependencies
:
-
build_linux_27
tags
:
-
conda-linux
deploy_linux_27
:
<<
:
*deploy_job
variables
:
*linux_27_build_variables
dependencies
:
-
build_linux_27
tags
:
-
conda-linux
# Linux + Python 3.4: Builds and tests
.build_macosx_template
:
&macosx_build_job
build_linux_34
:
<<
:
*build_job
<<
:
*build_job
variables
:
&linux_34_build_variables
PYTHON_VERSION
:
"
3.4"
WHEEL_TAG
:
"
py3"
tags
:
tags
:
-
conda-linux
-
macosx
artifacts
:
test_linux_34
:
expire_in
:
1 week
<<
:
*test_job
paths
:
variables
:
*linux_34_build_variables
-
_ci/
dependencies
:
-
${CONDA_ROOT}/conda-bld/osx-64/*.tar.bz2
-
build_linux_34
cache
:
tags
:
<<
:
*build_caches
-
conda-linux
key
:
"
macosx-cache"
# Linux + Python 3.5: Builds, tests and uploads wheel
build_linux_35
:
<<
:
*build_job
variables
:
&linux_35_build_variables
PYTHON_VERSION
:
"
3.5"
WHEEL_TAG
:
"
py3"
tags
:
-
conda-linux
test_linux_35
:
build_linux_27
:
<<
:
*test_job
<<
:
*linux_build_job
variables
:
*linux_35_build_variables
variables
:
dependencies
:
PYTHON_VERSION
:
"
2.7"
-
build_linux_35
tags
:
-
conda-linux
wheels_linux_35
:
<<
:
*wheels_job
variables
:
*linux_35_build_variables
dependencies
:
-
build_linux_35
tags
:
-
conda-linux
docs_linux_35
:
build_linux_36
:
<<
:
*docs_job
<<
:
*linux_build_job
variables
:
*linux_35_build_variables
variables
:
dependencies
:
PYTHON_VERSION
:
"
3.6"
-
build_linux_35
BUILD_EGG
:
"
true"
tags
:
artifacts
:
-
conda-linux
expire_in
:
1 week
paths
:
-
_ci/
-
dist/*.zip
-
sphinx
-
${CONDA_ROOT}/conda-bld/linux-64/*.tar.bz2
# Mac OSX + Python 2.7: Builds and tests
build_macosx_27
:
build_macosx_27
:
<<
:
*build_job
<<
:
*
macosx_
build_job
variables
:
&macosx_27_build_variables
variables
:
PYTHON_VERSION
:
"
2.7"
PYTHON_VERSION
:
"
2.7"
WHEEL_TAG
:
"
py27"
tags
:
-
conda-macosx
test_macosx_27
:
<<
:
*test_job
build_macosx_36
:
variables
:
*macosx_27_build_variables
<<
:
*macosx_build_job
variables
:
PYTHON_VERSION
:
"
3.6"
# Deploy targets
.deploy_template
:
&deploy_job
stage
:
deploy
before_script
:
-
./_ci/install.sh _ci master
#updates ci support scripts
script
:
-
./_ci/deploy.sh
dependencies
:
dependencies
:
-
build_linux_27
-
build_linux_36
-
build_macosx_27
-
build_macosx_27
-
build_macosx_36
tags
:
tags
:
-
conda-macosx
-
deployer
# Mac OSX + Python 3.4: Builds and tests
deploy_beta
:
build_macosx_34
:
<<
:
*deploy_job
<<
:
*build_job
environment
:
beta
variables
:
&macosx_34_build_variables
only
:
PYTHON_VERSION
:
"
3.4"
-
master
WHEEL_TAG
:
"
py3"
tags
:
-
conda-macosx
test_macosx_34
:
<<
:
*test_job
variables
:
*macosx_34_build_variables
dependencies
:
-
build_macosx_34
tags
:
-
conda-macosx
deploy_stable
:
<<
:
*deploy_job
environment
:
stable
only
:
-
/^v\d+\.\d+\.\d+([abc]\d*)?$/
# PEP-440 compliant version (tags)
except
:
-
branches
# Mac OSX + Python 3.5: Builds and tests
build_macosx_35
:
<<
:
*build_job
variables
:
&macosx_35_build_variables
PYTHON_VERSION
:
"
3.5"
WHEEL_TAG
:
"
py3"
tags
:
-
conda-macosx
test_macosx_35
:
pypi
:
<<
:
*test_job
stage
:
pypi
variables
:
*macosx_35_build_variables
environment
:
pypi
only
:
-
/^v\d+\.\d+\.\d+([abc]\d*)?$/
# PEP-440 compliant version (tags)
except
:
-
branches
before_script
:
-
./_ci/install.sh _ci master
#updates ci support scripts
script
:
-
./_ci/pypi.sh
dependencies
:
dependencies
:
-
build_
macos
x_3
5
-
build_
linu
x_3
6
tags
:
tags
:
-
conda-macosx
-
deployer
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment