Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

BUG: pa11y scans failing on site #3773

Closed
2 tasks
echappen opened this issue Oct 17, 2023 · 1 comment · Fixed by #3779
Closed
2 tasks

BUG: pa11y scans failing on site #3773

echappen opened this issue Oct 17, 2023 · 1 comment · Fixed by #3779
Assignees
Labels

Comments

@echappen
Copy link
Contributor

Expected Behavior

Pa11y scans all URL's in the CI check. Normal runtime for pa11y scan is ~25 mins.

Actual Behavior

The Pa11y CI check is passing, but pa11y is failing to scan any URL's. (CI example)

Steps to reproduce the behavior

  • Observe a CI scan post Oct 16
  • [ ]
  • [ ]

This issue is done when

  • Pa11y resumes scanning all urls on the site
  • [ ]
  • [ ]
@echappen echappen self-assigned this Oct 23, 2023
@echappen
Copy link
Contributor Author

echappen commented Oct 23, 2023

Observations:

  • The CircleCI job succeeds, which allows code to pass CI and to be merged, but the pa11y run inside the job is failing. You can tell this by the drop in build time from ~25 mins to ~5 mins
  • pa11y starts silently failing in the CircleCI job on this build for the Ruby 3 upgrade. However, that commit is small, and nothing in that commit seems relevant to pa11y, so I chalked it up to timing coincidence.
  • Other projects started having trouble with pa11y builds around this same time

What I’ve tried:

  • Pa11y job ends in SIGHUP after serving the site, but before any pa11y output
  • Running the same pa11y script locally works: ./serve-pa11yci && npm run pa11y-ci
  • Running pa11y in a GH Codespace failed in the same way that Matt H’s runs failed (as in, puppeteer exploded immediately)
    • Adding a few chrome dependencies before running pa11y got it to work in GH/Codespaces
  • But trying the above fix in CircleCI did not solve it, same behavior as before (SIGHUP)
  • Trying to SSH into the CircleCI build to further examine the environment is blocked by zscaler. Open ssh connection just hangs, even after checking for proper ssh keys. There are no consistent IP addresses provided by Circle for this purpose, so getting them allow-listed by GSA IT wouldn’t be effective.
  • Another idea is to get pa11y to fail more loudly in the CI job, but pa11y-ci doesn’t really offer a --verbose or equivalent config
  • I was able to ssh into a failing build. I'm able to curl URLs in the sitemap that pa11y is supposed to be hitting. Running pa11y manually while a detached server is running still returns a generic Failed to run message when scanning the first URL. I haven't been able to get it to return a more specific error using different configs.

I will update this comment as I try more things.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant