GameDeploymentTemplate
The GameDeploymentTemplate indicates which [game server] ApplicationBuilds you want to have deployed within a Fleet.
Usage
A GameDeploymentTemplate is used by a Fleet and defines which ApplicationBuilds (of type Game) will be deployed for that Fleet. A single GameDeploymentTemplate can define more than one ApplicationBuild by adding multiple GameDeploymentTemplateBuild elements. Each of these defines a single (ApplicationBuild (of type Game).
Each ApplicationBuild defined in a template will be treated like individually scalable builds. If you set a Fleet's operational status to "Automatic Deployment", each build will be deployed individually according to the DeploymentProfile.minimumCapacity value. Similarly, when you set the Fleet's operational status to "Automatic Scaling", each build will be automatically scaled individually. In short, each ApplicationBuild in the GameDeploymentTemplate is treated individually. No relationship between the defined ApplicationBuilds exists.
You can create as many GameDeploymentTemplates as you like within the platform. However, a Fleet can only point to one GameDeploymentTemplate at a time. A GameDeploymentTemplate can be shared (re-used) across multiple fleets though.
Element structure
Property | Value type | Required | Description |
---|---|---|---|
id | string | Read-only | Unique identifier of this element |
fleetIds | [int] | Read-only | List of Fleet IDs this template is used in |
name | string | Yes | Name of the template |
inUse | boolean | Read-only | Indicates whether this template is actively being used in a Fleet |
createdAt | int | Read-only | A unix timestamp of when this element was created |
gameDeploymentTemplateBuild | [GameDeploymentTemplateBuild] | Yes | List of GameDeploymentTemplateBuild elements, pointing to ApplicationBuilds |
GameDeploymentTemplateBuild element structure
Property | Value type | Required | Description |
---|---|---|---|
applicationBuildId | string | Yes | Identifier of the ApplicationBuild you want to deploy |
API example
Create a new GameDeploymentTemplate within your i3D.net account.
HTTP request
POST /v3/deploymentTemplate/game
Request body
{
"name": "MyGameDeploymentTemplate",
"gameDeploymentTemplateBuild": [
{
"applicationBuildId": "3776948653267321543"
}
]
}
Response body
[
{
"id": "6537333393893172977",
"fleetIds": [
0
],
"name": "MyGameDeploymentTemplate",
"inUse": 0,
"createdAt": 1573060361,
"gameDeploymentTemplateBuild": [
{
"applicationBuildId": "3776948653267321543"
}
]
}
]
Attach GameDeploymentTemplate to a Fleet:
HTTP request
Request body
{
"gameDeploymentTemplateId": "6537333393893172977",
}
Response body
[
{
"id": "string",
"name": "string",
"deploymentEnvironmentId": "string",
"deploymentProfileId": "string",
"gameDeploymentTemplateId": "6537333393893172977",
"utilityDeploymentTemplateId": "string",
"operationalStatus": 0
}
]