Skip to content
GitLab
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
bob
bob.db.mobio
Commits
c7ba6a7e
Commit
c7ba6a7e
authored
Oct 05, 2016
by
Amir Mohammadi
Committed by
Tiago de Freitas Pereira
Oct 13, 2016
Browse files
[Automatic] update links and the ci mostly
parent
2d623168
Pipeline
#4768
failed with stages
in 2 minutes and 37 seconds
Changes
2
Pipelines
1
Hide whitespace changes
Inline
Side-by-side
.gitlab-ci.yml
View file @
c7ba6a7e
# 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.
# 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.
# 1) Generic instructions (only change if you know what you're doing)
# -------------------------------------------------------------------
# Definition of our build pipeline
stages
:
-
build
-
test
-
docs
-
wheels
-
deploy
# Global variables
variables
:
CONDA_PREFIX
:
env
# ---------
# Templates
# ---------
# Template for the build stage
# Needs to run on all supported architectures, platforms and python versions
...
...
@@ -27,104 +22,98 @@ variables:
stage
:
build
before_script
:
-
git clean -ffdx
-
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/"
-
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
script
:
-
./bin/buildout
-
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}
-
./_ci/build.sh
after_script
:
-
rm -rf ${CONDA_PREFIX}
-
./_ci/after_build.sh
artifacts
:
expire_in
:
1
day
expire_in
:
1
week
paths
:
-
bootstrap-conda.sh
-
_ci/
-
dist/
-
sphinx/
# 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
# 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
:
-
./bootstrap-conda.sh ${CONDA_FOLDER} ${PYTHON_VER} ${CONDA_PREFIX}
-
source ${CONDA_FOLDER}/bin/activate ${CONDA_PREFIX}
-
pip install --use-wheel --no-index --pre dist/*.whl
-
./_ci/install.sh _ci
#updates
-
./_ci/before_test.sh
script
:
-
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
-
./_ci/test.sh
after_script
:
-
rm -rf ${CONDA_PREFIX}
-
./_ci/after_test.sh
# Template for the wheel uploading stage
# 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)
# Needs to run against one supported architecture, platform and python version
.wheels_template
:
&wheels_job
stage
:
wheels
environment
:
intranet
only
:
-
master
-
tags
-
/^v\d+\.\d+\.\d+([abc]\d*)?$/
# PEP-440 compliant version (
tags
)
before_script
:
-
curl --silent https://gitlab.idiap.ch/bob/bob/snippets/8/raw | tr -d '\r' > upload-wheel.sh
-
chmod 755 upload-
wheel.sh
-
./_ci/install.sh _ci
#updates
-
./_ci/before_
wheel
s
.sh
script
:
-
./upload-wheel.sh
-
./_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
:
-
curl --silent https://gitlab.idiap.ch/bob/bob/snippets/9/raw | tr -d '\r' > upload-sphinx.sh
-
chmod 755 upload-sphinx.sh
-
./_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
script
:
-
./upload-sphinx.sh
-
./_ci/deploy.sh
after_script
:
-
./_ci/after_deploy.sh
# 2) Package specific instructions (you may tune this if needed)
# --------------------------------------------------------------
# -------------
# Build Targets
# -------------
# Linux + Python 2.7: Builds, tests, uploads wheel
# Linux + Python 2.7: Builds, tests, uploads wheel
and deploys (if needed)
build_linux_27
:
<<
:
*
linux_
build_job
<<
:
*build_job
variables
:
&linux_27_build_variables
<<
:
*linux_build_variables
PYTHON_VER
:
"
2.7"
PYTHON_VERSION
:
"
2.7"
WHEEL_TAG
:
"
py27"
tags
:
-
conda-linux
...
...
@@ -139,6 +128,15 @@ test_linux_27:
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
:
...
...
@@ -147,10 +145,9 @@ wheels_linux_27:
# Linux + Python 3.4: Builds and tests
build_linux_34
:
<<
:
*
linux_
build_job
<<
:
*build_job
variables
:
&linux_34_build_variables
<<
:
*linux_build_variables
PYTHON_VER
:
"
3.4"
PYTHON_VERSION
:
"
3.4"
WHEEL_TAG
:
"
py3"
tags
:
-
conda-linux
...
...
@@ -164,12 +161,11 @@ test_linux_34:
-
conda-linux
# Linux + Python 3.5: Builds, tests
,
uploads wheel
# Linux + Python 3.5: Builds, tests
and
uploads wheel
build_linux_35
:
<<
:
*
linux_
build_job
<<
:
*build_job
variables
:
&linux_35_build_variables
<<
:
*linux_build_variables
PYTHON_VER
:
"
3.5"
PYTHON_VERSION
:
"
3.5"
WHEEL_TAG
:
"
py3"
tags
:
-
conda-linux
...
...
@@ -184,6 +180,7 @@ test_linux_35:
wheels_linux_35
:
<<
:
*wheels_job
variables
:
*linux_35_build_variables
dependencies
:
-
build_linux_35
tags
:
...
...
@@ -191,6 +188,7 @@ wheels_linux_35:
docs_linux_35
:
<<
:
*docs_job
variables
:
*linux_35_build_variables
dependencies
:
-
build_linux_35
tags
:
...
...
@@ -199,10 +197,9 @@ docs_linux_35:
# Mac OSX + Python 2.7: Builds and tests
build_macosx_27
:
<<
:
*
macosx_
build_job
<<
:
*build_job
variables
:
&macosx_27_build_variables
<<
:
*macosx_build_variables
PYTHON_VER
:
"
2.7"
PYTHON_VERSION
:
"
2.7"
WHEEL_TAG
:
"
py27"
tags
:
-
conda-macosx
...
...
@@ -218,10 +215,9 @@ test_macosx_27:
# Mac OSX + Python 3.4: Builds and tests
build_macosx_34
:
<<
:
*
macosx_
build_job
<<
:
*build_job
variables
:
&macosx_34_build_variables
<<
:
*macosx_build_variables
PYTHON_VER
:
"
3.4"
PYTHON_VERSION
:
"
3.4"
WHEEL_TAG
:
"
py3"
tags
:
-
conda-macosx
...
...
@@ -237,10 +233,9 @@ test_macosx_34:
# Mac OSX + Python 3.5: Builds and tests
build_macosx_35
:
<<
:
*
macosx_
build_job
<<
:
*build_job
variables
:
&macosx_35_build_variables
<<
:
*macosx_build_variables
PYTHON_VER
:
"
3.5"
PYTHON_VERSION
:
"
3.5"
WHEEL_TAG
:
"
py3"
tags
:
-
conda-macosx
...
...
@@ -251,4 +246,4 @@ test_macosx_35:
dependencies
:
-
build_macosx_35
tags
:
-
conda-macosx
\ No newline at end of file
-
conda-macosx
doc/conf.py
View file @
c7ba6a7e
...
...
@@ -30,9 +30,29 @@ extensions = [
import
sphinx
if
sphinx
.
__version__
>=
"1.4.1"
:
extensions
.
append
(
'sphinx.ext.imgmath'
)
imgmath_image_format
=
'svg'
else
:
extensions
.
append
(
'sphinx.ext.pngmath'
)
# Be picky about warnings
nitpicky
=
True
# Ignores stuff we can't easily resolve on other project's sphinx manuals
nitpick_ignore
=
[]
# Allows the user to override warnings from a separate file
if
os
.
path
.
exists
(
'nitpick-exceptions.txt'
):
for
line
in
open
(
'nitpick-exceptions.txt'
):
if
line
.
strip
()
==
""
or
line
.
startswith
(
"#"
):
continue
dtype
,
target
=
line
.
split
(
None
,
1
)
target
=
target
.
strip
()
try
:
# python 2.x
target
=
unicode
(
target
)
except
NameError
:
pass
nitpick_ignore
.
append
((
dtype
,
target
))
# Always includes todos
todo_include_todos
=
True
...
...
@@ -216,8 +236,13 @@ autodoc_default_flags = [
]
# For inter-documentation mapping:
from
bob.extension.utils
import
link_documentation
intersphinx_mapping
=
link_documentation
()
from
bob.extension.utils
import
link_documentation
,
load_requirements
sphinx_requirements
=
"extra-intersphinx.txt"
if
os
.
path
.
exists
(
sphinx_requirements
):
intersphinx_mapping
=
link_documentation
(
additional_packages
=
load_requirements
(
sphinx_requirements
))
else
:
intersphinx_mapping
=
link_documentation
()
# We want to remove all private (i.e. _. or __.__) members
# that are not in the list of accepted functions
...
...
Write
Preview
Supports
Markdown
0%
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!
Cancel
Please
register
or
sign in
to comment