name: build-and-deploy on: push: branches: - main jobs: build: runs-on: 'linux_amd64' steps: - name: Checkout code uses: actions/checkout@v3 with: fetch-depth: 0 - name: Install Hugo run: | mkdir -p $HOME/bin wget https://github.com/gohugoio/hugo/releases/download/v0.121.1/hugo_extended_0.121.1_linux-amd64.tar.gz tar -xf hugo_extended_0.121.1_linux-amd64.tar.gz -C $HOME/bin export PATH=$HOME/bin:$PATH hugo version - name: Build site run: | export PATH=$HOME/bin:$PATH hugo --minify env: HUGO_ENV: production - name: Install Surfer CLI run: | mkdir -p $HOME/.npm-packages npm config set prefix $HOME/.npm-packages export PATH=$HOME/.npm-packages/bin:$PATH npm install -g cloudron-surfer - name: Deploy to Surfer run: | export PATH=$HOME/.npm-packages/bin:$PATH if ! surfer put --token ${{ secrets.SURFER_TOKEN }} --server ${{ secrets.SURFER_SERVER }} public/* /; then echo "Deployment failed" exit 1