Adonis HARROUK
03/04/2026, 9:40 AMkapa.ai
03/04/2026, 9:40 AMkapa.ai
03/04/2026, 9:41 AMAdonis HARROUK
03/04/2026, 10:12 AMkapa.ai
03/04/2026, 10:12 AMkapa.ai
03/04/2026, 10:12 AMedr monitor --suppression-interval 168
[Suppression interval example]
As for whether it's "too long" ā community members generally advise thinking about two factors:
⢠How often does the test fail?
⢠How quickly can you (or the upstream team) resolve the issue?
A common default is 24 hours, with 72 hours for "spammy" tests. The reasoning is to avoid conditioning your team to ignore alerts. [Community advice]
For your specific case ā where the issue is upstream and you genuinely cannot fix it ā a week seems perfectly justified. The suppression interval can even go much higher (e.g., 720 hours for 30 days), as there's no hard upper limit. [No upper limit]
The key trade-off to keep in mind: if the upstream issue gets fixed and then breaks again within that week, you won't get alerted until the suppression window expires. So just make sure your team is aware of that gap. š 0 button š 0 button ā¹ļø Tip: Mention @elementary.ai in the thread for follow-ups or DM the app for 1-to-1 help.Senmi Rai
03/04/2026, 9:25 PMkapa.ai
03/04/2026, 9:25 PMedr commands in an automated way ā for example, sending data observability reports, monitoring for data issues, and sending alerts to Slack. [GitHub Actions docs]
The Official Action
Elementary publishes a ready-made action: elementary-data/run-elementary-action. You reference it in your workflow like this:
- name: Run Elementary
uses: elementary-data/run-elementary-action@v1.12
with:
warehouse-type: snowflake # or bigquery, redshift, etc.
adapter-version: 1.5.0 # optional, defaults to latest
profiles-yml: ${{ secrets.ELEMENTARY_PROFILES_YML }}
edr-command:
edr monitor
--slack-token "${{ secrets.SLACK_TOKEN }}"
--slack-channel-name "${{ secrets.SLACK_CHANNEL_NAME }}"
&&
edr report
--file-path "report.html"
&&
edr send-report
--slack-token "${{ secrets.SLACK_TOKEN }}"
--slack-channel-name "${{ secrets.SLACK_CHANNEL_NAME }}"
--s3-bucket-name "${{ secrets.S3_BUCKET_NAME }}"
Key Requirements
1. profiles.yml with an elementary profile ā typically stored as a GitHub secret (ELEMENTARY_PROFILES_YML). You can generate it with:
dbt run-operation --args '{"method": "github-actions"}' elementary.generate_elementary_cli_profile
2. Warehouse type ā must be specified (bigquery, snowflake, redshift, etc.).
3. Adapter version ā should match your dbt adapter version for compatibility. [Adapter version fix]
4. Cloud credentials ā for BigQuery, GCS, or S3, pass keyfiles/credentials as secrets.
Common edr Commands Used
⢠edr monitor ā reads test results and sends alerts for failures
⢠edr report ā generates the Elementary UI report locally
⢠edr send-report ā generates and sends the report to Slack, S3, or GCS
Note: edr send-report also generates a report internally, so running edr report before it is not strictly necessary.
Common Pitfalls
⢠Organization restrictions on private repos: External actions may be blocked by default. A workaround is to fork the run-elementary-action into your own organization. [Private repo restriction]
⢠Keyfile paths: Always use absolute paths (e.g., /tmp/dbt-service-account.json) for keyfiles, not relative paths, as edr may run from a different directory. [Absolute path fix]
⢠Environment variables in profiles.yml: Make sure they are exposed as env: in the workflow step so they can be resolved. [Env vars approach]
⢠dbt must run before Elementary: The action only runs edr commands. If you need dbt run or dbt test to happen first, add those as separate prior steps. š 0 button š 0 button ā¹ļø Tip: Mention @elementary.ai in the thread for follow-ups or DM the app for 1-to-1 help.Senmi Rai
03/04/2026, 9:48 PMkapa.ai
03/04/2026, 9:48 PM<https://github.com/nektos/act|act>).
What I can share from the knowledge sources is that one community member did attempt to test the Elementary GitHub Action locally using act (a tool for running GitHub Actions locally), and encountered this error:
Failed to get Elementary dbt package version: ...
'str' object has no attribute 'get'
This was related to how the profiles.yml was being passed and resolved in the local environment. [Local act testing]
Beyond that specific mention, the knowledge sources don't provide detailed guidance on local testing workflows for the Elementary GitHub Actions integration. I'd recommend checking the Elementary GitHub Actions repository directly or reaching out in the Elementary Slack community for more specific guidance on this topic. š 0 button š 0 button ā¹ļø Tip: Mention @elementary.ai in the thread for follow-ups or DM the app for 1-to-1 help.Adonis HARROUK
03/05/2026, 9:59 AMkapa.ai
03/05/2026, 9:59 AMenabled: false in the test config. This will stop Elementary from collecting results for that test and it will disappear from the report. However, this also means it won't run at all, which brings us to your second point.
2. Disabling the Test for a Set Period
The knowledge sources do not describe a built-in mechanism to temporarily disable a dbt test for a fixed time window and then automatically re-enable it. There is no "snooze until date X" feature in Elementary OSS.
What the community has discussed as the closest alternatives are:
⢠Suppression interval ā already using this ā
⢠Manually setting enabled: false on the test when the upstream issue is known, and re-enabling it once resolved ā but this requires a manual code change and dbt run each time [Disable test]
⢠A proper "mark as resolved/acknowledged" mechanism has been raised as a feature request by the community but is not yet implemented [Feature request]
Regarding the Airflow DAG Failure
If the dbt test failure is causing your Airflow DAG to fail, that's a dbt-level behavior (test severity), not something Elementary controls directly. One approach mentioned in the knowledge sources is to set the test severity to warn instead of error in dbt ā this way the test still runs and Elementary still captures the result, but it won't cause the dbt invocation to fail:
tests:
+severity: warn
This would prevent the Airflow DAG from failing while still keeping the test active and visible in Elementary. [Severity warn] š 0 button š 0 button ā¹ļø Tip: Mention @elementary.ai in the thread for follow-ups or DM the app for 1-to-1 help.