stackbuilders / stackbuilders/rollbar-haskell

CI and tests failing on external contributor PRs

Open
#82 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

ci good first issue
Dominant language
Haskell
Stars
7
Forks
6
PR merge metrics
No merged PRs in 30d

Description

On incoming PRs from forks, the tests fail:

  src/Data/Yaml/Config.hs:215:19: 
  1) Rollbar.Yesod.rollbarYesodMiddlewareWith, when there is an error, triggers a call to Rollbar
       uncaught exception: ErrorCall
       Could not convert to expected type: Error in $.token: parsing Token failed, expected String, but encountered Null
       CallStack (from HasCallStack):
         error, called at src/Data/Yaml/Config.hs:215:19 in yaml-0.11.11.2-72b012f81738f9aa8a0375a02116a9c2de7469091d3d770581aea04b4133eac8:Data.Yaml.Config

We found out a year ago or so that this is caused by an intentional limitation on GitHub Actions runners. Runners forbid using secrets in the CI of external PRs for security reasons (to avoid leakage and mishandling). Since we rely on a Rollbar token to run E2E tests, this means that the tests are failing.

We want to keep these E2E tests, so one potential solution would be:

  • Disabling the CI in external PRs coming from forks.
  • Asking external contributors to provide proof of tests passing when asking for review, or run the tests ourselves locally for external contributions, to ensure that they pass.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by inspecting the GitHub Actions configuration for external fork pull requests and the E2E test path; the reported failure originates at src/Data/Yaml/Config.hs:215. Confirm how the missing Rollbar token affects these tests, then establish an agreed approach so external PRs do not fail solely because secrets are unavailable while the E2E tests remain covered.

Written by the indexing model from the issue text.

Assessment

Tech stack
github-actions, haskell
Domain
ci-cd, testing
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
30/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.