mirror of
https://framagit.org/framasoft/framaspace/argos.git
synced 2025-04-28 09:52:38 +02:00
81 lines
1.6 KiB
YAML
81 lines
1.6 KiB
YAML
image: python:3.11
|
|
|
|
stages:
|
|
- install
|
|
- test
|
|
- deploy
|
|
|
|
default:
|
|
cache: &global_cache
|
|
key: "$CI_COMMIT_SHA"
|
|
paths:
|
|
- venv/
|
|
|
|
.pull-cache: &pull_cache
|
|
cache:
|
|
<<: *global_cache
|
|
policy: pull
|
|
|
|
install:
|
|
stage: install
|
|
script:
|
|
- make venv
|
|
- make develop
|
|
cache:
|
|
<<: *global_cache
|
|
policy: push
|
|
|
|
pytest:
|
|
<<: *pull_cache
|
|
stage: test
|
|
script:
|
|
- make test
|
|
|
|
djlint:
|
|
<<: *pull_cache
|
|
stage: test
|
|
script:
|
|
- make djlint
|
|
|
|
pylint:
|
|
<<: *pull_cache
|
|
stage: test
|
|
script:
|
|
- make pylint | python3 .fix-pylint-output-for-gitlab-ci.py
|
|
allow_failure: true
|
|
coverage: '/Your code has been rated at ([0-9.]+)\/100/'
|
|
|
|
format:
|
|
<<: *pull_cache
|
|
stage: test
|
|
script:
|
|
- make ruff
|
|
|
|
release_job:
|
|
stage: deploy
|
|
image: registry.gitlab.com/gitlab-org/release-cli:latest
|
|
rules:
|
|
- if: $CI_COMMIT_TAG
|
|
script:
|
|
- sed -n '/^## '$CI_COMMIT_TAG'/,/^#/p' CHANGELOG.md | sed -e '/^\(#\|$\|Date\)/d' > release.md
|
|
release: # See https://docs.gitlab.com/ee/ci/yaml/#release for available properties
|
|
tag_name: '$CI_COMMIT_TAG'
|
|
description: './release.md'
|
|
assets:
|
|
links:
|
|
- name: 'PyPI page'
|
|
url: 'https://pypi.org/project/argos-monitoring/$CI_COMMIT_TAG/'
|
|
|
|
pages:
|
|
<<: *pull_cache
|
|
stage: deploy
|
|
script:
|
|
- pwd
|
|
- ls
|
|
- make docs
|
|
- echo "https://framasoft.frama.io/framaspace/argos/* https://argos-monitoring.framasoft.org/:splat 301" > public/_redirects
|
|
artifacts:
|
|
paths:
|
|
- public/
|
|
rules:
|
|
- if: $CI_COMMIT_REF_NAME == $CI_DEFAULT_BRANCH
|