47 lines
1.8 KiB
YAML
47 lines
1.8 KiB
YAML
name: Deploy to Staging and Production
|
|
|
|
on: [push]
|
|
|
|
jobs:
|
|
deploy:
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
|
# 1. Korak: Prevzem kode iz repozitorija
|
|
- name: Checkout repository
|
|
uses: actions/checkout@v3
|
|
|
|
# 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: ${{ secrets.SSH_HOST }} # Pravilen način uporabe!
|
|
|
|
# 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: |
|
|
echo "🚀 Deploying branch 'develop' to Development environment..."
|
|
rsync -avz --delete \
|
|
-e "ssh -p 22" \
|
|
--exclude '.gitea/' \
|
|
--exclude '.git/' \
|
|
./ ${{ secrets.SSH_USER }}@${{ secrets.SSH_HOST }}:${{ secrets.TARGET_DIR }}
|
|
echo "✅ Deployment to Development successful!"
|
|
|
|
# 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: |
|
|
echo "🚀 Deploying branch 'master' to Production environment..."
|
|
rsync -avz --delete \
|
|
-e "ssh -p 22" \
|
|
--exclude '.gitea/' \
|
|
--exclude '.git/' \
|
|
./ ${{ secrets.SSH_USER }}@${{ secrets.SSH_HOST }}:${{ secrets.TARGET_MASTER_DIR }}
|
|
echo "✅ Deployment to Production successful!" |