diff --git a/.forgejo/workflows/build.yaml b/.forgejo/workflows/build.yaml new file mode 100644 index 0000000..272dc10 --- /dev/null +++ b/.forgejo/workflows/build.yaml @@ -0,0 +1,36 @@ +name: publish + +on: + push: + branches: + - main + +jobs: + publish: + runs-on: ubuntu-latest + env: + SSH_PRIVATE_KEY: ${{ secrets.PUBLISHER_PRIVATE_KEY }} + SSH_HOST: ${{ secrets.PUBLISHER_HOST }} + SSH_PORT: ${{ secrets.PUBLISHER_PORT }} + steps: + - uses: actions/checkout@v4 + with: + submodules: recursive + fetch-depth: 0 # all history for all branches and tags\ + + - name: Install Hugo + run: | + apt update && apt install -y hugo + + - name: Build + run: | + hugo --minify + + - name: Deploy + run: | + eval $(ssh-agent -s) + echo "$SSH_PRIVATE_KEY" | ssh-add - + apt update && apt install -y rsync + mkdir ~/.ssh + ssh-keyscan -p $SSH_PORT $SSH_HOST > ~/.ssh/known_hosts + rsync -atv --progress --delete -e "ssh -p $SSH_PORT" ./public/ publisher@$SSH_HOST:/usr/share/nginx/html/ \ No newline at end of file