DRF_Template/.woodpecker/.deploy.yml
2025-03-27 04:33:28 +08:00

56 lines
1.7 KiB
YAML

steps:
- name: deploy
image: alpine:3.20
environment:
SSH_HOST:
from_secret: SSH_HOST
PROJECT_DIRECTORY:
from_secret: PROJECT_DIRECTORY
WOODPECKER_SSH_KEY:
from_secret: WOODPECKER_SSH_KEY
REGISTRY_IMAGE_TAG:
from_secret: REGISTRY_IMAGE_TAG
DOCKER_VOLUME_DB:
from_secret: DOCKER_VOLUME_DB
commands:
- apk add openssh
- mkdir -p /root/.ssh/
- echo "$WOODPECKER_SSH_KEY" | tr -d '\r' > /root/.ssh/id_rsa
- chmod 600 /root/.ssh/id_rsa
- echo -e "Host *\n\tStrictHostKeyChecking no\n\n" > /root/.ssh/config
- ssh "$SSH_HOST" "
cd "$PROJECT_DIRECTORY";
docker-compose down;
docker image rm "$REGISTRY_IMAGE_TAG" || true;
docker volume rm "$DOCKER_VOLUME_DB" || true;
docker pull "$REGISTRY_IMAGE_TAG";
docker-compose up -d;
docker image prune -af;"
- name: ntfy
image: codeberg.org/l-x/woodpecker-ntfy
settings:
url:
from_secret: NTFY_URL
title: "${CI_REPO_NAME} deploy ${CI_PREV_PIPELINE_STATUS}"
priority: urgent
click: https://api.template.06222001.xyz
icon: https://github.com/woodpecker-ci/woodpecker/blob/main/docs/static/img/logo.svg
tags: robot,${CI_REPO_NAME}
message: ${CI_COMMIT_MESSAGE}
depends_on: deploy
- name: discord
image: appleboy/drone-discord
settings:
webhook_id:
from_secret: DISCORD_WEBHOOK_ID
webhook_token:
from_secret: DISCORD_WEBHOOK_TOKEN
message: "${CI_REPO_NAME} deploy ${CI_PREV_PIPELINE_STATUS}"
depends_on: deploy
when:
- branch: master
event: push
depends_on:
- build