mirror of
https://github.com/bec-project/ophyd_devices.git
synced 2025-06-02 01:50:40 +02:00
75 lines
1.8 KiB
YAML
75 lines
1.8 KiB
YAML
# This file is a template, and might need editing before it works on your project.
|
|
# Official language image. Look for the different tagged releases at:
|
|
# https://hub.docker.com/r/library/python/tags/
|
|
image: $CI_DOCKER_REGISTRY/python:3.8
|
|
|
|
#commands to run in the Docker container before starting each job.
|
|
before_script:
|
|
- pip install -e .[dev]
|
|
|
|
# different stages in the pipeline
|
|
stages:
|
|
- Formatter
|
|
- Test
|
|
- AdditionalTests
|
|
- Deploy
|
|
|
|
formatter:
|
|
stage: Formatter
|
|
script:
|
|
- pip install black
|
|
- black --check --diff --color --line-length=100 ./
|
|
|
|
pytest:
|
|
stage: Test
|
|
script:
|
|
- pytest -v --random-order ./tests
|
|
|
|
tests-3.9:
|
|
stage: AdditionalTests
|
|
image: $CI_DOCKER_REGISTRY/python:3.9
|
|
needs: ["pytest"]
|
|
script:
|
|
- pytest -v --random-order ./tests
|
|
allow_failure: true
|
|
|
|
tests-3.10:
|
|
extends: "tests-3.9"
|
|
stage: AdditionalTests
|
|
image: $CI_DOCKER_REGISTRY/python:3.10
|
|
allow_failure: true
|
|
|
|
tests-3.11:
|
|
extends: "tests-3.9"
|
|
stage: AdditionalTests
|
|
image: $CI_DOCKER_REGISTRY/python:3.11
|
|
allow_failure: true
|
|
|
|
semver:
|
|
stage: Deploy
|
|
needs: ["pytest"]
|
|
script:
|
|
- git config --global user.name "ci_update_bot"
|
|
- git config --global user.email "ci_update_bot@bec.ch"
|
|
- git checkout "$CI_COMMIT_REF_NAME"
|
|
- git reset --hard origin/"$CI_COMMIT_REF_NAME"
|
|
|
|
# delete all local tags
|
|
- git tag -l | xargs git tag -d
|
|
- git fetch --tags
|
|
- git tag
|
|
|
|
# build
|
|
- pip install python-semantic-release==7.* wheel
|
|
- export GL_TOKEN=$CI_UPDATES
|
|
- export REPOSITORY_USERNAME=__token__
|
|
- export REPOSITORY_PASSWORD=$CI_PYPI_TOKEN
|
|
- >
|
|
semantic-release publish -v DEBUG
|
|
-D version_variable=./setup.py:__version__
|
|
-D hvcs=gitlab
|
|
|
|
allow_failure: false
|
|
rules:
|
|
- if: '$CI_COMMIT_REF_NAME == "master"'
|