Hi! We extensively use our infrastructure based on Gitlab CI to build binaries for target platforms with Unity. For this, we have a lot of build machines: VMs and Mac minis. To manage the environment on those machines we are planning to use Puppet. To manage Unity installations we need an instrument with CLI.
I was happy to know, that Unity Hub has a CLI, but it’s so limited that it’s hard to make it work.
What do we need in general:
- Get a list of installed editors;
- Get a list of all available editors (with all information needed for install action);
- Get a list of installed modules for the given installed editor version;
- Instal and uninstall specific versions of an editor (including Intel / Apple Silicon versions for macOS);
- Instal and uninstall specific modules for the given installed editor version;
- Сheck the activation of the given licence key, and activate it if needed only by CLI (without human);
- Perform all actions above without starting an application.
Which critical makes Hub unusable now:
-
It isn’t possible to install Apple Silicon editors;
-
It isn’t possible to uninstall editors;
-
It isn’t possible to get a list of installed modules for a given editor;
-
It isn’t possible to uninstall modules for a given editor;
-
It isn’t possible to activate a builder licence without human interaction;
-
You need to provide a changeset parameter to install an Editor;
-
Even with
--headlessflag, it starts Hub applications, which slows the execution of check commands.
Currently, we have a solution which does most of that stuff - the u3d Ruby Gem, but it has delayed support and doesn’t work well with Hub.
I will be very thankful for more attention to the CLI part, and ready to provide even deeper feedback and use cases.