-
Notifications
You must be signed in to change notification settings - Fork 284
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
Move visual regression testing to GitHub Actions #1865
Comments
We should make sure to include the cache action so our composer (and other dependencies) are cached when they don't change. See: https://github.com/google/site-kit-wp/blob/develop/.github/workflows/storybook.yml#L22 for reference. Let's make that clear in the IBs so we don't see a slowdown in action speed when converting these over from Travis 😄 |
IB ✅ |
@eugene-manuilov one last ESLint error to fix here: https://travis-ci.com/github/google/site-kit-wp/jobs/392434806#L562 |
Putting this back to Execution just for a follow-up PR to fix the names as discussed before. |
QA ✅ |
Feature Description
As a stepping stone towards moving our CI jobs to GitHub Actions (see #1779), a good first candidate to move is the VRT job. One benefit of moving this job in particular is that we can upload the generated HTML report that backstop generates as an artifact of the job for downloading/inspection later in the event of a failure where this is not readily available with Travis (possible but requires you bring your own storage and authentication).
Do not alter or remove anything below. The following sections will be managed by moderators only.
Acceptance criteria
.travis.yml
$VRT
environment variable are removed from.travis.yml
develop
ormaster
branches and must pass for a PR to be mergedImplementation Brief
Travis Config
site-kit-wp/.travis.yml
Lines 115 to 116 in 6eb4c52
before_install
site-kit-wp/.travis.yml
Line 41 in 6eb4c52
before_script
blocksite-kit-wp/.travis.yml
Lines 50 to 52 in 6eb4c52
script
blocksite-kit-wp/.travis.yml
Lines 80 to 82 in 6eb4c52
GitHub Actions
.github/workflows/tests.yml
workflow fileSee
zips.yml
for reference as to when the workflow should run (although we only needpull_request
)visual-regression
job with steps to runMost of this can be borrowed from
storybook.yml
since VRT starts Storybook as the target to use when it runs--no-scripts
is important as we don't need to do any dependency scoping which hooks in here (this is really only needed for installing WP for sourcing CSS used by core) - we should change this but not sure that this is the right issue to do sonode
with the correct version usingnvm
npm ci
npm run test:visualtest
to start Storybook and run Backstop in docker as usualtravis_retry
, this can be called with a fallback to itself (npm run test:visualtest || npm run test:visualtest
) to retry it once if it fails the first time (which still happens, although rarely) since Actions do not provide away to re-run specific jobs.tests/backstop/html_report
as an artifact (example)job.<job-id>.steps.if
toif: failure()
so that it only runs if the job failsIf it fails before the tests run for some reason, the artifact would be empty or not uploaded which is fine
QA Brief
develop
ormaster
(won't take effect until following release)Changelog entry
The text was updated successfully, but these errors were encountered: