This workflow acts as a CI/CD quality gate for mobile app crash-symbolication artifacts.
Whenever a new commit is pushed to GitHub, the workflow automatically checks the corresponding Sentry release and confirms whether required build artifacts (dSYM or ProGuard + mapping.txt) exist. If artifacts are complete, it updates the GitHub commit status to success, allowing the PR to be merged. If incomplete, the workflow fails silently (no commit status update), effectively blocking merges.
This workflow ensures your mobile crash-symbolication artifacts are fully present in Sentry for every release.
When a new GitHub push occurs, the workflow:
*.dSYM file exists OR\proguard.txt AND mapping.txt are present\This provides a strong CI gate ensuring symbolication completeness and preventing un-debuggable releases.
The GithubPushTrigger node listens for push events and extracts:
No configuration required except selecting your GitHub credentials.
Open Check Sentry Artifacts Releases and update:
https://sentry.io/api/0/projects/<org_slug>/<proj_slug>/releases/
Make sure the Sentry credential is correctly selected.
The next HTTP Request (Check Sentry Artifacts Files) uses a dynamic
URL:
https://sentry.io/api/0/projects/<org_slug>/<proj_slug>/releases/{{ $json.version }}/files/
Ensure your build pipeline sets version consistently with what Sentry receives.
The Verify Artifacts node runs JS logic to check:
Any file ending with .dSYM
proguard.txt\mapping.txtThe Code node returns:
{ "status": "failure", "description": "Missing artifacts..." }
This stops the workflow and prevents GitHub commit-status update.
The Artifacts Validation and Get Repository Data node compiles:
If validation failed → workflow ends here.
The Update Status node hits:
POST https://api.github.com/repos/<repoFullName>/statuses/<commitSHA>
And sends:
{
"state": "success",
"description": "Artifacts successfully verified."
}
This appears as a green check on your commit/PR.
Turn on the workflow to start enforcing symbolication completeness for all releases.
Edit URLs in both Sentry HTTP Request nodes:
org_slugproj_slugModify JS inside Verify Artifacts, e.g., require:
Edit the request body in Update Status.
Branch logic in:
| Issue | Possible Cause | Solution |
|---|---|---|
| Commit status never updates | Validation failed silently | Check logs from Verify Artifacts |
| "version undefined" in URL | Sentry release list not matched | Ensure your build uploads a valid version |
| 401 from Sentry API | Invalid/broken Sentry token | Regenerate token and update credentials |
| Always failing validation | Artifact names differ (e.g., .dsym.zip) |
Update RegEx patterns in Code node |
| GitHub status API returns 404 | Missing repo permissions | Update GitHub credentials (repo status scope) |
| Files array empty | Build system not uploading artifacts | Verify build → Sentry upload step |
If you need help customizing the artifact rules, integrating multiple platforms or automating Sentry/GitHub workflows, reach out to our n8n automation developers at WeblineIndia. We can assist with:
Happy automating! 🚀