DRF_Template/.woodpecker/.deploy.yml
2025-03-27 03:59:51 +08:00

48 lines
1.3 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
when:
- event: push
settings:
url:
from_secret: NTFY_URL
title: "$CI_REPO_NAME build $CI_PREV_PIPELINE_STATUS"
priority: urgent
click: https://blog.06222001.xyz
icon: https://blog.06222001.xyz/img/logo.svg
tags: robot,${CI_REPO_NAME}
message: ${CI_COMMIT_MESSAGE}
when:
- branch: master
event: push
depends_on:
- build