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_DB_VOLUME: from_secret: DOCKER_DB_VOLUME 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_DB_VOLUME" || true; docker pull "$REGISTRY_IMAGE_TAG"; docker-compose up -d; docker image prune -af;" when: - branch: master event: push depends_on: - build