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

Chore: parallel smoketest build #686

Merged
merged 15 commits into from
Apr 30, 2022
Merged

Chore: parallel smoketest build #686

merged 15 commits into from
Apr 30, 2022

Conversation

vaind
Copy link
Collaborator

@vaind vaind commented Apr 13, 2022

Adding webgl added a lot of build time to the main build job. I'm thinking of splitting it up to separate parallel builds for android and WebGL (those two take most of the time). I originally wanted to do it in the WebGL PR, that's why this is built on top of that and has all the commits, but then I found out I need to make a few more changes to make the sample app use the extracted UPM package. In the end I decided to use the existing set of scripts already used to build integration-test app for Windows.

The changes are:

  1. add a new smoke-test-build matrix job that builds for Android and WebGL
  2. update scripts to accommodate those two changes
  3. add an auto-retry wrapper to unity - scripts/unity.ps1 - when a license activation fails, it will retry after a minute of wait. This change was previously discussed and becomes more important here when we have many jobs running at the same time. Would be solved by Use GHA concurrency to lock a single run per license used #312 but that one is blocked (unavailable on GHA).

closes #617 - it doesn't make much sense to have a Gradle export anymore, with the CI looking as it does now in this PR - we're already building on a separate platform. The best we could achieve with pre-building into a grade project first is a little more concurrency of Unity instances (due to the limited number of licences on the server), because after the gradle project is prepared, the app would be built outside of Unity, so the licence wouldn't be held. The benefit looks too small to even bother with this.

#skip-changelog

@vaind vaind force-pushed the chore/parallel-smoketest-build branch 13 times, most recently from 7daf101 to 0d41061 Compare April 21, 2022 13:21
@vaind vaind marked this pull request as ready for review April 21, 2022 13:37
@vaind vaind force-pushed the chore/parallel-smoketest-build branch 2 times, most recently from b7bd935 to 41199d9 Compare April 29, 2022 12:48
@vaind vaind force-pushed the chore/parallel-smoketest-build branch from 41199d9 to ff4cf86 Compare April 29, 2022 13:47
.github/workflows/ci.yml Outdated Show resolved Hide resolved
.github/workflows/ci.yml Outdated Show resolved Hide resolved
scripts/unity-utils.ps1 Show resolved Hide resolved
@vaind vaind force-pushed the chore/parallel-smoketest-build branch from ff4cf86 to 918eb04 Compare April 30, 2022 06:09
@vaind vaind merged commit bcf9ce7 into main Apr 30, 2022
@vaind vaind deleted the chore/parallel-smoketest-build branch April 30, 2022 08:54
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

CI export Gradle project
3 participants