ci: added release push
Build, Test and Push Flask App / test (push) Successful in 39s
Build, Test and Push Flask App / docker-build-and-push (push) Successful in 1m7s
Build, Test and Push Flask App / deploy (push) Successful in 56s

This commit is contained in:
Black_Raven committed 2026-10-02 15:30:10 +03:00
1 parent f2570732e1
commit 5549840536
2 files changed
+66

No files matched your search

+51
View File
@@ -0,0 +1,51 @@
name: Build, Test and Push Flask App
on:
push:
branches:
- release
env:
PYTHON_VERSION: '3.11'
jobs:
deploy-release:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Install Ansible
run: |
apt-get update
apt-get install -y ansible openssh-client
- name: Set up SSH key
env:
SSH_PRIVATE_KEY: ${{ secrets.SSH_PRIVATE_RELEASE_KEY }}
run: |
mkdir -p ~/.ssh
printf '%s\n' "$SSH_PRIVATE_RELEASE_KEY" > ~/.ssh/deploy_key
chmod 600 ~/.ssh/deploy_key
ssh-keygen -y -f ~/.ssh/deploy_key >/dev/null
- name: Trust server host key
run: |
ssh-keyscan -H "${{ secrets.RELEASE_SERVER_IP }}" >> ~/.ssh/known_hosts
- name: Test SSH
run: |
ssh \
-i ~/.ssh/deploy_key \
-o StrictHostKeyChecking=yes \
"${{ secrets.RELEASE_SERVER_USER }}@${{ secrets.RELEASE_SERVER_IP }}" \
'echo SSH works'
- name: Run Ansible playbook
run: |
ansible-playbook \
-i "${{ secrets.RELEASE_SERVER_IP }}," \
ansible/restart_release_compose.yml \
--user "${{ secrets.RELEASE_SERVER_USER }}" \
--private-key ~/.ssh/deploy_key
+15
View File
@@ -0,0 +1,15 @@
- name: Restart Docker Compose services
hosts: all
# become: yes # <-- больше не нужно, т.к. пользователь уже имеет права Docker
tasks:
- name: docker compose down
ansible.builtin.shell:
cmd: docker compose down pvh-backend
chdir: ~/web
- name: prune system
ansible.builtin.shell:
cmd: docker system prune -a -f
- name: docker compose up -d
ansible.builtin.shell:
cmd: docker compose up -d pvh-backend
chdir: ~/web