mirror of
https://github.com/shouptech/humulus.git
synced 2026-02-03 16:09:44 +00:00
117 lines
2 KiB
YAML
117 lines
2 KiB
YAML
kind: pipeline
|
|
name: test
|
|
|
|
services:
|
|
- name: couchdb
|
|
image: couchdb:2.3
|
|
environment:
|
|
COUCHDB_USER: admin
|
|
COUCHDB_PASSWORD: password
|
|
|
|
steps:
|
|
- name: tests
|
|
image: python:3.6
|
|
environment:
|
|
COUCH_URL: 'http://couchdb:5984'
|
|
CODECOV_TOKEN:
|
|
from_secret: CODECOV_TOKEN
|
|
commands:
|
|
# Install pre-requisites
|
|
- pip install -r requirements-dev.txt
|
|
# Wait for couch
|
|
- until curl "$COUCH_URL" ; do sleep 1 ; done
|
|
# Run tests
|
|
- coverage run -m pytest
|
|
- coverage report -m
|
|
# Upload coverage report
|
|
- pip install codecov
|
|
- codecov
|
|
# Perform linting checks
|
|
- black --check src tests setup.py
|
|
- flake8
|
|
|
|
---
|
|
kind: pipeline
|
|
name: publish
|
|
|
|
steps:
|
|
- name: version-dev
|
|
image: python:3.6
|
|
commands:
|
|
- sed -i "s/.dev/.dev${DRONE_BUILD_NUMBER}/" src/humulus/_version.py
|
|
when:
|
|
event:
|
|
exclude:
|
|
- tag
|
|
|
|
- name: version-release
|
|
image: python:3.6
|
|
commands:
|
|
- sed -i "s/.dev//" src/humulus/_version.py
|
|
when:
|
|
event:
|
|
- tag
|
|
|
|
- name: docker-dev
|
|
image: plugins/docker
|
|
settings:
|
|
username:
|
|
from_secret: DOCKER_USERNAME
|
|
password:
|
|
from_secret: DOCKER_PASSWORD
|
|
repo: shouptech/humulus
|
|
tags:
|
|
- ${DRONE_BUILD_NUMBER}
|
|
when:
|
|
event:
|
|
exclude:
|
|
- pull_request
|
|
|
|
- name: docker-latest
|
|
image: plugins/docker
|
|
settings:
|
|
username:
|
|
from_secret: DOCKER_USERNAME
|
|
password:
|
|
from_secret: DOCKER_PASSWORD
|
|
repo: shouptech/humulus
|
|
tags:
|
|
- latest
|
|
when:
|
|
branch:
|
|
- master
|
|
event:
|
|
exclude:
|
|
- pull_request
|
|
|
|
- name: docker-release
|
|
image: plugins/docker
|
|
settings:
|
|
username:
|
|
from_secret: DOCKER_USERNAME
|
|
password:
|
|
from_secret: DOCKER_PASSWORD
|
|
repo: shouptech/humulus
|
|
auto_tag: true
|
|
when:
|
|
event:
|
|
- tag
|
|
|
|
- name: pypi-release
|
|
image: python:3.6
|
|
environment:
|
|
TWINE_USERNAME:
|
|
from_secret: TWINE_USERNAME
|
|
TWINE_PASSWORD:
|
|
from_secret: TWINE_PASSWORD
|
|
commands:
|
|
- pip install twine
|
|
- python setup.py sdist bdist_wheel
|
|
- twine upload dist/*
|
|
when:
|
|
event:
|
|
- tag
|
|
|
|
|
|
depends_on:
|
|
- test
|