From 68bb418d36ef451b762dc2ea3aca0f6dc97284d4 Mon Sep 17 00:00:00 2001 From: Kirill Date: Fri, 2 Oct 2026 15:13:37 +0300 Subject: [PATCH 1/2] ci: added release push --- .gitea/workflows/release.yaml | 51 +++++++++++++++++++++++++++++++++++ 1 file changed, 51 insertions(+) create mode 100644 .gitea/workflows/release.yaml diff --git a/.gitea/workflows/release.yaml b/.gitea/workflows/release.yaml new file mode 100644 index 0000000..b1225eb --- /dev/null +++ b/.gitea/workflows/release.yaml @@ -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_compose.yml \ + --user "${{ secrets.RELEASE_SERVER_USER }}" \ + --private-key ~/.ssh/deploy_key From 87b522bfa924906deb1288a94a7db8d55aeb1015 Mon Sep 17 00:00:00 2001 From: Kirill Date: Fri, 2 Oct 2026 15:41:04 +0300 Subject: [PATCH 2/2] fixup! Merge branch 'main' into release --- .gitea/workflows/release.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.gitea/workflows/release.yaml b/.gitea/workflows/release.yaml index ae43971..ca193aa 100644 --- a/.gitea/workflows/release.yaml +++ b/.gitea/workflows/release.yaml @@ -26,7 +26,7 @@ jobs: SSH_PRIVATE_KEY: ${{ secrets.SSH_PRIVATE_RELEASE_KEY }} run: | mkdir -p ~/.ssh - printf '%s\n' "$SSH_PRIVATE_RELEASE_KEY" > ~/.ssh/deploy_key + printf '%s' "$SSH_PRIVATE_KEY" | tr -d '\r' > ~/.ssh/deploy_key chmod 600 ~/.ssh/deploy_key ssh-keygen -y -f ~/.ssh/deploy_key >/dev/null