diff --git a/.gitea/workflows/jekyll.yaml b/.gitea/workflows/jekyll.yaml
index 4d2a977..0501262 100644
--- a/.gitea/workflows/jekyll.yaml
+++ b/.gitea/workflows/jekyll.yaml
@@ -8,6 +8,9 @@ on:
 env:
   _UID: 1000
   _GID: 1000
+  BASE_URL: www.lafs.eval.latfa.net
+  PREFIX: ""
+  SUFFIX: ""
 jobs:
   jekyll:
     runs-on: ubuntu-22.04
@@ -43,16 +46,41 @@ jobs:
         run: |
           docker-compose run --rm -v "${JOB_CONTAINER_NAME}:/site" -w /site \
           jekyll build --verbose
+        continue-on-error: true
       - name: Prepare ssh key
         id: prepare_ssh_key
         if: ${{ gitea.ref == 'refs/heads/main' }}
         run: |
           echo "${{ secrets.WWW_DEPLOY_KEY }}" > ~/.ssh/id_ed25519
           chmod 600 ~/.ssh/id_ed25519
-      - name: Publish Jekyll site
-        id: publish_site
+      - name: Deploy Jekyll site
+        id: deploy_site
         if: ${{ gitea.ref == 'refs/heads/main' }}
         run: |
           rsync -halvi \
             -e "ssh -a -x -o StrictHostKeyChecking=no" \
             ./_site/ www@lafs.eval.latfa.net:/var/www/site/
+      - name: Comment pull request
+        id: comment_pull_request
+        if: gitea.event_name == 'pull_request'
+        uses: exercism/pr-commenter-action@v1.4.0
+        with:
+          template-variables: |
+            {
+              "asciidocOutcome": "${{ steps.asciidoc.outcome }}",
+              "verifyOutcome": "${{ steps.verify.outcome }}",
+              "verifyOutputsResult": ${{ toJSON(steps.verify.outputs.result) }},
+              "deployOutcome": "${{ steps.deploy.outcome }}",
+              "deployUrl": "${{ format('{0}/{1}{2}/', env.BASE_URL, env.PREFIX, env.SUFFIX) }}",
+              "githubActor": "${{ github.actor }}",
+              "githubEventName": "${{ github.event_name }}",
+              "githubWorkflow": "${{ github.workflow }}",
+              "githubRunNumber": "${{ github.run_number }}",
+              "githubRunAttempt": "${{ github.run_attempt }}"
+            }
+      - name: Fail on error
+        id: fail-on-error
+        if: |
+          steps.build_site.outcome != 'success'
+          || (github.event_name == 'pull_request' && steps.deploy_site.outcome != 'success')
+        run: exit 1