Search Unity

Unity Build Server is a new way to offload project builds to dedicated hardware, so studios can build projects at scale and improve team productivity.

Building projects may not be the first thing people think about when they choose Unity, but figuring out how to handle project builds can be a significant problem as projects grow in size and complexity. It’s frustrating when you’re partway into development and you realize you can’t get enough project builds rolling for all the different stakeholders to test at a rate that can keep up with the speed at which a project gets updated. Or worse, you realize your development team has to use their own workstation to build a project and they are losing serious productivity time while waiting for a build to complete.

Enter Unity Build Server

Unity Build Server is a license type that runs Unity in batch mode, exclusively for building your Unity projects. This means developers don’t need to use their primary workstation to build projects, which consumes machine resources and slows down any other work that needs to be done. It also lets more team members request builds at their own pace, when they need them, so there is no waiting for a nightly build to see if something got fixed, to test a gameplay idea, or to verify that the new build works properly on a different target platform.

Who is it for?

Both Unity Pro and Unity Enterprise subscribers can get access to Unity Build Server. Unity Pro customers can get it through add-on packs, while Unity Enterprise customers get a number of Build Server licenses that scales up based on how many Unity Enterprise licenses they have. Enterprise customers can also add more Build Server licenses through add-on packs, if needed. So if you’re an Enterprise subscriber today, you can start using Build Server right now.

How does it work?
While Unity Editor licenses can either be node-locked to a single machine or floating licenses, Unity Build Server is always deployed as a floating license. Unity Build Server can be used with both floating or node-locked Unity Editor configurations. Please speak with your sales representative, or contact us to learn more about floating licenses.

First, you need to set up the  Unity License Server from the Unity ID Portal and deploy it  locally in your studio network with a centralized pool of floating Unity Build Server licenses. The Unity License Server can then serve Build Server licenses  dynamically on demand when project builds are requested by users. Once a build process is complete, the license is automatically returned to the pool. 

The flexibility of a floating license means that you can change network hardware or deployment targets at any time without having to manually reassign licenses. Unity Build Server can also be set up with popular automation and continuous integration systems so it doesn’t obstruct existing build pipelines – it just makes the build process more fluid and integrated.

Unity ID Portal

To get started with Unity Build Server, download the license server from the Unity ID Portal. You’ll need to answer a few questions about your setup via a command line process for the license server to pull the required information from the target server. The resulting server registration file is uploaded to the Unity ID Portal, where the Unity Build Server license is generated and made available to be deployed back to the target server. 

Deployment example 1: Local build farm

Unity License Server deploys Unity Build Server licenses to specified target hardware within a studio to complete project builds. Also shown here, Unity License Server deploying floating Unity Editor licenses to users. Unity Build Server works with node-locked and floating Unity Editor licenses.
Deployment example 2: Building in the cloud
Unity License Server deploys Unity Build Server licenses to specified target hardware located externally to the studio, such as a cloud deployment of virtual machines. Also shown here, Unity License Server deploying floating Unity Editor licenses to users. Unity Build Server works with node-locked and floating Unity Editor licenses.

To learn more about Unity Build Server, visit the product page. Or contact us to discuss Unity Build Server with our sales team.

14 replies on “Offload project builds with Unity Build Server”

> Unity Build Server is a license type

This is very confusing, why name it “Server” when it’s not a server. It’s best to name it Unity Build License, or Unity Build Server License

Could you provide more information on how the commandline calls change when using this mechanism?
I guess something has to change, as the product page states “Unity 2019.4.3 LTS or later” as required version and it also states that the license will be returned automatically after the build has finished, which was previously not possible.

If the calls can be reduced from “Get License -> Call Batchmode -> Return License” to one call, how does it handle crashes? How is the returning of the license ensured then?

I’m really interested in this product, especially because of the pricing aspect, but the current amount of readily available documentation is hampering my excitement quite a bit.

You configure the Unity install to use the floating license server with a config file, and once that is in place, acquiring and returning licenses is completely automatic – you don’t need to explicitly specify anything on the command line.

The licenses are ‘leased’ from the license server, so if the Editor doesn’t exit cleanly, then after a (configurable) time the lease will expire and the license server will allow granting it to another machine. You can also manually revoke the lease, either from the client or from the licensing server.

This is good news, but I wish you could buy a single license. We’re a small studio that only has (and needs) two build machines and this penalises us.

Naming build server a license is very confusing. I entered expecting a ready to go solution to deploy and trigger builds in our server.
You should change the name.

No, we have no plans to remove batch mode from the Unity Editor. You can keep running what you have for CI – just remember that your CI machines need licenses, just like any other machine.

If your organisation is operating on a Unity Pro or Unity Enterprise tier, then Unity Build Server offers you a cheaper and more easy-to-administer alternative to applying full Pro or Enterprise licenses to your CI machines.

Some sort of trial would be useful – I couldn’t find any documentation to help inform a purchase decision. Eg a licence-free trial that did everything except make the actual build would help users understand how this might fit their workflow.

Unity Build Server just helps you with the licensing aspect of running Unity for your build machines – it doesn’t take a position on exactly how those builds get done beyond “Unity must only run in batch mode.”

So, incremental build support is up to your CI system – if you are using Jenkins, for example, and you configure it to preserve the working copy state between builds, then yes, your builds would happen incrementally.

Comments are closed.