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: Install AWS CLI run: | apt-get update apt-get install -y awscli - name: Deploy to Object Storage run: | aws configure set default.s3.signature_version s3v4 aws s3 sync public/ s3://notebook-arnodo-fr/ \ --endpoint-url=https://s3.fr-par.scw.cloud \ --region=fr-par \ --delete env: AWS_ACCESS_KEY_ID: ${{ secrets.SCW_ACCESS_KEY }} AWS_SECRET_ACCESS_KEY: ${{ secrets.SCW_SECRET_KEY }} AWS_DEFAULT_REGION: fr-par - 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 }} SCW_SECRET_KEY: ${{ secrets.SCW_SECRET_KEY }} SCW_DEFAULT_REGION: fr-par run: | export PATH="$HOME/.scw/bin:$PATH" scw edge-services pipeline purge pipeline-id=${{ secrets.SCW_PIPELINE_ID }}