district-politics/.drone.yml

85 lines
1.8 KiB
YAML

---
kind: pipeline
type: docker
name: default
clone:
skip_verify: true
steps:
- name: restore-cache
privileged: true
image: 2martens/drone-volume-cache
settings:
restore: true
mount:
- ./node_modules
volumes:
- name: cache
path: /cache
- name: unlock secrets
image: 2martens/drone-git-crypt
environment:
MODE: unlock
GIT_CRYPT_KEY:
from_secret: git_crypt_key
- name: setup
image: node:16-alpine
commands:
- npm install
- name: build
image: node:16-alpine
commands:
- npm install -g @angular/cli
- ng build
- name: lock secrets
image: 2martens/drone-git-crypt
environment:
MODE: lock
GIT_CRYPT_KEY:
from_secret: git_crypt_key
- name: rebuild-cache
privileged: true
image: 2martens/drone-volume-cache
settings:
rebuild: true
mount:
- ./node_modules
volumes:
- name: cache
path: /cache
- name: deploy
image: drillster/drone-rsync
settings:
hosts: ["howell.uberspace.de"]
user: jimmain7
source: /drone/src/dist/speech-statistics/.
target: ~/tmp/build
recursive: true
delete: true
port: 22
key:
from_secret: rsync_key
script:
- shopt -s dotglob
- rm -rf tmp/old.build
- mkdir tmp/old.build
- rm -rf html/speech-statistics
- cp -r tmp/build/* html/
- rm -rf tmp/build
- name: notify
image: drillster/drone-email
environment:
EMAIL_USERNAME:
from_secret: email_username
EMAIL_PASSWORD:
from_secret: email_password
settings:
host: howell.uberspace.de
port: 587
from: Drone <drone@2martens.de>
secrets: [email_username, email_password]
when:
status: [ failure ]