Skip to content
GitLab
Explore
Sign in
Primary navigation
Search or go to…
Project
bob.bio.csu
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Build
Pipelines
Jobs
Pipeline schedules
Artifacts
Deploy
Releases
Model registry
Operate
Environments
Monitor
Incidents
Analyze
Value stream analytics
Contributor analytics
CI/CD analytics
Repository analytics
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Keyboard shortcuts
?
Snippets
Groups
Projects
This is an archived project. Repository and other project resources are read-only.
Show more breadcrumbs
bob
bob.bio.csu
Commits
d8fb9400
There was a problem fetching the pipeline summary.
Commit
d8fb9400
authored
8 years ago
by
Tiago de Freitas Pereira
Browse files
Options
Downloads
Patches
Plain Diff
Reverted to the old ci
parent
d91631ef
No related branches found
No related tags found
1 merge request
!1
Standarization
Pipeline
#
Changes
1
Pipelines
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
.gitlab-ci.yml
+83
-77
83 additions, 77 deletions
.gitlab-ci.yml
with
83 additions
and
77 deletions
.gitlab-ci.yml
+
83
−
77
View file @
d8fb9400
# This build file heavily uses template features from YAML so it is generic
# enough for any Bob project. Don't modify it unless you know what you're
# doing.
# This build file is defined in two parts: 1) a generic set of instructions you
# probably **don't** need to change and 2) a part you may have to tune to your
# project. It heavily uses template features from YAML to help you in only
# changing a minimal part of it and avoid code duplication to a maximum while
# still providing a nice pipeline display on your package.
# 1) Generic instructions (only change if you know what you're doing)
# -------------------------------------------------------------------
# Definition of our build pipeline
stages
:
-
build
-
test
-
docs
-
wheels
-
deploy
# ---------
# Templates
# ---------
# Global variables
variables
:
CONDA_PREFIX
:
env
# Template for the build stage
# Needs to run on all supported architectures, platforms and python versions
...
...
@@ -22,101 +27,112 @@ stages:
stage
:
build
before_script
:
-
git clean -ffdx
-
mkdir _ci
-
c
url --silent "https://gitlab.idiap.ch/bob/bob.admin/raw/master/gitlab/install.sh" > _ci/install
.sh
-
chmod 755 _ci/install.sh
-
./_ci/install.sh _ci
#updat
es
-
./_ci/before_build.sh
-
curl --silent https://gitlab.idiap.ch/bob/bob/snippets/7/raw | tr -d '\r' > bootstrap-conda.sh
-
c
hmod 755 ./bootstrap-conda
.sh
-
./bootstrap-conda.sh ${CONDA_FOLDER} ${PYTHON_VER} ${CONDA_PREFIX}
variables
:
&build_variabl
es
BOB_DOCUMENTATION_SERVER
:
"
http://www.idiap.ch/software/bob/docs/latest/bob/%s/master/"
script
:
-
cp build.sh ./_ci
-
./_ci/build.sh
-
./bin/buildout -c buildout-before-patch.cfg
-
wget https://www.idiap.ch/software/bob/databases/latest/PythonFaceEvaluation.tar.bz2
-
mkdir PythonFaceEvaluation
-
tar -xjf PythonFaceEvaluation.tar.bz2 -C PythonFaceEvaluation
-
./bin/patch_CSU.py PythonFaceEvaluation
-
./bin/buildout buildout:csu-dir=./PythonFaceEvaluation
-
if [ -x ./bin/bob_dbmanage.py ]; then ./bin/bob_dbmanage.py all download --force; fi
-
./bin/sphinx-build doc sphinx
-
./bin/python setup.py bdist_wheel --python-tag ${WHEEL_TAG}
after_script
:
-
./_ci/after_build.sh
-
rm -rf ${CONDA_PREFIX}
artifacts
:
expire_in
:
1
week
expire_in
:
1
day
paths
:
-
_ci/
-
bootstrap-conda.sh
-
dist/
-
sphinx/
-
PythonFaceEvaluation/
# Template for the test stage - re-installs from uploaded wheels
# Template for building on a Linux machine
.build_linux_template
:
&linux_build_job
<<
:
*build_job
variables
:
&linux_build_variables
<<
:
*build_variables
CONDA_FOLDER
:
"
/local/conda"
CFLAGS
:
"
-D_GLIBCXX_USE_CXX11_ABI=0
-coverage"
CXXFLAGS
:
"
-D_GLIBCXX_USE_CXX11_ABI=0
-coverage"
# Template for building on a Mac OSX machine
.build_mac_template
:
&macosx_build_job
<<
:
*build_job
variables
:
&macosx_build_variables
<<
:
*build_variables
CONDA_FOLDER
:
"
/opt/conda"
MACOSX_DEPLOYMENT_TARGET
:
"
10.9"
CFLAGS
:
"
-pthread
-coverage"
CXXFLAGS
:
"
-pthread
-coverage"
LDFLAGS
:
"
-lpthread"
# Template for the test stage - re-install 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
-
./bootstrap-conda.sh ${CONDA_FOLDER} ${PYTHON_VER} ${CONDA_PREFIX}
-
source ${CONDA_FOLDER}/bin/activate ${CONDA_PREFIX}
-
conda install --yes -c conda-forge -p ${CONDA_PREFIX} opencv==2.4.12
-
pip install --use-wheel --no-index --pre dist/*.whl
script
:
-
cp test.sh ./_ci
-
./_ci/test.sh
-
cd ${CONDA_PREFIX}
-
python -c "from ${CI_PROJECT_NAME} import get_config; print(get_config())"
-
coverage run --source=${CI_PROJECT_NAME} ./bin/nosetests -sv ${CI_PROJECT_NAME}
-
coverage report
-
sphinx-build -b doctest ../doc ../sphinx
after_script
:
-
./_ci/after_test.sh
-
rm -rf ${CONDA_PREFIX}
# Template for the wheel uploading stage
# Needs to run against one supported architecture, platform and python version
# Needs to run against one combination of python 2.x and 3.x if it is a python
# only package, otherwise, needs to run in both pythons to all supported
# architectures (Linux and Mac OSX 64-bit)
.wheels_template
:
&wheels_job
stage
:
wheels
environment
:
intranet
only
:
-
master
-
/^v\d+\.\d+\.\d+([abc]\d*)?$/
# PEP-440 compliant version (
tags
)
-
tags
before_script
:
-
./_ci/install.sh _ci
#updates
-
./_ci/before_
wheel
s
.sh
-
curl --silent https://gitlab.idiap.ch/bob/bob/snippets/8/raw | tr -d '\r' > upload-wheel.sh
-
chmod 755 upload-
wheel.sh
script
:
-
./_ci/wheels.sh
after_script
:
-
./_ci/after_wheels.sh
-
./upload-wheel.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
# 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
-
curl --silent https://gitlab.idiap.ch/bob/bob/snippets/9/raw | tr -d '\r' > upload-sphinx.sh
-
chmod 755 upload-sphinx.sh
script
:
-
./_ci/deploy.sh
after_script
:
-
./_ci/after_deploy.sh
-
./upload-sphinx.sh
# -------------
# Build Targets
# -------------
# 2) Package specific instructions (you may tune this if needed)
# --------------------------------------------------------------
# Linux + Python 2.7: Builds, tests, uploads wheel
and deploys (if needed)
# Linux + Python 2.7: Builds, tests, uploads wheel
build_linux_27
:
<<
:
*build_job
<<
:
*
linux_
build_job
variables
:
&linux_27_build_variables
PYTHON_VERSION
:
"
2.7"
<<
:
*linux_build_variables
PYTHON_VER
:
"
2.7"
WHEEL_TAG
:
"
py27"
tags
:
-
conda-linux
...
...
@@ -129,25 +145,15 @@ test_linux_27:
tags
:
-
conda-linux
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
docs_linux_27
:
<<
:
*docs_job
dependencies
:
-
build_linux_27
tags
:
-
conda-linux
docs_linux_27
:
<<
:
*docs_job
variables
:
*linux_27_build_variables
wheels_linux_27
:
<<
:
*wheels_job
dependencies
:
-
build_linux_27
tags
:
...
...
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment