97 lines
2.2 KiB
YAML
97 lines
2.2 KiB
YAML
---
|
|
kind: pipeline
|
|
type: docker
|
|
name: build
|
|
|
|
trigger:
|
|
ref:
|
|
- refs/heads/**
|
|
- refs/tags/v*
|
|
environment:
|
|
REGISTRY_HOST: https://git.roboces.dev
|
|
DESTINATION_PREFIX: git.roboces.dev/catalin/halig
|
|
PRE_COMMIT_HOME: /drone/src/.cache/.pre-commit
|
|
|
|
steps:
|
|
- name: restore_cache
|
|
image: meltwater/drone-cache
|
|
pull: true
|
|
environment:
|
|
AWS_ACCESS_KEY_ID:
|
|
from_secret: AWS_ACCESS_KEY_ID
|
|
AWS_SECRET_ACCESS_KEY:
|
|
from_secret: AWS_SECRET_ACCESS_KEY
|
|
settings:
|
|
restore: true
|
|
bucket: halig-cache
|
|
endpoint: https://s3.fukurokuju.dev
|
|
region: us-east-1
|
|
path_style: true
|
|
mount:
|
|
- .venv
|
|
- .cache/.pre-commit
|
|
|
|
- name: install_deps
|
|
pull: true
|
|
image: git.roboces.dev/catalin/poetry:beta
|
|
commands:
|
|
- poetry config virtualenvs.in-project 1
|
|
- poetry install --with linters,test
|
|
depends_on:
|
|
- restore_cache
|
|
|
|
- name: lint
|
|
pull: true
|
|
image: git.roboces.dev/catalin/poetry:beta
|
|
commands:
|
|
- .venv/bin/pre-commit run --all-files --color always
|
|
depends_on:
|
|
- install_deps
|
|
|
|
- name: tests
|
|
pull: true
|
|
image: git.roboces.dev/catalin/poetry:beta
|
|
commands:
|
|
- .venv/bin/pytest
|
|
depends_on:
|
|
- install_deps
|
|
|
|
- name: deploy
|
|
pull: true
|
|
image: git.roboces.dev/catalin/poetry:beta
|
|
commands:
|
|
- poetry build
|
|
- poetry config repositories.roboces https://git.roboces.dev/api/packages/catalin/pypi
|
|
- poetry config http-basic.roboces "$REGISTRY_USERNAME" "$REGISTRY_PASSWORD"
|
|
- poetry publish --repository roboces
|
|
when:
|
|
ref:
|
|
- refs/tags/v*
|
|
depends_on:
|
|
- lint
|
|
- tests
|
|
|
|
- name: rebuild cache
|
|
image: meltwater/drone-cache
|
|
pull: true
|
|
environment:
|
|
AWS_ACCESS_KEY_ID:
|
|
from_secret: AWS_ACCESS_KEY_ID
|
|
AWS_SECRET_ACCESS_KEY:
|
|
from_secret: AWS_SECRET_ACCESS_KEY
|
|
settings:
|
|
rebuild: true
|
|
path_style: true
|
|
bucket: halig-cache
|
|
endpoint: https://s3.fukurokuju.dev
|
|
region: us-east-1
|
|
mount:
|
|
- .venv
|
|
- .cache/.pre-commit
|
|
when:
|
|
status:
|
|
- failure
|
|
- success
|
|
depends_on:
|
|
- lint
|
|
- tests
|