kopia lustrzana https://gitlab.com/gerbolyze/gerbonara
124 wiersze
3.1 KiB
YAML
124 wiersze
3.1 KiB
YAML
variables:
|
|
GIT_SUBMODULE_STRATEGY: recursive
|
|
|
|
stages:
|
|
- build
|
|
- test
|
|
- docs
|
|
- publish
|
|
|
|
build:archlinux:
|
|
stage: build
|
|
image: "registry.gitlab.com/gerbolyze/build-containers/archlinux:latest"
|
|
variables:
|
|
GIT_SUBMODULE_STRATEGY: none
|
|
script:
|
|
- git config --global --add safe.directory "$CI_PROJECT_DIR"
|
|
- pip3 install --user wheel
|
|
- python3 setup.py sdist bdist_wheel
|
|
artifacts:
|
|
name: "gerbolyze-$CI_COMMIT_REF_NAME-gerbonara"
|
|
paths:
|
|
- dist/*
|
|
|
|
test:archlinux:
|
|
stage: test
|
|
image: "registry.gitlab.com/gerbolyze/build-containers/archlinux:latest"
|
|
script:
|
|
- pytest -o 'testpaths=gerbonara/tests' -o 'norecursedirs=*'
|
|
dependencies:
|
|
- build:archlinux
|
|
cache:
|
|
key: test-image-cache
|
|
paths:
|
|
- gerbonara/tests/image_cache/*.svg
|
|
- gerbonara/tests/image_cache/*.png
|
|
artifacts:
|
|
name: "gerbolyze-$CI_COMMIT_REF_NAME-gerbonara"
|
|
when: on_failure
|
|
paths:
|
|
- gerbonara_test_failures/*
|
|
|
|
test:ubuntu2204:
|
|
stage: test
|
|
image: "registry.gitlab.com/gerbolyze/build-containers/ubuntu:22.04"
|
|
script:
|
|
- python3 -m pip install pytest beautifulsoup4 pillow numpy slugify lxml click scipy
|
|
- python3 -m pytest -o 'testpaths=gerbonara/tests' -o 'norecursedirs=*'
|
|
dependencies:
|
|
- build:archlinux
|
|
cache:
|
|
key: test-image-cache
|
|
paths:
|
|
- gerbonara/tests/image_cache/*.svg
|
|
- gerbonara/tests/image_cache/*.png
|
|
artifacts:
|
|
name: "gerbolyze-$CI_COMMIT_REF_NAME-gerbonara"
|
|
when: on_failure
|
|
paths:
|
|
- gerbonara_test_failures/*
|
|
|
|
test:ubuntu2004:
|
|
stage: test
|
|
image: "registry.gitlab.com/gerbolyze/build-containers/ubuntu:20.04"
|
|
script:
|
|
- python3 -m pip install pytest beautifulsoup4 pillow numpy slugify lxml click scipy
|
|
- python3 -m pytest -o 'testpaths=gerbonara/tests' -o 'norecursedirs=*'
|
|
dependencies:
|
|
- build:archlinux
|
|
cache:
|
|
key: test-image-cache
|
|
paths:
|
|
- gerbonara/tests/image_cache/*.svg
|
|
- gerbonara/tests/image_cache/*.png
|
|
artifacts:
|
|
name: "gerbolyze-$CI_COMMIT_REF_NAME-gerbonara"
|
|
when: on_failure
|
|
paths:
|
|
- gerbonara_test_failures/*
|
|
|
|
|
|
docs:archlinux:
|
|
stage: test
|
|
image: "registry.gitlab.com/gerbolyze/build-containers/archlinux:latest"
|
|
script:
|
|
- git config --global --add safe.directory "$CI_PROJECT_DIR"
|
|
- sphinx-build -E docs docs/_build
|
|
dependencies:
|
|
- build:archlinux
|
|
artifacts:
|
|
name: "docs-gerbonara-$CI_COMMIT_REF_NAME"
|
|
paths:
|
|
- docs/_build
|
|
|
|
publish:gerbonara:
|
|
stage: publish
|
|
variables:
|
|
GIT_SUBMODULE_STRATEGY: none
|
|
image: "registry.gitlab.com/gerbolyze/build-containers/archlinux:latest"
|
|
cache: {}
|
|
script:
|
|
- export TWINE_USERNAME TWINE_PASSWORD
|
|
- twine upload dist/*
|
|
dependencies:
|
|
- build:archlinux
|
|
only:
|
|
- /^v.*$/
|
|
|
|
pages:
|
|
stage: publish
|
|
variables:
|
|
GIT_SUBMODULE_STRATEGY: none
|
|
image: "registry.gitlab.com/gerbolyze/build-containers/archlinux:latest"
|
|
script:
|
|
- git config --global --add safe.directory "$CI_PROJECT_DIR"
|
|
- sphinx-build -E docs public
|
|
dependencies:
|
|
- build:archlinux
|
|
artifacts:
|
|
paths:
|
|
- public
|
|
only:
|
|
- /^v.*$/
|
|
|