name: Deploy to Production on Develop Push on: push: branches: - develop jobs: deploy: runs-on: ubuntu-latest # Ta oznaka se ujema z vašim novim runnerjem steps: - name: Checkout repository uses: actions/checkout@v4 # Priporočena je uporaba novejše verzije - name: Install rsync run: | # Posodobi seznam paketov in namesti rsync in openssh-client znotraj runnerja # Uporabnik znotraj Gitea runnerja IMA sudo pravice. # Težava je bila v Docker kontejnerju, ki ga uporabljate v labels. # Najboljša rešitev je, da orodja namestimo direktno na runnerja, PREDEN uporabimo rsync. sudo apt-get update sudo apt-get install -y rsync openssh-client - name: Deploy to Server via rsync run: | # 1. Pripravimo SSH okolje mkdir -p ~/.ssh echo "${{ secrets.SSH_PRIVATE_KEY }}" > ~/.ssh/id_rsa chmod 600 ~/.ssh/id_rsa # 2. Sinhroniziramo datoteke z rsync rsync -avz --delete \ --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 }}