You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

87 lines
2.2 KiB

kind: pipeline
name: default
steps:
# =============== RELEASE ===============
- name: release
image: plugins/gitea-release
settings:
api_key:
from_secret: gitea_api_key
base_url: https://code.garrettmills.dev
title: ${DRONE_TAG}
when:
event: tag
# =============== DEPLOY TO DEV SITE ===============
- name: deploy repo to staging site
image: appleboy/drone-ssh
settings:
host:
from_secret: dev_site_host
username:
from_secret: dev_site_user
key:
from_secret: dev_site_key
port: 22
script:
- cd /etc/glmdev/noded/backend
- git checkout master
- git pull
- git checkout ${DRONE_COMMIT}
- yarn install
- systemctl restart noded-dev
when:
event: promote
target: staging
# =============== DEPLOY TO PROD SITE ===============
- name: deploy repo to production site
image: appleboy/drone-ssh
settings:
host:
from_secret: prod_site_host
username:
from_secret: prod_site_user
key:
from_secret: prod_site_key
port: 22
script:
- cd /etc/glmdev/noded-prod/backend
- git checkout master
- git pull
- git checkout ${DRONE_COMMIT}
- yarn install
- systemctl restart noded
when:
event: promote
target: production
# =============== NOTIFICATIONS ===============
- name: send success notifications
image: plugins/webhook
settings:
urls:
from_secret: notify_webhook_url
content_type: application/json
template: |
{
"title": "Drone-CI [noded-backend]",
"message": "Build ${DRONE_BUILD_NUMBER} completed successfully.",
"priority": 4
}
when:
status: success
- name: send error notifications
image: plugins/webhook
settings:
urls:
from_secret: notify_webhook_url
content_type: application/json
template: |
{
"title": "Drone-CI [noded-backend]",
"message": "Build ${DRONE_BUILD_NUMBER} failed!",
"priority": 6
}
when:
status: failure