Agent Configuration
  • 04 Jan 2023
  • 8 Minutes to read
  • Dark
    Light
  • PDF

Agent Configuration

  • Dark
    Light
  • PDF

Agent.json

The agent.json file allows for configuration of the Liquit Universal agent.

The agent.json is found at:

Platform Path
Windows %ProgramData%\Liquit\Agent\Agent.json
macOS /Library/Application Support/com.liquit.Agent/Agent.json

Below you will find a sample agent.json configuration.

{
	"zone": "https://workspace.liquit.com",

	"registration": {
		"type": "Certificate"
	},

	"login": {
		"sso": true
	},

	"log": {
		"level": "Debug"
	}
}
Note

Backslashes '\' should be escaped within a JSON file. So that a single '\' will be a '\\'.

Zone

{
    "zone": "https://company.liquit.com/"
}
Key Description Default
zone This should be the URL with the FQDN on which the targeted Liquit Workspace Zone is reachable.

Register

These settings will allow the device to register itself with Liquit Workspace without requiring an user login. This allows you to manage the device without a user signed in. When using the type "Credentials", the user account used to register the agent only requires "Register device" privileges. When using this option, the user doesn't need the "Register device" privilege, while they can still use the agent when installed with this option.

{
    "registration": {
        "type": "Credentials",
        "username": "local\\wksimport",
        "password": "P@ssw0rd"
    }
}
Key Description Default
type
  • User User based registration, currently logged on user will be used to register the device with the server.
  • Credentials Use specified credentials to register this device with the server.
  • Certificate Use the local certificate (in the certificate store or "AgentRegistration.cer" file in the data path) to register this device with the server (see Device Registration).
user
username When Type is set to Credentials, this username is used to register the device.
password When Type is set to Credentials, this password is used to register the device.
password When Type is set to Credentials, this password is used to register the device.
certificateThumbprint When Type is set to Certificate, this optional setting is used to verify the certificate. The value should be specified as a HEX string, for example: ea7f07211fddc0df73bac1437a3ff932ce531005. If not specified, the certificate must resist on the filesystem:
  • Windows: %ProgramData%\Liquit\Agent\AgentRegistration.cer
  • macOS: /Library/Application Support/com.liquit.Agent/AgentRegistration.cer
If specified, then the Windows Certificate Store or macOS Keychain will be checked for a certificate with the specified thumbprint. If not found, and on the filesystem resists the certificate file which match the thumbprint, then that certificate will be installed in the Windows Certificate Store or macOS Keychain and the certificate file will be removed from the filesystem.

Deployments

{
    "deployment": {
        "enabled": false,
        "start": true,
        "context": "device",
        "cancel": true,
        "triggers": false,
        "autoStart": {
            "enabled": false,
            "deployment": null,
            "timer": 0
        }
    }
}
Key Description Default
enabled This value can be either true or false, when set to true Liquit will enable the deployment process on this machine. False
start If this value is true the process of deployments is automatically started.
  • When context equals 'Device': The deployment will start after 5 seconds of the agent being started.
  • When context equals 'User': The deployment will start the first time the userhost has started.
When set to false, this process can be manually started by starting:
  • Windows: C:\Program Files\Liquit Universal Agent\ShellAPI.exe --deployment --run
  • macOS: /Applications/Liquit.app/Contents/MacOS/ShellAPI --deployment --run
True
context Determine the context in which the deployment should run.
  • User: Required to login before the deployment wizard is shown, a selection can be made before starting deployment.
  • Device: No user login is required and the deployment will automatically begin. Auto start should be enabled. The auto start timer will be ignored, the specified deployment under autostart should match a single deployment.
Device
cancel If this value is true the deployment process can be cancelled. True
triggers If this value is true, the Liquit events (refresh/ login) can still be executed False

Autostart

Key Description Default
enabled This value can be either true or false, when set to true Liquit will automatically start the deployment process; when a corresponding deployment is found as configured in the Deployment element or when only 1 deployment is available for this device False
deployment Provide the targeted deployment in this element. This can either be the name of the deployment or the ID of the deployment
timer This element accepts an integer and represents the number of seconds Liquit will wait before automatically starting the deployment. 0

Log

The Liquit agent logs events initiated by the Liquit agent.

{
    "log": {
        "level": "Debug",
        "agentPath": "Agent.log",
        "userHostPath":"UserHost.log",
        "rotateCount": 5,
        "rotateSize": 1048576
    }
}
Key Description Default
level This element is used to define the level of logging. Liquit distinguishes between two logging levels:
  • None Nothing will be logged to the log file
  • Critical only critical errors will be logged to the log file.
  • Error Only error and critical errors will be logged to the log file.
  • Warning Only warning, error and critical errors will be logged to the log file.
  • Info Basic information and warning, error and critical errors will be logged to the log file.
  • Debug Detailed information will be logged to the log file about all actions. This can assist in troubleshooting problems.
  • Trace Only available in special builds provided by Liquit.
info
agentPath An alternate path for the log files can be defined by entering it in the path value.

The agent log can typically be found at the following location:
  • Windows: %ProgramData%\Liquit\Agent\Logs\Agent.log
  • macOS: /Library/Logs/com.liquit.Agent/Agent.log
Agent.log
userHostPath An alternate path for the log files can be defined by entering it in the path value.

The userhost log can be found at the following location:
  • Windows: %LOCALAPPDATA%\Liquit\UserHost\Logs\UserHost.log
  • macOS: /Users/xxx/Library/Logs/com.liquit.Agent/UserHost.log
UserHost.log
rotateCount Defines the number of logfiles that will be kept on archive. 5
rotateSize Defines the limit of logfile size in bytes, when this limit is reached a new logfile will be created and the old file will be archived. 1048576

Login

This element controls the login behavior for the Liquit agent.

{
    "login": {
        "enabled": true,
        "sso": true,
        "identitySource": "LIQUIT",
        "timeout": 4
    }
}
Key Description Default
enabled This controls whether the user should be promted for login true
sso Accepts either True or False, when this is set to True the Liquit Agent will use the configured Identity Source to facilitate SSO. false
identitySource Defines the default identity source used to log in the user. Use the name of the identity Source as you defined it within Liquit.
timeout Timeout in seconds after which the Liquit login prompt will be displayed if SSO could not be performed within the timeout. 4

Icon

Controls the behavior of the tray icon.

{
    "icon": {
        "enabled": true,
        "exit": true
    }
}
Key Description Default
enabled Can be either true or false. If this element is set to false than the tray icon will be hidden from the user. true
exit Can be either true or false. If this element is set to false the exit option on the tray icon menu will be disabled. The exit option will always be disabled if the launcher is enabled and is not allowed to close. true

Cache

This element controls settings for Cache.

{
    "cache": {
        "enabled": true,
        "offline": true,
        "path": "Cache",
        "tempPath": "Temp",
        "packageTempPath": "${TEMP}"
    }
}
Key Description Default
enabled When this element is set to true the local cache will persist even after the session ended. true
offline When this element is set to true, offline mode will be available for the local device. When this option is disabled, packages marked offline will not be automatically downloaded and the Launcher won't switch to offline mode. true
path Location on the local device where all content will be cached that is used by the agent.On default this path is configured to:
  • Windows: %ProgramData%\Liquit\Agent\Cache
  • macOS: /Library/Caches/Liquit/Agent/Cache
Cache
tempPath Temp directory on the local device, used for uploading folders to the Liquit Workspace backend. On default this path is configured to:
  • Windows: %ProgramData%\Liquit\Agent\Temp
  • macOS: /Library/Application Support/com.liquit.Agent/Temp
Temp
packageTempPath Base temp directory on the local device, used for the ${PackageTempDir} variable. ${TEMP}

Native Icons

Control wether or not Liquit is allowed to influence windows icons (Start Menu/Desktop).

{
    "nativeIcons": {
        "enabled": true,
        "primary": true,
        "startMenuPath": "${Programs}\\Liquit"
    }
}
Key Description Default
enabled Allow Liquit to push native icons to the operating system that are configured on package entitlements. true
primary If this value is true only icons from the zone defined in the zone key within the Agent.json will be pushed. true
startMenuPath Location to use where to place Start Menu items, allows you to specify a different directory then Liquit. Only for Windows. ${Programs}\Liquit

Triggers

{
    "triggers": {
        "enabled": true,
        "primary": true
    }
}
Key Description Default
enabled Allow Liquit to execute events (refresh, login etc.) true
primary If this value is true only events will be triggered in the agent for the primary zone. false

Refresh

{
    "refresh": {
        "manual": true,
        "interval": 3600
    }
}
Key Description Default
manual Can be set to either true or false, this controls wether the user can refresh the workspace by manual action. true
interval This value represents the time in (seconds) which the workspace will be refeshed (i.e. the latest packages are downloaded). 3600

Launcher

{
    "launcher": {
        "enabled": true,
        "state": "Default",
        "start": "Auto",
        "tiles": false,
        "minimal": false,
        "contextMenu": true,
        "sideMenu": "tags",
        "close": true
    }
}
Keys Description Default
enabled If the launcher should be enabled. true
state Defines how the launcher will be shown on start up:
  • Default: Default sized window
  • Minimized: Minimized window
  • Maximized: Maximized window
default
Start When the launcher will be started:
  • Disabled: Launcher is disabled.
  • Auto: Start when connected to the zone or offline is available.
  • Connected: Start when connected to the zone.
  • Always: Always open launcher, even if we can't connect or offline isn't available.
auto
Tiles Can be set to either true or false. When set to true Liquit will use the tile-themed skin. false
minimal Can be set to either true or false. When set to true Liquit Workspace will be run in minimal mode (icons only). false
contextMenu Can be set to either true or false. When set to true the contextmenu will be available in Liquit. true
sideMenu This element controls the default selected SideMenu, the following options are available:
  • filters
  • tags
  • teams
  • categories
close Can be set to either true or false. Defines wether or not the launcher window can be closed. true

Restrict Zones

{
    "restrictZones": false
}

If this value of this key is set to true, this will restrict which zones are allowed to access the local agent. The zone that is specified within the zone option is always allowed to communicate with the agent. If this option is set to false, a warning will be displayed asking the user if the zone where the user navigated to is allowed to access the agent. Default value is false.

Trusted Zones

{
    "trustedServers": [
        "zone1.liquit.com",
        "zone2.liquit.com",
        "*.dev.liquit.com"
    ]
}

This element allows you to add additionally trusted zones. Each zone DNS entry needs to be added as a list item. Wildcards can be used within the name to trust/match multiple zones within a single domain. This option is used in combination with RestrictZones.


Was this article helpful?

What's Next