Unity Gaming Services CLI
Create and manage schedule configurations from the command line using the Unity Gaming Services command-line interface.
Read time 2 minutesLast updated 3 months ago
You can use the Unity Gaming Services CLI to interact with schedules. The CLI allows you to manage schedule configurations from the command line.
Prerequisites
For more comprehensive information on the CLI, follow the steps in the Unity Gaming Services CLI Get Started guide.
To follow this guide, you first need to complete the following actions:
-
Use the following to configure your Project ID and Environment:
ugs config set project-id <your-project-id>
ugs config set environment-name <your-environment-name> -
Configure a service account with the required roles for Scheduler and environments management. For more information, refer to Get Authenticated.
Using the CLI
For a full reference of all commands and options, refer to the Schedules Command Line documentation.
Deploy schedules
Run the command to create a schedule configuration locally:
new-fileugs scheduler new-file <file-name>
The configuration file contents can look like the following:
{ "$schema": "https://ugs-config-schemas.unity3d.com/v1/schedules.schema.json", "Configs": { "Schedule1": { "EventName": "EventType1", "Type": "recurring", "Schedule": "0 * * * *", "PayloadVersion": 1, "Payload": "{}" }, "Schedule2": { "EventName": "EventType2", "Type": "one-time", "Schedule": "2024-03-08T13:06:32.311+00:00", "PayloadVersion": 1, "Payload": "{ \"message\": \"Hello, world!\"}" } }}
You can also separate the schedule configurations into multiple files if you need to.
{ "$schema": "https://ugs-config-schemas.unity3d.com/v1/schedules.schema.json", "Configs": { "Schedule1": { "EventName": "EventType1", "Type": "recurring", "Schedule": "0 * * * *", "PayloadVersion": 1, "Payload": "{}" } }}
{ "$schema": "https://ugs-config-schemas.unity3d.com/v1/schedules.schema.json", "Configs": { "Schedule2": { "EventName": "EventType2", "Type": "one-time", "Schedule": "2024-03-08T13:06:32.311+00:00", "PayloadVersion": 1, "Payload": "{ \"message\": \"Hello, world!\"}" } }}
You can use the command to promote your local schedule configuration files to the remote environment.
DeployYou need to deploy the configuration files for them to become active schedules.
ugs deploy <path-to-schedules-file> <path-to-schedules-file>
ugs deploy <path-to-directory>
Retrieve schedules
To list all currently active schedules, run the following command:
ugs scheduler list
You can use the command to retrieve multiple schedules from remote at once.
FetchThe provided path is the directory that schedules are saved to:
ugs fetch <path>
Delete schedules
You can delete a schedule by running the command with a flag.
deploy--reconcileugs deploy <path-to-config-file> --services scheduler --reconcile