diff --git a/.woodpecker.yml b/.woodpecker.yml new file mode 100644 index 0000000..6a1f747 --- /dev/null +++ b/.woodpecker.yml @@ -0,0 +1,31 @@ +pipeline: + deploy: + image: alpine:latest + commands: + # Установка SSH-клиента + - apk add --no-cache openssh-client rsync + + # Настройка SSH-ключа из секрета + - mkdir -p ~/.ssh + - echo "$SSH_PRIVATE_KEY" > ~/.ssh/id_rsa + - chmod 600 ~/.ssh/id_rsa + - 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 + environment: + - SSH_PRIVATE_KEY \ No newline at end of file