ably-dotnet
ably-dotnet copied to clipboard
[Unity] Github CI setup + Stable release
When it comes to Linux, mac OS and Windows the .NET builds for these are run on GitHub hosted runners. We want to add Unity as a 4th supported platform and for various reasons we can’t do this using GitHub’s runners.
Unity has a ‘Cloud Build’ service that can be triggered by a GitHub Action in order to build code (stored on GitHub) on a Unity hosted server.
From the perspective of a developer creating a new pull-request in the Ably .NET repo via GitHub we would like Unity to appear as just another platform and as much of the ‘remote Unity Cloud Build’ magic to be as hidden as possible. In order to achieve this build output from Unity Cloud Build should be sent back to GitHub so that it can be included in the existing build log alongside the Linux, mac OS and Windows logs.
➤ Tom Kirby-Green commented:
The following is useful research background:
https://docs.unity3d.com/Manual/UnityCloudBuild.html
https://build-api.cloud.unity3d.com/docs/1.0.0/index.html
https://unitycoder.com/blog/2021/11/18/run-unity-cloud-build-based-on-github-commit-message-using-github-actions/
https://github.com/marketplace/actions/unity-builder
Work on this is actively taking place, with @sacOO7 heading up the development effort.
Tasks involved
- [ ] Get a unity pro license as per https://game.ci/docs/github/activation#professional-license.
- [ ] Set up GitHub action CI to build and test unity code on various platforms ( Make sure to update Ably DLLs for current git commit ).
- [ ] Publish test result summary as an artifact.
- [ ] Update README and Unity README with the stable release for unity.
Unity pro license link - https://store.unity.com/configure-plan/unity-pro. I think a monthly subscription for one seat is enough ( $185/month), it can be shared between developers and CI.