Files
Zilant2025/.woodpecker.yml
T
gitadmin c831e741c1
ci/woodpecker/push/woodpecker Pipeline was successful
from_secret
2025-09-27 01:26:55 +03:00

46 lines
1.8 KiB
YAML

steps:
- name: deploy
image: alpine:latest
environment:
SSH_PRIVATE_KEY:
from_secret: SSH_PRIVATE_KEY
commands:
# Установка SSH-клиента
- apk add --no-cache openssh-client rsync
# Проверка секрета
- 'echo "Raw env var (first 50 chars): ${SSH_PRIVATE_KEY:0:50}"'
- 'echo "Length via parameter expansion: ${#SSH_PRIVATE_KEY}"'
- 'printf "%s" "$SSH_PRIVATE_KEY" | wc -c'
- 'echo "Secret length: ${#SSH_PRIVATE_KEY}"'
- 'echo "First 20 chars: ${SSH_PRIVATE_KEY:0:20}"'
# Настройка SSH-ключа из секрета
- mkdir -p ~/.ssh
- echo "$SSH_PRIVATE_KEY" > ~/.ssh/id_rsa
- chmod 600 ~/.ssh/id_rsa
- 'echo "Key header:"'
- head -n 1 ~/.ssh/id_rsa
- 'echo "Key footer:"'
- tail -n 1 ~/.ssh/id_rsa
- 'echo "File size:"'
- wc -c ~/.ssh/id_rsa
- ssh-keygen -y -f ~/.ssh/id_rsa > /dev/null && echo "✅ Key is valid" || echo "❌ Key is invalid"
- ssh-keyscan 192.168.0.109 >> ~/.ssh/known_hosts
# Копирование файлов (вариант 1: rsync)
- rsync -av ./ deployer@192.168.0.109:/opt/testbot-git/
# Или (вариант 2: git clone на целевом сервере)
# - ssh -i ~/.ssh/id_rsa deployer@целевой-сервер "cd /var/www/myapp && git pull"
# Выполнение команд на целевом сервере
# - ssh -i ~/.ssh/id_rsa deployer@целевой-сервер "
# cd /var/www/myapp &&
# systemctl --user daemon-reload || sudo systemctl daemon-reload &&
# sudo systemctl restart myservice &&
# echo '✅ Deploy completed'
# "
when:
event: push
branch: main