49 lines
1.0 KiB
YAML
49 lines
1.0 KiB
YAML
stages:
|
|
- build
|
|
- deploy
|
|
- publish
|
|
- cleanup
|
|
|
|
default:
|
|
before_script:
|
|
- source /opt/miniconda3/etc/profile.d/conda.sh
|
|
|
|
build-job:
|
|
stage: build
|
|
script:
|
|
- conda config --add channels conda-forge
|
|
- conda config --set solver libmamba
|
|
- conda build --no-anaconda-upload ./conda-recipe
|
|
|
|
deploy-test-job:
|
|
stage: deploy
|
|
environment: testing
|
|
rules:
|
|
- if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH
|
|
script:
|
|
- conda activate test
|
|
- conda install --use-local --force-reinstall pyzebra -y
|
|
- sudo systemctl restart pyzebra-test.service
|
|
|
|
deploy-prod-job:
|
|
stage: deploy
|
|
environment: production
|
|
rules:
|
|
- if: $CI_COMMIT_TAG
|
|
script:
|
|
- conda activate prod
|
|
- conda install --use-local pyzebra -y
|
|
- sudo systemctl restart pyzebra-prod.service
|
|
|
|
publish-job:
|
|
stage: publish
|
|
rules:
|
|
- if: $CI_COMMIT_TAG
|
|
script:
|
|
- anaconda --token $ANACONDA_TOKEN upload $(conda build ./conda-recipe --output)
|
|
|
|
cleanup-job:
|
|
stage: cleanup
|
|
script:
|
|
- conda build purge-all
|