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

ci: migrate browser tests to GHA #27675

Merged
merged 2 commits into from
Oct 6, 2023

Conversation

josephperrott
Copy link
Member

Migrate browser tests to Github Actions

@josephperrott josephperrott added action: merge The PR is ready for merge by the caretaker target: patch This PR is targeted for the next patch release labels Aug 17, 2023
@josephperrott josephperrott changed the base branch from migrate-tests to main August 17, 2023 22:26
@angular-robot angular-robot bot added the area: build & ci Related the build and CI infrastructure of the project label Aug 17, 2023
.github/workflows/ci.yml Outdated Show resolved Hide resolved
# yarn integration-tests:size-test || yarn ci-notify-slack-failure components-ci-size-tracking

test:
runs-on: ubuntu-latest-4core
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think we are hitting a point where we should discuss/audit that we are not regressing with our CI times- especially given the lower spec'ed host VMs compared to CircleCI. Do we have any data here?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't have anything, but I would prefer that we start low and find we need to up them instead of just jumping to big runners right away.

Unfortunately I haven't been able to find a good way to "benchmark" to be able to say what we should use.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sorry for being a little pushy about this. I just think it's important to keep CI times similar to before. Historically Angular components had the fastest wall time of CI across all repositories and I feel strongly that we want to keep this. We should not simply switch to GitHub actions, use significantly different runners without auditing/comparing.

Even if we are saying we can revisit in the future- in practice we will likely never do this. We are not immediately jumping to big runners- but we should audit/compare and understand the impact on the Bazel host etc. We are just looking at not regressing in CI wall time. Additionally smaller runners might incur the same cost as larger runners which take fewer minutes.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Also capturing this here (not related to runner size I assume), I'm seeing a 10min time for lint, while on CircleCI it took 2min. See: https://github.com/angular/components/actions/runs/6034665778/job/16373509530

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I did some testing and found that 16core is the sweet spot of speed/cost.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Perfect. Thanks for looking more.

.github/workflows/ci.yml Outdated Show resolved Hide resolved
@devversion devversion added the merge: preserve commits When the PR is merged, a rebase and merge should be performed label Aug 18, 2023
@josephperrott josephperrott force-pushed the migrate-tests branch 2 times, most recently from 9ef4e08 to 76e8e89 Compare August 30, 2023 19:53
@mmalerba mmalerba removed the action: merge The PR is ready for merge by the caretaker label Sep 25, 2023
@josephperrott
Copy link
Member Author

@devversion PTAL

@josephperrott josephperrott force-pushed the migrate-tests branch 2 times, most recently from a84f7aa to 76cd4b4 Compare October 6, 2023 17:39
@devversion
Copy link
Member

I think I was waiting on #27675 (comment).

Migrate browser tests to Github Actions
Notify on slack when a test fails on the upstream branch
@josephperrott josephperrott added the action: merge The PR is ready for merge by the caretaker label Oct 6, 2023
@josephperrott josephperrott merged commit 5bdeecb into angular:main Oct 6, 2023
18 checks passed
@josephperrott josephperrott deleted the migrate-tests branch October 6, 2023 18:44
@angular-automatic-lock-bot
Copy link

This issue has been automatically locked due to inactivity.
Please file a new issue if you are encountering a similar or related problem.

Read more about our automatic conversation locking policy.

This action has been performed automatically by a bot.

@angular-automatic-lock-bot angular-automatic-lock-bot bot locked and limited conversation to collaborators Nov 6, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
action: merge The PR is ready for merge by the caretaker area: build & ci Related the build and CI infrastructure of the project merge: preserve commits When the PR is merged, a rebase and merge should be performed target: patch This PR is targeted for the next patch release
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants