Wayback Machinekoobas.hobune.stream
May JUN Jul
Previous capture 12 Next capture
2021 2022 2023
1 capture
12 Jun 22 - 12 Jun 22
sparklines
Close Help
  • Products
  • Solutions
  • Made with Unity
  • Learning
  • Support & Services
  • Community
  • Asset Store
  • Get Unity

UNITY ACCOUNT

You need a Unity Account to shop in the Online and Asset Stores, participate in the Unity Community and manage your license portfolio. Login Create account
  • Blog
  • Forums
  • Answers
  • Evangelists
  • User Groups
  • Beta Program
  • Advisory Panel

Navigation

  • Home
  • Products
  • Solutions
  • Made with Unity
  • Learning
  • Support & Services
  • Community
    • Blog
    • Forums
    • Answers
    • Evangelists
    • User Groups
    • Beta Program
    • Advisory Panel

Unity account

You need a Unity Account to shop in the Online and Asset Stores, participate in the Unity Community and manage your license portfolio. Login Create account

Language

  • Chinese
  • Spanish
  • Japanese
  • Korean
  • Portuguese
  • Ask a question
  • Spaces
    • Default
    • Help Room
    • META
    • Moderators
    • Topics
    • Questions
    • Users
    • Badges
  • Home /
avatar image
0
Question by mikael_kalms · Oct 13, 2017 at 08:13 AM · licensebuildinglinux editorheadless

Setting up a custom build system - linux, headless build machines, licenses

Do build machines need normal licenses?

If we are Pro users, how do we run extra build machines? Do we need to purchase extra licenses for those build machines? (Or do we re-use licenses from regular users? What if most people on the team already are using their pro licenses both at their workstations and their laptops, to be able to work remotely at times?) Is there some special form of license for build machines?

Background

I am looking at setting up our own build system, but am looking for some tips and pointers.

We have already tried Unity Cloud Build. It is simple, but it does not fit our use case that well; we use Plastic Cloud for version control, we want quick turnaround for builds, we want custom build steps (example: apply Steam DRM wrapping) before and after the game package gets built by Unity. Therefore I am looking into setting up a custom build cluster.

  • I prefer not running own hardware if possible.

  • I prefer being able to scale up/down the number of build machines with a couple of commands.

  • I like container technology (Docker/Kubernetes). Container technology works best on Linux OS.

  • I like Jenkins and Buildbot.

  • I understand that physical Mac machines are needed to build for Mac App Store & iOS store.

I have managed to get Unity installed on a Linux VM in Google Compute Engine, and license activation using a Pro account, thanks to these threads. Still, the licensing questions remain. If there are reasonable solutions for the licensing situation, I intend to continue with pushing Unity into Docker containers which are nuked and rebuilt on regular schedule.

Comment
Add comment
10 |3000 characters needed characters left characters exceeded
▼
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Viewable by all users

1 Reply

· Add your reply
  • Sort: 
avatar image
0

Answer by mikael_kalms · Oct 13, 2017 at 03:38 PM

After talking with Unity staff, the answer is currently: "Use the 2nd seat of your current licenses for your build machines". (Each pro license is for 1 user on up to 2 machines/seats) There are no special build licenses available, nor any way to build a player without activating a license on the build machine.

This means that yes, a build cluster can be set up on a bunch of VMs in Google Cloud/AWS/Azure - but the machines should be long-lived. Setups where containers/VMs are dynamically created and destroyed on demand or according to schedule won't work.

Here are a couple of options which should work though:

  • Install both Unity and the build system directly onto VMs. Use classic tools like puppet/chef/ansible to manage what is installed and running on each VM. Run build jobs directly on each VM.

  • Install both Unity and the build system directly onto VMs. Use classic tools like puppet/chef/ansible to manage what is installed and running on each VM. Run build jobs within containers on each VM.

  • Install Unity directly onto VMs, deploy build system and build within containers on said VMs. Run build jobs within containers. Use tools like puppet/chef/ansible to control which Unity version is installed on each VM; use container tech to control the build system and its outputs.

  • Start up containers on VMs, perform Unity and build system installation within these containers. Run build jobs within these containers. Use puppet/chef/ansible to manage what is happening within each container.

Docker/Kubernetes will not give you auto scaling. You do get good monitoring of the parts that are run within containers. As long as Unity is installed outside of the container, you can also easily throw away the container to get a guaranteed clean build. On the other hand, it means you have yet another layer of complexity in your infrastructure.

Comment
Add comment · Share
10 |3000 characters needed characters left characters exceeded
▼
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Viewable by all users

Your answer

Hint: You can notify a user about this post by typing @username

Up to 2 attachments (including images) can be used with a maximum of 524.3 kB each and 1.0 MB total.

Follow this Question

Answers Answers and Comments

73 People are following this question.

avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image

Related Questions

"Timeout occured while trying to update license." in headless build (Fedora Linux/Jenkins) 2 Answers

Unity Test Runner batchmode error. Failed to activate/update license. Timeout occured while trying to update license. 0 Answers

Can I build a Unity Pro project using Unity free? 1 Answer

Why can't I build Web Player in Unity while I have no problems with building standalone versions? 2 Answers

How to remove unneeded references (texture, audio) when doing headless server builds? 2 Answers


Enterprise
Social Q&A

Social
Subscribe on YouTube social-youtube Follow on LinkedIn social-linkedin Follow on Twitter social-twitter Follow on Facebook social-facebook Follow on Instagram social-instagram

Footer

  • Purchase
    • Products
    • Subscription
    • Asset Store
    • Unity Gear
    • Resellers
  • Education
    • Students
    • Educators
    • Certification
    • Learn
    • Center of Excellence
  • Download
    • Unity
    • Beta Program
  • Unity Labs
    • Labs
    • Publications
  • Resources
    • Learn platform
    • Community
    • Documentation
    • Unity QA
    • FAQ
    • Services Status
    • Connect
  • About Unity
    • About Us
    • Blog
    • Events
    • Careers
    • Contact
    • Press
    • Partners
    • Affiliates
    • Security
Copyright © 2020 Unity Technologies
  • Legal
  • Privacy Policy
  • Cookies
  • Do Not Sell My Personal Information
  • Cookies Settings
"Unity", Unity logos, and other Unity trademarks are trademarks or registered trademarks of Unity Technologies or its affiliates in the U.S. and elsewhere (more info here). Other names or brands are trademarks of their respective owners.
  • Anonymous
  • Sign in
  • Create
  • Ask a question
  • Spaces
  • Default
  • Help Room
  • META
  • Moderators
  • Explore
  • Topics
  • Questions
  • Users
  • Badges