Fix: Correctly configure ssh-key-action for known_hosts
Deploy to Staging and Production / deploy (push) Failing after 2m19s Details

This commit is contained in:
Mark Poljanšek 2025-09-09 19:34:18 +02:00
parent d3dc8cae66
commit e8f062653c
1 changed files with 9 additions and 15 deletions

View File

@ -1,33 +1,27 @@
name: Deploy to Staging and Production
# Workflow se sproži ob vsakem push dogodku na katero koli vejo
on: [push]
jobs:
deploy:
runs-on: ubuntu-latest # Uporabimo standardni Linux runner, ki je na voljo v Gitea Actions
runs-on: ubuntu-latest
steps:
# 1. Korak: Prevzem kode iz repozitorija
# Ta korak prenese kodo iz vaše veje v okolje, kjer se izvaja workflow.
- name: Checkout repository
uses: actions/checkout@v3
# 2. Korak: Namestitev SSH ključa za varno povezavo s strežnikom
# Uporabimo skrivnost (secret) SSH_PRIVATE_KEY, ki jo morate nastaviti v Gitea nastavitvah repozitorija.
# 2. Korak: Namestitev SSH ključa (POENOSTAVLJENO IN POPRAVLJENO)
# Akcija bo samodejno uporabila ssh-keyscan za dodajanje prstnega odtisa strežnika.
# Odvečen korak "Adding Known Hosts" je odstranjen.
- name: Install SSH Key
uses: shimataro/ssh-key-action@v2
with:
key: ${{ secrets.SSH_PRIVATE_KEY }}
known_hosts: 'just-a-placeholder-so-we-dont-get-errors' # Potrebno za delovanje akcije
known_hosts: ${{ secrets.SSH_HOST }} # Pravilen način uporabe!
# 3. Korak: Dodajanje prstnega odtisa strežnika v known_hosts
# To prepreči interaktivno vprašanje o zaupanju strežnika in avtomatizira prijavo.
- name: Adding Known Hosts
run: ssh-keyscan -H ${{ secrets.SSH_HOST }} >> ~/.ssh/known_hosts
# 4. Korak: Razmestitev na RAZVOJNI (development) strežnik
# Ta korak se izvede SAMO, če je ime veje (gitea.ref_name), na katero se je pushalo, 'develop'.
# 3. Korak: Razmestitev na RAZVOJNI (development) strežnik
# Ta korak se izvede SAMO, če je ime veje 'develop'.
- name: Deploy to Development Server
if: gitea.ref_name == 'develop'
run: |
@ -39,8 +33,8 @@ jobs:
./ ${{ secrets.SSH_USER }}@${{ secrets.SSH_HOST }}:${{ secrets.TARGET_DIR }}
echo "✅ Deployment to Development successful!"
# 5. Korak: Razmestitev na PRODUKCIJSKI (master) strežnik
# Ta korak se izvede SAMO, če je ime veje, na katero se je pushalo, 'master'.
# 4. Korak: Razmestitev na PRODUKCIJSKI (master) strežnik
# Ta korak se izvede SAMO, če je ime veje 'master'.
- name: Deploy to Production Server
if: gitea.ref_name == 'master'
run: |