name: Deploy to Scaleway on: pull_request: types: [closed] branches: - main jobs: build-and-deploy: if: github.event.pull_request.merged == true runs-on: self-hosted container: image: node:20-bookworm steps: - name: Checkout code uses: actions/checkout@v4 with: submodules: recursive fetch-depth: 0 - name: Setup Hugo uses: peaceiris/actions-hugo@v2 with: hugo-version: "latest" extended: true - name: Build Hugo site run: hugo --minify - name: Deploy to Object Storage (Hugo native) run: | hugo deploy --force --maxDeletes -1 env: AWS_ACCESS_KEY_ID: ${{ secrets.SCW_ACCESS_KEY_ID }} AWS_SECRET_ACCESS_KEY: ${{ secrets.SCW_SECRET_ACCESS_KEY }} - name: Install Scaleway CLI (for Purge only) run: | curl -s https://raw.githubusercontent.com/scaleway/scaleway-cli/master/scripts/get.sh | sh export PATH="$HOME/.scw/bin:$PATH" scw version - name: Purge CDN Cache (optional) env: SCW_ACCESS_KEY: ${{ secrets.SCW_ACCESS_KEY_ID }} SCW_SECRET_KEY: ${{ secrets.SCW_SECRET_ACCESS_KEY }} SCW_DEFAULT_REGION: fr-par run: | export PATH="$HOME/.scw/bin:$PATH" scw edge-services pipeline purge pipeline-id=${{ secrets.SCW_PIPELINE_ID }}