90 lines
2.5 KiB
YAML
90 lines
2.5 KiB
YAML
kind: pipeline
|
|
name: default
|
|
|
|
steps:
|
|
# - name: docker-build
|
|
# image: plugins/docker
|
|
# settings:
|
|
# username:
|
|
# from_secret: DOCKER_USER
|
|
# password:
|
|
# from_secret: DOCKER_PASS
|
|
# repo: mhackspace-python
|
|
# dockerfile: ./compose/django/Dockerfile
|
|
# tags: latest
|
|
# repo: docker.digitaloctave.com/do-registry
|
|
# registry: docker.digitaloctave.com
|
|
|
|
- name: tests
|
|
image: olymk2/python-built:3.6-alpine
|
|
environment:
|
|
PYTHONUSERBASE: /drone/src/cache/packages
|
|
POSTGRES_USER: mhackspace
|
|
USE_DOCKER: yes
|
|
DJANGO_SETTINGS_MODULE: config.settings.test
|
|
commands:
|
|
- apk add git build-base gcc python3-dev postgresql-dev musl-dev jpeg-dev zlib-dev openjpeg-dev tiff-dev libffi-dev freetype-dev libev-dev lcms2-dev tk-dev tcl-dev harfbuzz-dev fribidi-dev libxslt-dev
|
|
- cp env.example .env
|
|
- mkdir -p ./cache/packages ./cache/pip
|
|
- pip install -r ./requirements/test.txt
|
|
- python manage.py compilescss
|
|
- python manage.py collectstatic --no-input
|
|
- pytest -v
|
|
# - python manage.py test mhackspace --keepdb --verbosity 2
|
|
|
|
|
|
|
|
- name: publish-stage
|
|
pull: True
|
|
image: appleboy/drone-ssh
|
|
settings:
|
|
host: stage.maidstone-hackspace.org.uk
|
|
|
|
username:
|
|
from_secret: ssh_user
|
|
key:
|
|
from_secret: ssh_key
|
|
port: 22
|
|
command_timeout: 30m
|
|
script:
|
|
- cd /var/www/maidstone-hackspace-website
|
|
- git pull
|
|
- docker-compose -fstage.yml build
|
|
- docker-compose -fstage.yml run --rm django python manage.py compilescss
|
|
- docker-compose -fstage.yml run --rm django python manage.py collectstatic
|
|
- docker-compose -fstage.yml down --remove-orphans
|
|
- docker-compose -fstage.yml up -d
|
|
- echo 'Finished deploy'
|
|
|
|
- name: publish-live
|
|
pull: True
|
|
image: appleboy/drone-ssh
|
|
user: root
|
|
secrets:
|
|
- source: DEPLOY_SSH_KEY
|
|
target: ssh_key
|
|
host: maidstone-hackspace.org.uk
|
|
port: 22
|
|
command_timeout: 5m
|
|
script:
|
|
- echo 'to be added'
|
|
when:
|
|
event: [ tag ]
|
|
|
|
services:
|
|
- name: mailhog
|
|
image: mailhog/mailhog
|
|
|
|
- name: node
|
|
image: node:alpine
|
|
commands:
|
|
- npm --version
|
|
- npm install
|
|
|
|
- name: bucket
|
|
image: minio/minio
|
|
environment:
|
|
MINIO_ACCESS_KEY: AKIAIOSFODNN7EXAMPLE
|
|
MINIO_SECRET_KEY: wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY
|
|
command: [ "server", "--config-dir=/tmp/minio", "/bucket/" ]
|