This repository was archived by the owner on Jan 18, 2022. It is now read-only.
  
  
  - 
                Notifications
    You must be signed in to change notification settings 
- Fork 77
Release Process
        Paul Balaji edited this page Jul 24, 2020 
        ·
        48 revisions
      
    This document outlines the process for releasing a version of the GDK for Unity and the starter projects.
- Announce in #dev-unity-internalthat the release process has begun:developbranches frozen, etc. Ask if anyone @here knows of any blocking defects in code or docs that should be resolved prior to commencement of the release process.
- Run the gdk-for-unity-shared-ci-releasepipeline on BuildKite. This pipeline runs through (most) of the release process.- It will first ask you to provide a release version (e.g. - 0.2.5)
- For each repository, it will: update package versions, prepare the changelog, open a PR, and kickoff release QA.
- Your job is to perform the release QA steps in the sections below:
- Once QA has been completed successfully, approve the RC PR and you can unblock the pipeline and it will proceed to the next repository.
- Please see the section below for instructions on implementing fixes.
 
- It will first ask you to provide a release version (e.g. - 
- After the pipeline has finished running, each repository will be in the following state:
- 
developwill be ready-to-release.
- There will be a draft release prepared.
 
- 
- For each repository:
- 
Rebase master against develop by running git checkout master && git pull --rebase origin develop.
- Remove branch protection from master.
- Push master with git push -f origin master.
- Re-enable branch protection on master.
- Publish the draft release (add a nice little message at the start, see previous releases for examples).
 
- 
Rebase master against develop by running 
- Publish docs
- For the generated API docs:
- Run the following pipeline https://buildkite.com/improbable/gdk-for-unity-generate-docs against develop.
- Unblock the pipeline with the release version (i.e. - 0.3.4)
- Once the pipeline is green, the generated docs have been published to ReadMe.
 
- Run the following pipeline https://buildkite.com/improbable/gdk-for-unity-generate-docs against 
- ReadMe docs - ensure that there is a branch with the release version.
- Update all the package versions for each feature module in the docs.
- Update all the package versions in the make your own project section.
 
 
- For the generated API docs:
- Announce release
- Forums
- Discord
- #releases channel
- Internal email
 
If at any point in the below validation steps you encounter a blocker, you must fix that defect prior to releasing. Non-blocking issues should get a JIRA ticket (and potentially a known issue depending on what it is).
I've found a blocker in gdk-for-unity while QA'ing gdk-for-unity
- Branch off of developand fix the bug. PR back intodevelop.
- Re-run the "Prepare GDK for Unity release" and then the "Add step for triggering release QA" build steps (sequentially).
I've found a blocker in gdk-for-unity while QA'ing FPS/Blank
- Branch off of developand fix the bug. PR back intodevelop.
- Restart the release BuildKite pipeline.
I've found a blocker in FPS/Blank while QA'ing FPS/Blank
- Branch off of developand fix the bug. PR back intodevelop.
- Re-run the "Prepare FPS/Blank release" and then the "Add step for triggering release QA" build steps (sequentially).
- Ensure that each of the buttons in the SpatialOStoolbar behave as expected.
- Validate that the Deployment Launcher functions as expected.
- Connect a Windows and MacOS client via the launcher to the deployment.
- Connect a mobile client (both iOS and Android) with development authentication.
- Connect a Windows client to a local deployment.
- Connect a Mac client to a local deployment.
- Connect a mobile iOS client to a local deployment.
- Connect a mobile Android client to a local deployment.
- Open the map builder window found in: SpatialOS/Map Builder.- Ensure that a 24 layer map generated with default map builder settings matches the navmesh in the FPS-DevelopmentandFPS-SimulatedPlayerCoordinatorscenes.
 
- Ensure that a 24 layer map generated with default map builder settings matches the navmesh in the 
- Connect a Windows client to a local deployment.
- Connect a Mac client to a local deployment.
- Connect a mobile iOS client to a local deployment.
- Connect a mobile Android client to a local deployment.
- Connect a Windows client to a cloud deployment.
- Connect a Mac client to a cloud deployment.
- Connect a mobile iOS client to a cloud deployment.
- Connect a mobile Android client to a cloud deployment.
- Connect a Windows and MacOS client via the launcher to the deployment.
- Connect a mobile client (both iOS and Android) with development authentication.
- Connect a Windows client to a local deployment.
- Connect a Mac client to a local deployment.
- Connect a mobile iOS client to a local deployment.
- Connect a mobile Android client to a local deployment.
Note that when you connect, nothing will appear on screen - in the Inspector however, there should be a Player entity.
Hi all,
We've just released the GDK for Unity <version>, which contains <some description of what's in the new release>.
The full release notes can be found here: https://github.com/spatialos/gdk-for-unity/releases/tag/<version>
This release also contains updated versions of our FPS Starter Project and Blank Project:
• https://github.com/spatialos/gdk-for-unity-fps-starter-project/releases/tag/<version>
• https://github.com/spatialos/gdk-for-unity-blank-project/releases/tag/<version>
Cheers,
The GDK for Unity team