diff --git a/.gitea/workflows/deploy.yml b/.gitea/workflows/deploy.yml index f4c6a4a..f229cba 100644 --- a/.gitea/workflows/deploy.yml +++ b/.gitea/workflows/deploy.yml @@ -1,47 +1,45 @@ -name: Deploy to Staging and Production +name: Deploy to Development and Production -on: [push] +on: + push: + branches: + - develop + - master jobs: deploy: runs-on: ubuntu-latest steps: - # 1. Korak: Prevzem kode iz repozitorija - name: Checkout repository - uses: actions/checkout@v3 + uses: actions/checkout@v4 - # 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: Setup SSH + run: | + mkdir -p ~/.ssh + echo "${{ secrets.SSH_PRIVATE_KEY }}" > ~/.ssh/id_rsa + chmod 600 ~/.ssh/id_rsa + - name: Deploy to Development Server if: gitea.ref_name == 'develop' run: | - echo "🚀 Deploying branch 'develop' to Development environment..." + echo "🚀 Deploying to Development..." 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!" + --exclude=".git/" \ + --exclude=".gitea/" \ + --exclude=".gitignore" \ + -e "ssh -p ${{ secrets.SSH_PORT }} -i ~/.ssh/id_rsa -o StrictHostKeyChecking=no" \ + ./ \ + ${{ secrets.SSH_USER }}@${{ secrets.SSH_HOST }}:${{ secrets.TARGET_DIR }} - # 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..." + echo "🚀 Deploying to Production..." 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!" \ No newline at end of file + --exclude=".git/" \ + --exclude=".gitea/" \ + --exclude=".gitignore" \ + -e "ssh -p ${{ secrets.SSH_PORT }} -i ~/.ssh/id_rsa -o StrictHostKeyChecking=no" \ + ./ \ + ${{ secrets.SSH_USER }}@${{ secrets.SSH_HOST }}:${{ secrets.TARGET_MASTER_DIR }} \ No newline at end of file