Block inaccessible merge requests with GitLab commit statuses
Ready for 3.0Ready for 3.0. This template uses no nodes that n8n 3.0 removes. No removed nodes, versions or helpers found. Static check, last run 2026-10-19.
What this workflow does
This workflow has 19 nodes and runs on GitLab events (merge requests). Along the way it connects GitLab.
How it runs
Trigger: On GitLab events (merge requests).
- Accessibility Rules (Edit Fields (Set)): sets 6 fields: gitlab_api, file_extensions, min_contrast…
- A Change To Check? (If): checks a condition and branches into true / false
- List Changed Files (HTTP Request): calls an HTTP API (GET)
- GitLab Listed The Files? (If): checks a condition and branches into true / false
- Keep Web Files And Added Lines (Code): runs custom JavaScript code
- Stop: GitLab Did Not List The Files (Stop and Error): stops the run with an error
- Any Web File Changed? (If): checks a condition and branches into true / false
- Read File At Source Commit (GitLab): get (file)
- Nothing To Check (Code): runs custom JavaScript code
- Check Alt, Labels, Lang And Contrast (Code): runs custom JavaScript code
…plus 7 more steps. See the full node list below.
Services it uses
Before you upgrade to n8n 3.0
Nothing in this workflow is removed in n8n 3.0, so it should import and run after the upgrade.
Nodes used (9)
- GitLab Trigger
n8n-nodes-base.gitlabTrigger - Edit Fields (Set)
n8n-nodes-base.set - If
n8n-nodes-base.if - HTTP Request
n8n-nodes-base.httpRequest - Stop and Error
n8n-nodes-base.stopAndError - Code
n8n-nodes-base.code - No Operation, do nothing
n8n-nodes-base.noOp - GitLab
n8n-nodes-base.gitlab - Switch
n8n-nodes-base.switch
From the author
Quick Overview This workflow triggers on GitLab merge request updates, scans changed markup files for basic WCAG 2.1 accessibility issues aligned with EU Accessibility Act requirements, then sets a commit status and maintains a single merge request comment…