gcp.gameservices.GameServerConfig
Explore with Pulumi AI
A game server config resource. Configs are global and immutable.
To get more information about GameServerConfig, see:
- API documentation
- How-to Guides
Example Usage
Game Service Config Basic
using System.Collections.Generic;
using System.Linq;
using System.Text.Json;
using Pulumi;
using Gcp = Pulumi.Gcp;
return await Deployment.RunAsync(() =>
{
var defaultGameServerDeployment = new Gcp.GameServices.GameServerDeployment("defaultGameServerDeployment", new()
{
DeploymentId = "tf-test-deployment",
Description = "a deployment description",
});
var defaultGameServerConfig = new Gcp.GameServices.GameServerConfig("defaultGameServerConfig", new()
{
ConfigId = "tf-test-config",
DeploymentId = defaultGameServerDeployment.DeploymentId,
Description = "a config description",
FleetConfigs = new[]
{
new Gcp.GameServices.Inputs.GameServerConfigFleetConfigArgs
{
Name = "something-unique",
FleetSpec = JsonSerializer.Serialize(new Dictionary<string, object?>
{
["replicas"] = 1,
["scheduling"] = "Packed",
["template"] = new Dictionary<string, object?>
{
["metadata"] = new Dictionary<string, object?>
{
["name"] = "tf-test-game-server-template",
},
["spec"] = new Dictionary<string, object?>
{
["ports"] = new[]
{
new Dictionary<string, object?>
{
["name"] = "default",
["portPolicy"] = "Dynamic",
["containerPort"] = 7654,
["protocol"] = "UDP",
},
},
["template"] = new Dictionary<string, object?>
{
["spec"] = new Dictionary<string, object?>
{
["containers"] = new[]
{
new Dictionary<string, object?>
{
["name"] = "simple-udp-server",
["image"] = "gcr.io/agones-images/udp-server:0.14",
},
},
},
},
},
},
}),
},
},
ScalingConfigs = new[]
{
new Gcp.GameServices.Inputs.GameServerConfigScalingConfigArgs
{
Name = "scaling-config-name",
FleetAutoscalerSpec = JsonSerializer.Serialize(new Dictionary<string, object?>
{
["policy"] = new Dictionary<string, object?>
{
["type"] = "Webhook",
["webhook"] = new Dictionary<string, object?>
{
["service"] = new Dictionary<string, object?>
{
["name"] = "autoscaler-webhook-service",
["namespace"] = "default",
["path"] = "scale",
},
},
},
}),
Selectors = new[]
{
new Gcp.GameServices.Inputs.GameServerConfigScalingConfigSelectorArgs
{
Labels =
{
{ "one", "two" },
},
},
},
Schedules = new[]
{
new Gcp.GameServices.Inputs.GameServerConfigScalingConfigScheduleArgs
{
CronJobDuration = "3.500s",
CronSpec = "0 0 * * 0",
},
},
},
},
});
});
package main
import (
"encoding/json"
"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/gameservices"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
defaultGameServerDeployment, err := gameservices.NewGameServerDeployment(ctx, "defaultGameServerDeployment", &gameservices.GameServerDeploymentArgs{
DeploymentId: pulumi.String("tf-test-deployment"),
Description: pulumi.String("a deployment description"),
})
if err != nil {
return err
}
tmpJSON0, err := json.Marshal(map[string]interface{}{
"replicas": 1,
"scheduling": "Packed",
"template": map[string]interface{}{
"metadata": map[string]interface{}{
"name": "tf-test-game-server-template",
},
"spec": map[string]interface{}{
"ports": []map[string]interface{}{
map[string]interface{}{
"name": "default",
"portPolicy": "Dynamic",
"containerPort": 7654,
"protocol": "UDP",
},
},
"template": map[string]interface{}{
"spec": map[string]interface{}{
"containers": []map[string]interface{}{
map[string]interface{}{
"name": "simple-udp-server",
"image": "gcr.io/agones-images/udp-server:0.14",
},
},
},
},
},
},
})
if err != nil {
return err
}
json0 := string(tmpJSON0)
tmpJSON1, err := json.Marshal(map[string]interface{}{
"policy": map[string]interface{}{
"type": "Webhook",
"webhook": map[string]interface{}{
"service": map[string]interface{}{
"name": "autoscaler-webhook-service",
"namespace": "default",
"path": "scale",
},
},
},
})
if err != nil {
return err
}
json1 := string(tmpJSON1)
_, err = gameservices.NewGameServerConfig(ctx, "defaultGameServerConfig", &gameservices.GameServerConfigArgs{
ConfigId: pulumi.String("tf-test-config"),
DeploymentId: defaultGameServerDeployment.DeploymentId,
Description: pulumi.String("a config description"),
FleetConfigs: gameservices.GameServerConfigFleetConfigArray{
&gameservices.GameServerConfigFleetConfigArgs{
Name: pulumi.String("something-unique"),
FleetSpec: pulumi.String(json0),
},
},
ScalingConfigs: gameservices.GameServerConfigScalingConfigArray{
&gameservices.GameServerConfigScalingConfigArgs{
Name: pulumi.String("scaling-config-name"),
FleetAutoscalerSpec: pulumi.String(json1),
Selectors: gameservices.GameServerConfigScalingConfigSelectorArray{
&gameservices.GameServerConfigScalingConfigSelectorArgs{
Labels: pulumi.StringMap{
"one": pulumi.String("two"),
},
},
},
Schedules: gameservices.GameServerConfigScalingConfigScheduleArray{
&gameservices.GameServerConfigScalingConfigScheduleArgs{
CronJobDuration: pulumi.String("3.500s"),
CronSpec: pulumi.String("0 0 * * 0"),
},
},
},
},
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.gcp.gameservices.GameServerDeployment;
import com.pulumi.gcp.gameservices.GameServerDeploymentArgs;
import com.pulumi.gcp.gameservices.GameServerConfig;
import com.pulumi.gcp.gameservices.GameServerConfigArgs;
import com.pulumi.gcp.gameservices.inputs.GameServerConfigFleetConfigArgs;
import com.pulumi.gcp.gameservices.inputs.GameServerConfigScalingConfigArgs;
import static com.pulumi.codegen.internal.Serialization.*;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var defaultGameServerDeployment = new GameServerDeployment("defaultGameServerDeployment", GameServerDeploymentArgs.builder()
.deploymentId("tf-test-deployment")
.description("a deployment description")
.build());
var defaultGameServerConfig = new GameServerConfig("defaultGameServerConfig", GameServerConfigArgs.builder()
.configId("tf-test-config")
.deploymentId(defaultGameServerDeployment.deploymentId())
.description("a config description")
.fleetConfigs(GameServerConfigFleetConfigArgs.builder()
.name("something-unique")
.fleetSpec(serializeJson(
jsonObject(
jsonProperty("replicas", 1),
jsonProperty("scheduling", "Packed"),
jsonProperty("template", jsonObject(
jsonProperty("metadata", jsonObject(
jsonProperty("name", "tf-test-game-server-template")
)),
jsonProperty("spec", jsonObject(
jsonProperty("ports", jsonArray(jsonObject(
jsonProperty("name", "default"),
jsonProperty("portPolicy", "Dynamic"),
jsonProperty("containerPort", 7654),
jsonProperty("protocol", "UDP")
))),
jsonProperty("template", jsonObject(
jsonProperty("spec", jsonObject(
jsonProperty("containers", jsonArray(jsonObject(
jsonProperty("name", "simple-udp-server"),
jsonProperty("image", "gcr.io/agones-images/udp-server:0.14")
)))
))
))
))
))
)))
.build())
.scalingConfigs(GameServerConfigScalingConfigArgs.builder()
.name("scaling-config-name")
.fleetAutoscalerSpec(serializeJson(
jsonObject(
jsonProperty("policy", jsonObject(
jsonProperty("type", "Webhook"),
jsonProperty("webhook", jsonObject(
jsonProperty("service", jsonObject(
jsonProperty("name", "autoscaler-webhook-service"),
jsonProperty("namespace", "default"),
jsonProperty("path", "scale")
))
))
))
)))
.selectors(GameServerConfigScalingConfigSelectorArgs.builder()
.labels(Map.of("one", "two"))
.build())
.schedules(GameServerConfigScalingConfigScheduleArgs.builder()
.cronJobDuration("3.500s")
.cronSpec("0 0 * * 0")
.build())
.build())
.build());
}
}
import pulumi
import json
import pulumi_gcp as gcp
default_game_server_deployment = gcp.gameservices.GameServerDeployment("defaultGameServerDeployment",
deployment_id="tf-test-deployment",
description="a deployment description")
default_game_server_config = gcp.gameservices.GameServerConfig("defaultGameServerConfig",
config_id="tf-test-config",
deployment_id=default_game_server_deployment.deployment_id,
description="a config description",
fleet_configs=[gcp.gameservices.GameServerConfigFleetConfigArgs(
name="something-unique",
fleet_spec=json.dumps({
"replicas": 1,
"scheduling": "Packed",
"template": {
"metadata": {
"name": "tf-test-game-server-template",
},
"spec": {
"ports": [{
"name": "default",
"portPolicy": "Dynamic",
"containerPort": 7654,
"protocol": "UDP",
}],
"template": {
"spec": {
"containers": [{
"name": "simple-udp-server",
"image": "gcr.io/agones-images/udp-server:0.14",
}],
},
},
},
},
}),
)],
scaling_configs=[gcp.gameservices.GameServerConfigScalingConfigArgs(
name="scaling-config-name",
fleet_autoscaler_spec=json.dumps({
"policy": {
"type": "Webhook",
"webhook": {
"service": {
"name": "autoscaler-webhook-service",
"namespace": "default",
"path": "scale",
},
},
},
}),
selectors=[gcp.gameservices.GameServerConfigScalingConfigSelectorArgs(
labels={
"one": "two",
},
)],
schedules=[gcp.gameservices.GameServerConfigScalingConfigScheduleArgs(
cron_job_duration="3.500s",
cron_spec="0 0 * * 0",
)],
)])
import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";
const defaultGameServerDeployment = new gcp.gameservices.GameServerDeployment("defaultGameServerDeployment", {
deploymentId: "tf-test-deployment",
description: "a deployment description",
});
const defaultGameServerConfig = new gcp.gameservices.GameServerConfig("defaultGameServerConfig", {
configId: "tf-test-config",
deploymentId: defaultGameServerDeployment.deploymentId,
description: "a config description",
fleetConfigs: [{
name: "something-unique",
fleetSpec: JSON.stringify({
replicas: 1,
scheduling: "Packed",
template: {
metadata: {
name: "tf-test-game-server-template",
},
spec: {
ports: [{
name: "default",
portPolicy: "Dynamic",
containerPort: 7654,
protocol: "UDP",
}],
template: {
spec: {
containers: [{
name: "simple-udp-server",
image: "gcr.io/agones-images/udp-server:0.14",
}],
},
},
},
},
}),
}],
scalingConfigs: [{
name: "scaling-config-name",
fleetAutoscalerSpec: JSON.stringify({
policy: {
type: "Webhook",
webhook: {
service: {
name: "autoscaler-webhook-service",
namespace: "default",
path: "scale",
},
},
},
}),
selectors: [{
labels: {
one: "two",
},
}],
schedules: [{
cronJobDuration: "3.500s",
cronSpec: "0 0 * * 0",
}],
}],
});
resources:
defaultGameServerDeployment:
type: gcp:gameservices:GameServerDeployment
properties:
deploymentId: tf-test-deployment
description: a deployment description
defaultGameServerConfig:
type: gcp:gameservices:GameServerConfig
properties:
configId: tf-test-config
deploymentId: ${defaultGameServerDeployment.deploymentId}
description: a config description
fleetConfigs:
- name: something-unique
fleetSpec:
fn::toJSON:
replicas: 1
scheduling: Packed
template:
metadata:
name: tf-test-game-server-template
spec:
ports:
- name: default
portPolicy: Dynamic
containerPort: 7654
protocol: UDP
template:
spec:
containers:
- name: simple-udp-server
image: gcr.io/agones-images/udp-server:0.14
scalingConfigs:
- name: scaling-config-name
fleetAutoscalerSpec:
fn::toJSON:
policy:
type: Webhook
webhook:
service:
name: autoscaler-webhook-service
namespace: default
path: scale
selectors:
- labels:
one: two
schedules:
- cronJobDuration: 3.500s
cronSpec: 0 0 * * 0
Create GameServerConfig Resource
new GameServerConfig(name: string, args: GameServerConfigArgs, opts?: CustomResourceOptions);
@overload
def GameServerConfig(resource_name: str,
opts: Optional[ResourceOptions] = None,
config_id: Optional[str] = None,
deployment_id: Optional[str] = None,
description: Optional[str] = None,
fleet_configs: Optional[Sequence[GameServerConfigFleetConfigArgs]] = None,
labels: Optional[Mapping[str, str]] = None,
location: Optional[str] = None,
project: Optional[str] = None,
scaling_configs: Optional[Sequence[GameServerConfigScalingConfigArgs]] = None)
@overload
def GameServerConfig(resource_name: str,
args: GameServerConfigArgs,
opts: Optional[ResourceOptions] = None)
func NewGameServerConfig(ctx *Context, name string, args GameServerConfigArgs, opts ...ResourceOption) (*GameServerConfig, error)
public GameServerConfig(string name, GameServerConfigArgs args, CustomResourceOptions? opts = null)
public GameServerConfig(String name, GameServerConfigArgs args)
public GameServerConfig(String name, GameServerConfigArgs args, CustomResourceOptions options)
type: gcp:gameservices:GameServerConfig
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args GameServerConfigArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- resource_name str
- The unique name of the resource.
- args GameServerConfigArgs
- The arguments to resource properties.
- opts ResourceOptions
- Bag of options to control resource's behavior.
- ctx Context
- Context object for the current deployment.
- name string
- The unique name of the resource.
- args GameServerConfigArgs
- The arguments to resource properties.
- opts ResourceOption
- Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args GameServerConfigArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- name String
- The unique name of the resource.
- args GameServerConfigArgs
- The arguments to resource properties.
- options CustomResourceOptions
- Bag of options to control resource's behavior.
GameServerConfig Resource Properties
To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.
Inputs
The GameServerConfig resource accepts the following input properties:
- Config
Id string A unique id for the deployment config.
- Deployment
Id string A unique id for the deployment.
- Fleet
Configs List<GameServer Config Fleet Config Args> The fleet config contains list of fleet specs. In the Single Cloud, there will be only one. Structure is documented below.
- Description string
The description of the game server config.
- Labels Dictionary<string, string>
The labels associated with this game server config. Each label is a key-value pair.
(Optional) Set of labels to group by.
- Location string
Location of the Deployment.
- Project string
The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- Scaling
Configs List<GameServer Config Scaling Config Args> Optional. This contains the autoscaling settings. Structure is documented below.
- Config
Id string A unique id for the deployment config.
- Deployment
Id string A unique id for the deployment.
- Fleet
Configs []GameServer Config Fleet Config Args The fleet config contains list of fleet specs. In the Single Cloud, there will be only one. Structure is documented below.
- Description string
The description of the game server config.
- Labels map[string]string
The labels associated with this game server config. Each label is a key-value pair.
(Optional) Set of labels to group by.
- Location string
Location of the Deployment.
- Project string
The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- Scaling
Configs []GameServer Config Scaling Config Args Optional. This contains the autoscaling settings. Structure is documented below.
- config
Id String A unique id for the deployment config.
- deployment
Id String A unique id for the deployment.
- fleet
Configs List<GameServer Config Fleet Config Args> The fleet config contains list of fleet specs. In the Single Cloud, there will be only one. Structure is documented below.
- description String
The description of the game server config.
- labels Map<String,String>
The labels associated with this game server config. Each label is a key-value pair.
(Optional) Set of labels to group by.
- location String
Location of the Deployment.
- project String
The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- scaling
Configs List<GameServer Config Scaling Config Args> Optional. This contains the autoscaling settings. Structure is documented below.
- config
Id string A unique id for the deployment config.
- deployment
Id string A unique id for the deployment.
- fleet
Configs GameServer Config Fleet Config Args[] The fleet config contains list of fleet specs. In the Single Cloud, there will be only one. Structure is documented below.
- description string
The description of the game server config.
- labels {[key: string]: string}
The labels associated with this game server config. Each label is a key-value pair.
(Optional) Set of labels to group by.
- location string
Location of the Deployment.
- project string
The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- scaling
Configs GameServer Config Scaling Config Args[] Optional. This contains the autoscaling settings. Structure is documented below.
- config_
id str A unique id for the deployment config.
- deployment_
id str A unique id for the deployment.
- fleet_
configs Sequence[GameServer Config Fleet Config Args] The fleet config contains list of fleet specs. In the Single Cloud, there will be only one. Structure is documented below.
- description str
The description of the game server config.
- labels Mapping[str, str]
The labels associated with this game server config. Each label is a key-value pair.
(Optional) Set of labels to group by.
- location str
Location of the Deployment.
- project str
The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- scaling_
configs Sequence[GameServer Config Scaling Config Args] Optional. This contains the autoscaling settings. Structure is documented below.
- config
Id String A unique id for the deployment config.
- deployment
Id String A unique id for the deployment.
- fleet
Configs List<Property Map> The fleet config contains list of fleet specs. In the Single Cloud, there will be only one. Structure is documented below.
- description String
The description of the game server config.
- labels Map<String>
The labels associated with this game server config. Each label is a key-value pair.
(Optional) Set of labels to group by.
- location String
Location of the Deployment.
- project String
The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- scaling
Configs List<Property Map> Optional. This contains the autoscaling settings. Structure is documented below.
Outputs
All input properties are implicitly available as output properties. Additionally, the GameServerConfig resource produces the following output properties:
Look up Existing GameServerConfig Resource
Get an existing GameServerConfig resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
public static get(name: string, id: Input<ID>, state?: GameServerConfigState, opts?: CustomResourceOptions): GameServerConfig
@staticmethod
def get(resource_name: str,
id: str,
opts: Optional[ResourceOptions] = None,
config_id: Optional[str] = None,
deployment_id: Optional[str] = None,
description: Optional[str] = None,
fleet_configs: Optional[Sequence[GameServerConfigFleetConfigArgs]] = None,
labels: Optional[Mapping[str, str]] = None,
location: Optional[str] = None,
name: Optional[str] = None,
project: Optional[str] = None,
scaling_configs: Optional[Sequence[GameServerConfigScalingConfigArgs]] = None) -> GameServerConfig
func GetGameServerConfig(ctx *Context, name string, id IDInput, state *GameServerConfigState, opts ...ResourceOption) (*GameServerConfig, error)
public static GameServerConfig Get(string name, Input<string> id, GameServerConfigState? state, CustomResourceOptions? opts = null)
public static GameServerConfig get(String name, Output<String> id, GameServerConfigState state, CustomResourceOptions options)
Resource lookup is not supported in YAML
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- resource_name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- Config
Id string A unique id for the deployment config.
- Deployment
Id string A unique id for the deployment.
- Description string
The description of the game server config.
- Fleet
Configs List<GameServer Config Fleet Config Args> The fleet config contains list of fleet specs. In the Single Cloud, there will be only one. Structure is documented below.
- Labels Dictionary<string, string>
The labels associated with this game server config. Each label is a key-value pair.
(Optional) Set of labels to group by.
- Location string
Location of the Deployment.
- Name string
The name of the FleetConfig.
(Required) The name of the ScalingConfig
- Project string
The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- Scaling
Configs List<GameServer Config Scaling Config Args> Optional. This contains the autoscaling settings. Structure is documented below.
- Config
Id string A unique id for the deployment config.
- Deployment
Id string A unique id for the deployment.
- Description string
The description of the game server config.
- Fleet
Configs []GameServer Config Fleet Config Args The fleet config contains list of fleet specs. In the Single Cloud, there will be only one. Structure is documented below.
- Labels map[string]string
The labels associated with this game server config. Each label is a key-value pair.
(Optional) Set of labels to group by.
- Location string
Location of the Deployment.
- Name string
The name of the FleetConfig.
(Required) The name of the ScalingConfig
- Project string
The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- Scaling
Configs []GameServer Config Scaling Config Args Optional. This contains the autoscaling settings. Structure is documented below.
- config
Id String A unique id for the deployment config.
- deployment
Id String A unique id for the deployment.
- description String
The description of the game server config.
- fleet
Configs List<GameServer Config Fleet Config Args> The fleet config contains list of fleet specs. In the Single Cloud, there will be only one. Structure is documented below.
- labels Map<String,String>
The labels associated with this game server config. Each label is a key-value pair.
(Optional) Set of labels to group by.
- location String
Location of the Deployment.
- name String
The name of the FleetConfig.
(Required) The name of the ScalingConfig
- project String
The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- scaling
Configs List<GameServer Config Scaling Config Args> Optional. This contains the autoscaling settings. Structure is documented below.
- config
Id string A unique id for the deployment config.
- deployment
Id string A unique id for the deployment.
- description string
The description of the game server config.
- fleet
Configs GameServer Config Fleet Config Args[] The fleet config contains list of fleet specs. In the Single Cloud, there will be only one. Structure is documented below.
- labels {[key: string]: string}
The labels associated with this game server config. Each label is a key-value pair.
(Optional) Set of labels to group by.
- location string
Location of the Deployment.
- name string
The name of the FleetConfig.
(Required) The name of the ScalingConfig
- project string
The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- scaling
Configs GameServer Config Scaling Config Args[] Optional. This contains the autoscaling settings. Structure is documented below.
- config_
id str A unique id for the deployment config.
- deployment_
id str A unique id for the deployment.
- description str
The description of the game server config.
- fleet_
configs Sequence[GameServer Config Fleet Config Args] The fleet config contains list of fleet specs. In the Single Cloud, there will be only one. Structure is documented below.
- labels Mapping[str, str]
The labels associated with this game server config. Each label is a key-value pair.
(Optional) Set of labels to group by.
- location str
Location of the Deployment.
- name str
The name of the FleetConfig.
(Required) The name of the ScalingConfig
- project str
The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- scaling_
configs Sequence[GameServer Config Scaling Config Args] Optional. This contains the autoscaling settings. Structure is documented below.
- config
Id String A unique id for the deployment config.
- deployment
Id String A unique id for the deployment.
- description String
The description of the game server config.
- fleet
Configs List<Property Map> The fleet config contains list of fleet specs. In the Single Cloud, there will be only one. Structure is documented below.
- labels Map<String>
The labels associated with this game server config. Each label is a key-value pair.
(Optional) Set of labels to group by.
- location String
Location of the Deployment.
- name String
The name of the FleetConfig.
(Required) The name of the ScalingConfig
- project String
The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- scaling
Configs List<Property Map> Optional. This contains the autoscaling settings. Structure is documented below.
Supporting Types
GameServerConfigFleetConfig
- Fleet
Spec string The fleet spec, which is sent to Agones to configure fleet. The spec can be passed as inline json but it is recommended to use a file reference instead. File references can contain the json or yaml format of the fleet spec. Eg:
- fleet_spec = jsonencode(yamldecode(file("fleet_configs.yaml")))
- fleet_spec = file("fleet_configs.json")
The format of the spec can be found :
https://agones.dev/site/docs/reference/fleet/
.
- Name string
The name of the FleetConfig.
- Fleet
Spec string The fleet spec, which is sent to Agones to configure fleet. The spec can be passed as inline json but it is recommended to use a file reference instead. File references can contain the json or yaml format of the fleet spec. Eg:
- fleet_spec = jsonencode(yamldecode(file("fleet_configs.yaml")))
- fleet_spec = file("fleet_configs.json")
The format of the spec can be found :
https://agones.dev/site/docs/reference/fleet/
.
- Name string
The name of the FleetConfig.
- fleet
Spec String The fleet spec, which is sent to Agones to configure fleet. The spec can be passed as inline json but it is recommended to use a file reference instead. File references can contain the json or yaml format of the fleet spec. Eg:
- fleet_spec = jsonencode(yamldecode(file("fleet_configs.yaml")))
- fleet_spec = file("fleet_configs.json")
The format of the spec can be found :
https://agones.dev/site/docs/reference/fleet/
.
- name String
The name of the FleetConfig.
- fleet
Spec string The fleet spec, which is sent to Agones to configure fleet. The spec can be passed as inline json but it is recommended to use a file reference instead. File references can contain the json or yaml format of the fleet spec. Eg:
- fleet_spec = jsonencode(yamldecode(file("fleet_configs.yaml")))
- fleet_spec = file("fleet_configs.json")
The format of the spec can be found :
https://agones.dev/site/docs/reference/fleet/
.
- name string
The name of the FleetConfig.
- fleet_
spec str The fleet spec, which is sent to Agones to configure fleet. The spec can be passed as inline json but it is recommended to use a file reference instead. File references can contain the json or yaml format of the fleet spec. Eg:
- fleet_spec = jsonencode(yamldecode(file("fleet_configs.yaml")))
- fleet_spec = file("fleet_configs.json")
The format of the spec can be found :
https://agones.dev/site/docs/reference/fleet/
.
- name str
The name of the FleetConfig.
- fleet
Spec String The fleet spec, which is sent to Agones to configure fleet. The spec can be passed as inline json but it is recommended to use a file reference instead. File references can contain the json or yaml format of the fleet spec. Eg:
- fleet_spec = jsonencode(yamldecode(file("fleet_configs.yaml")))
- fleet_spec = file("fleet_configs.json")
The format of the spec can be found :
https://agones.dev/site/docs/reference/fleet/
.
- name String
The name of the FleetConfig.
GameServerConfigScalingConfig
- Fleet
Autoscaler stringSpec Fleet autoscaler spec, which is sent to Agones. Example spec can be found : https://agones.dev/site/docs/reference/fleetautoscaler/
- Name string
The name of the ScalingConfig
- Schedules
List<Game
Server Config Scaling Config Schedule> The schedules to which this scaling config applies. Structure is documented below.
- Selectors
List<Game
Server Config Scaling Config Selector> Labels used to identify the clusters to which this scaling config applies. A cluster is subject to this scaling config if its labels match any of the selector entries. Structure is documented below.
- Fleet
Autoscaler stringSpec Fleet autoscaler spec, which is sent to Agones. Example spec can be found : https://agones.dev/site/docs/reference/fleetautoscaler/
- Name string
The name of the ScalingConfig
- Schedules
[]Game
Server Config Scaling Config Schedule The schedules to which this scaling config applies. Structure is documented below.
- Selectors
[]Game
Server Config Scaling Config Selector Labels used to identify the clusters to which this scaling config applies. A cluster is subject to this scaling config if its labels match any of the selector entries. Structure is documented below.
- fleet
Autoscaler StringSpec Fleet autoscaler spec, which is sent to Agones. Example spec can be found : https://agones.dev/site/docs/reference/fleetautoscaler/
- name String
The name of the ScalingConfig
- schedules
List<Game
Server Config Scaling Config Schedule> The schedules to which this scaling config applies. Structure is documented below.
- selectors
List<Game
Server Config Scaling Config Selector> Labels used to identify the clusters to which this scaling config applies. A cluster is subject to this scaling config if its labels match any of the selector entries. Structure is documented below.
- fleet
Autoscaler stringSpec Fleet autoscaler spec, which is sent to Agones. Example spec can be found : https://agones.dev/site/docs/reference/fleetautoscaler/
- name string
The name of the ScalingConfig
- schedules
Game
Server Config Scaling Config Schedule[] The schedules to which this scaling config applies. Structure is documented below.
- selectors
Game
Server Config Scaling Config Selector[] Labels used to identify the clusters to which this scaling config applies. A cluster is subject to this scaling config if its labels match any of the selector entries. Structure is documented below.
- fleet_
autoscaler_ strspec Fleet autoscaler spec, which is sent to Agones. Example spec can be found : https://agones.dev/site/docs/reference/fleetautoscaler/
- name str
The name of the ScalingConfig
- schedules
Sequence[Game
Server Config Scaling Config Schedule] The schedules to which this scaling config applies. Structure is documented below.
- selectors
Sequence[Game
Server Config Scaling Config Selector] Labels used to identify the clusters to which this scaling config applies. A cluster is subject to this scaling config if its labels match any of the selector entries. Structure is documented below.
- fleet
Autoscaler StringSpec Fleet autoscaler spec, which is sent to Agones. Example spec can be found : https://agones.dev/site/docs/reference/fleetautoscaler/
- name String
The name of the ScalingConfig
- schedules List<Property Map>
The schedules to which this scaling config applies. Structure is documented below.
- selectors List<Property Map>
Labels used to identify the clusters to which this scaling config applies. A cluster is subject to this scaling config if its labels match any of the selector entries. Structure is documented below.
GameServerConfigScalingConfigSchedule
- Cron
Job stringDuration The duration for the cron job event. The duration of the event is effective after the cron job's start time. A duration in seconds with up to nine fractional digits, terminated by 's'. Example: "3.5s".
- Cron
Spec string The cron definition of the scheduled event. See https://en.wikipedia.org/wiki/Cron. Cron spec specifies the local time as defined by the realm.
- End
Time string The end time of the event. A timestamp in RFC3339 UTC "Zulu" format, accurate to nanoseconds. Example: "2014-10-02T15:01:23.045123456Z".
- Start
Time string The start time of the event. A timestamp in RFC3339 UTC "Zulu" format, accurate to nanoseconds. Example: "2014-10-02T15:01:23.045123456Z".
- Cron
Job stringDuration The duration for the cron job event. The duration of the event is effective after the cron job's start time. A duration in seconds with up to nine fractional digits, terminated by 's'. Example: "3.5s".
- Cron
Spec string The cron definition of the scheduled event. See https://en.wikipedia.org/wiki/Cron. Cron spec specifies the local time as defined by the realm.
- End
Time string The end time of the event. A timestamp in RFC3339 UTC "Zulu" format, accurate to nanoseconds. Example: "2014-10-02T15:01:23.045123456Z".
- Start
Time string The start time of the event. A timestamp in RFC3339 UTC "Zulu" format, accurate to nanoseconds. Example: "2014-10-02T15:01:23.045123456Z".
- cron
Job StringDuration The duration for the cron job event. The duration of the event is effective after the cron job's start time. A duration in seconds with up to nine fractional digits, terminated by 's'. Example: "3.5s".
- cron
Spec String The cron definition of the scheduled event. See https://en.wikipedia.org/wiki/Cron. Cron spec specifies the local time as defined by the realm.
- end
Time String The end time of the event. A timestamp in RFC3339 UTC "Zulu" format, accurate to nanoseconds. Example: "2014-10-02T15:01:23.045123456Z".
- start
Time String The start time of the event. A timestamp in RFC3339 UTC "Zulu" format, accurate to nanoseconds. Example: "2014-10-02T15:01:23.045123456Z".
- cron
Job stringDuration The duration for the cron job event. The duration of the event is effective after the cron job's start time. A duration in seconds with up to nine fractional digits, terminated by 's'. Example: "3.5s".
- cron
Spec string The cron definition of the scheduled event. See https://en.wikipedia.org/wiki/Cron. Cron spec specifies the local time as defined by the realm.
- end
Time string The end time of the event. A timestamp in RFC3339 UTC "Zulu" format, accurate to nanoseconds. Example: "2014-10-02T15:01:23.045123456Z".
- start
Time string The start time of the event. A timestamp in RFC3339 UTC "Zulu" format, accurate to nanoseconds. Example: "2014-10-02T15:01:23.045123456Z".
- cron_
job_ strduration The duration for the cron job event. The duration of the event is effective after the cron job's start time. A duration in seconds with up to nine fractional digits, terminated by 's'. Example: "3.5s".
- cron_
spec str The cron definition of the scheduled event. See https://en.wikipedia.org/wiki/Cron. Cron spec specifies the local time as defined by the realm.
- end_
time str The end time of the event. A timestamp in RFC3339 UTC "Zulu" format, accurate to nanoseconds. Example: "2014-10-02T15:01:23.045123456Z".
- start_
time str The start time of the event. A timestamp in RFC3339 UTC "Zulu" format, accurate to nanoseconds. Example: "2014-10-02T15:01:23.045123456Z".
- cron
Job StringDuration The duration for the cron job event. The duration of the event is effective after the cron job's start time. A duration in seconds with up to nine fractional digits, terminated by 's'. Example: "3.5s".
- cron
Spec String The cron definition of the scheduled event. See https://en.wikipedia.org/wiki/Cron. Cron spec specifies the local time as defined by the realm.
- end
Time String The end time of the event. A timestamp in RFC3339 UTC "Zulu" format, accurate to nanoseconds. Example: "2014-10-02T15:01:23.045123456Z".
- start
Time String The start time of the event. A timestamp in RFC3339 UTC "Zulu" format, accurate to nanoseconds. Example: "2014-10-02T15:01:23.045123456Z".
GameServerConfigScalingConfigSelector
- Labels Dictionary<string, string>
Set of labels to group by.
- Labels map[string]string
Set of labels to group by.
- labels Map<String,String>
Set of labels to group by.
- labels {[key: string]: string}
Set of labels to group by.
- labels Mapping[str, str]
Set of labels to group by.
- labels Map<String>
Set of labels to group by.
Import
GameServerConfig can be imported using any of these accepted formats
$ pulumi import gcp:gameservices/gameServerConfig:GameServerConfig default projects/{{project}}/locations/{{location}}/gameServerDeployments/{{deployment_id}}/configs/{{config_id}}
$ pulumi import gcp:gameservices/gameServerConfig:GameServerConfig default {{project}}/{{location}}/{{deployment_id}}/{{config_id}}
$ pulumi import gcp:gameservices/gameServerConfig:GameServerConfig default {{location}}/{{deployment_id}}/{{config_id}}
Package Details
- Repository
- Google Cloud (GCP) Classic pulumi/pulumi-gcp
- License
- Apache-2.0
- Notes
This Pulumi package is based on the
google-beta
Terraform Provider.