.gitlab-ci.yml
# Copyright (C) 2019-2021 Marcus Rickert
#
# See https://github.com/marcus67/python_base_app
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License along
# with this program; if not, write to the Free Software Foundation, Inc.,
# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
##################################################################################
# Please, beware that this file has been generated! Do not make any changes here #
# but only to python_base_app/templates/gitlab-ci.template.yml! #
##################################################################################
stages:
- build
- install_and_check
- analyze
- deploy
build_debian:
image: accso/docker-python-app:latest
stage: build
script:
- PYTHONPATH=contrib/python_base_app python3 ci_toolbox.py --execute-stage BUILD --use-dev-dir=.
artifacts:
paths:
- debian/*.deb
variables:
# Activate automatic checkout for all sub modules
GIT_SUBMODULE_STRATEGY: recursive
test_debian:
image: accso/docker-python-app:latest
stage: install_and_check
script:
- PYTHONPATH=contrib/python_base_app python3 ci_toolbox.py --execute-stage INSTALL
- PYTHONPATH=contrib/python_base_app python3 ci_toolbox.py --execute-stage TEST --use-dev-dir .
- codecov
artifacts:
paths:
- htmlcov
- coverage.xml
variables:
# Activate automatic checkout for all sub modules
GIT_SUBMODULE_STRATEGY: recursive
build_pypi:
image: accso/docker-python-app:latest
stage: build
script:
- PYTHONPATH=contrib/python_base_app python3 ci_toolbox.py --execute-stage BUILD --use-dev-dir=.
after_script:
- PYTHONPATH=contrib/python_base_app python3 ci_toolbox.py --execute-stage TEARDOWN
artifacts:
when: always
paths:
- dist/proxy-ping-0.1.2.tar.gz
variables:
# Suppress automatic checkout for all sub modules
GIT_SUBMODULE_STRATEGY: recursive
install_pypi:
image: accso/docker-python-app:latest
stage: install_and_check
script:
- PYTHONPATH=contrib/python_base_app python3 ci_toolbox.py --execute-stage INSTALL-PYPI-PACKAGE --use-dev-dir=.
- PYTHONPATH=contrib/python_base_app python3 ci_toolbox.py --execute-stage TEST --use-dev-dir .
after_script:
- PYTHONPATH=contrib/python_base_app python3 ci_toolbox.py --execute-stage TEARDOWN
artifacts:
when: always
paths:
- htmlcov
- coverage.xml
variables:
# Suppress automatic checkout for all sub modules
GIT_SUBMODULE_STRATEGY: recursive
analyze:
image: accso/docker-python-app:latest
stage: analyze
script:
- PYTHONPATH=contrib/python_base_app python3 ci_toolbox.py --execute-stage ANALYZE --use-dev-dir=.
after_script:
- PYTHONPATH=contrib/python_base_app python3 ci_toolbox.py --execute-stage TEARDOWN
variables:
# Suppress automatic checkout for all sub modules
GIT_SUBMODULE_STRATEGY: recursive
docker:
image: marcusrickert/docker-docker-ci:release-0.9.1
stage: deploy
script:
- PYTHONPATH=contrib/python_base_app python3 ci_toolbox.py --execute-stage BUILD_DOCKER_IMAGES --use-dev-dir=.
variables:
# Activate automatic checkout for all sub modules
GIT_SUBMODULE_STRATEGY: recursive