03 autoDeploy Git SSH
- Создаем в проекте папку .ssh
- Генерируем пару ключей (через GitBash)
ssh-keygen -t rsa -b 2048
- Копируем публичный ключ на хостинг
$ ssh-copy-id -i ~/.ssh/id_rsa.pub a0201443@000.000.000.000
Можно скопировать вручную в папку: /home/a0201443/.ssh
- Добавляем приватный ключ на GitHub в Settings > Secrets and variables > Actions
Имя ключа: key
- В проекте создаем файл deploy.yml внутри папок .github/workflows
- Код файла: скачать
name: Deploy on: push: branches: - master jobs: deploy: runs-on: ubuntu-latest steps: - uses: actions/checkout@v3 # Setup key - run: set -eu - run: mkdir "$HOME/.ssh" - run: echo "${{ secrets.key }}" > "$HOME/.ssh/key" - run: chmod 600 "$HOME/.ssh/key" # Deploy - run: rsync -e "ssh -p 22 -i $HOME/.ssh/key -o StrictHostKeyChecking=no" --archive --compress --delete . a0201443@000.000.000.000:/home/a0201443/domains/wexeb.ru/public_html/bankstoday/wp-content/themes/bankstoday