Personal-Website/.drone.yml
2022-07-11 20:13:29 -07:00

119 lines
2.3 KiB
YAML

kind: pipeline
type: docker
name: Build Main
trigger:
event:
- push
branch:
- main
steps:
- name: restore-cache
image: drillster/drone-volume-cache
settings:
restore: true
mount:
- ./node_modules
- ./.cache
- ./public
volumes:
- name: cache
path: /cache
- name: build
image: node
commands:
- yarn install
- yarn build
- du -sh public
- name: rsync
image: drillster/drone-rsync
settings:
user: ci
key:
from_secret: rsync_key
hosts:
- droplet.chuckdries.com
exclude:
- node_modules
- .git*
source: ./public/
target: ~/www/personal-website
delete: true
recursive: true
secrets: [rsync_key]
- name: rebuild-cache
image: drillster/drone-volume-cache
settings:
rebuild: true
mount:
- ./node_modules
- ./.cache
- ./public
volumes:
- name: cache
path: /cache
volumes:
- name: cache
host:
path: /mnt/user/dronecache
---
kind: pipeline
type: docker
name: Preview PR
trigger:
event:
- pull_request
steps:
- name: restore-cache
image: drillster/drone-volume-cache
settings:
restore: true
mount:
- ./node_modules
- ./.cache
- ./public
volumes:
- name: cache
path: /cache
- name: build
image: node
commands:
- yarn install
- PATH_PREFIX=/${DRONE_PULL_REQUEST} yarn build --prefix-paths
- du -sh public
- name: rsync
image: drillster/drone-rsync
settings:
user: ci
key:
from_secret: rsync_key
hosts:
- droplet.chuckdries.com
exclude:
- node_modules
- .git*
source: ./public/
target: ~/www/personal-website-preview/${DRONE_PULL_REQUEST}
prescript: cp -r ~/www/personal-website ~/www/personal-website-preview/${DRONE_PULL_REQUEST}
delete: true
recursive: true
secrets: [rsync_key]
- name: comment
image: jmccann/drone-github-comment:1
settings:
message: preview of ${DRONE_COMMIT} deployed to https://preview.chuckdries.com/${DRONE_PULL_REQUEST}
update: true
api_key:
from_secret: github_key
# note: we intentionally do not rebuild-cache for PRs