Configuration as Script

Universal Automation uses PS1 scripts to configure itself. You can either edit settings for a script, schedule or variable via the REST API or PowerShell module or via the PS1 scripts that are stored in the .ua folder. Whenever you make a change through the REST API or PowerShell module, it will automatically update a PS1 file with the same name in the .ua folder with the changes settings. You can also add these files yourself or edit them via git.

Script Info File


Universal Automation uses a LiteDB single-file database to store cached script, schedule and variable information. It also stores job status and output information. You can configure the database file path by setting the ConnectionString parameter of Start-UAServer.

By default, the database is stored in the %LocalAppData% folder.

Start-UAServer -ConnectionString "$Env:LOCALAPPDATA\UniversalAutomation\database.db"


To configure git a remote, you can set the GitRemote and GitRemoteCredential parameters of Start-UAServer.

Start-UAServer -GitRemote ''

You can also configure a git remote using the Set-UASetting cmdlet. If a git remote is already configured in the git repository that is cloned on disk, there is no need to configure a git remote manually.


Concurrent Job Limit

You can set the concurrent job limit for the server to reduce the number of jobs running at once. This can help prevent resources from being swamped. The default value is an unlimited number of jobs. Unlicensed versions of UA are limited to 2 jobs. You can adjust this limit from the settings tab within the UI or by setting the ConcurrentJobLimit property of the UASettings object.

Once the concurrent job limit is reached, jobs will queue and wait for jobs to process before starting.