admin_claim_type |
The claim type for administrators. |
string |
null |
no |
admin_claim_value |
The claim value for administrators. |
string |
null |
no |
agents |
Configures autoscaling groups to be used as build agents by Unreal Engine Horde. |
map(object({ ami = string instance_type = string block_device_mappings = list( object({ device_name = string ebs = object({ volume_size = number }) }) ) min_size = optional(number, 0) max_size = optional(number, 1) })) |
{} |
no |
auth_method |
The authentication method for the Horde server. |
string |
"Anonymous" |
no |
certificate_arn |
The TLS certificate ARN for the Unreal Horde load balancer. |
string |
n/a |
yes |
cluster_name |
The name of the cluster to deploy the Unreal Horde into. Defaults to null and a cluster will be created. |
string |
null |
no |
container_api_port |
The container port for the Unreal Horde web server. |
number |
5000 |
no |
container_cpu |
The CPU allotment for the Unreal Horde container. |
number |
1024 |
no |
container_grpc_port |
The container port for the Unreal Horde GRPC channel. |
number |
5002 |
no |
container_memory |
The memory allotment for the Unreal Horde container. |
number |
4096 |
no |
container_name |
The name of the Unreal Horde container. |
string |
"unreal-horde-container" |
no |
create_external_alb |
Set this flag to true to create an external load balancer for Unreal Horde. |
bool |
true |
no |
create_internal_alb |
Set this flag to true to create an internal load balancer for Unreal Horde. |
bool |
true |
no |
create_unreal_horde_default_policy |
Optional creation of Unreal Horde default IAM Policy. Default is set to true. |
bool |
true |
no |
create_unreal_horde_default_role |
Optional creation of Unreal Horde default IAM Role. Default is set to true. |
bool |
true |
no |
custom_unreal_horde_role |
ARN of the custom IAM Role you wish to use with Unreal Horde. |
string |
null |
no |
database_connection_string |
The database connection string that Horde should use. |
string |
null |
no |
debug |
Set this flag to enable ECS execute permissions on the Unreal Horde container and force new service deployments on Terraform apply. |
bool |
false |
no |
desired_container_count |
The desired number of containers running Unreal Horde. |
number |
1 |
no |
docdb_backup_retention_period |
Number of days to retain backups for DocumentDB cluster. |
number |
7 |
no |
docdb_instance_class |
The instance class for the Horde DocumentDB cluster. |
string |
"db.t4g.medium" |
no |
docdb_instance_count |
The number of instances to provision for the Horde DocumentDB cluster. |
number |
2 |
no |
docdb_master_password |
Master password created for DocumentDB cluster. |
string |
"mustbeeightchars" |
no |
docdb_master_username |
Master username created for DocumentDB cluster. |
string |
"horde" |
no |
docdb_preferred_backup_window |
The preferred window for DocumentDB backups to be created. |
string |
"07:00-09:00" |
no |
docdb_skip_final_snapshot |
Flag for whether a final snapshot should be created when the cluster is destroyed. |
bool |
true |
no |
docdb_storage_encrypted |
Configure DocumentDB storage at rest. |
bool |
true |
no |
elasticache_node_count |
Number of cache nodes to provision in the Elasticache cluster. |
number |
1 |
no |
elasticache_node_type |
The type of nodes provisioned in the Elasticache cluster. |
string |
"cache.t4g.micro" |
no |
elasticache_snapshot_retention_limit |
The number of Elasticache snapshots to retain. |
number |
5 |
no |
enable_new_agents_by_default |
Set this flag to automatically enable new agents that enroll with the Horde Server. |
bool |
false |
no |
enable_unreal_horde_alb_access_logs |
Enables access logging for the Unreal Horde ALB. Defaults to true. |
bool |
true |
no |
enable_unreal_horde_alb_deletion_protection |
Enables deletion protection for the Unreal Horde ALB. Defaults to true. |
bool |
false |
no |
environment |
The current environment (e.g. Development, Staging, Production, etc.). This will tag ressources and set ASPNETCORE_ENVIRONMENT variable. |
string |
"Development" |
no |
existing_security_groups |
A list of existing security group IDs to attach to the Unreal Horde load balancer. |
list(string) |
[] |
no |
fully_qualified_domain_name |
The fully qualified domain name where your Unreal Engine Horde server will be available. This agents will use this to enroll. |
string |
n/a |
yes |
github_credentials_secret_arn |
A secret containing the Github username and password with permissions to the EpicGames organization. |
string |
n/a |
yes |
name |
The name attached to Unreal Engine Horde module resources. |
string |
"unreal-horde" |
no |
oidc_audience |
The audience used for validating externally issued tokens. |
string |
null |
no |
oidc_authority |
The authority for the OIDC authentication provider used. |
string |
null |
no |
oidc_client_id |
The client ID used for authenticating with the OIDC provider. |
string |
null |
no |
oidc_client_secret |
The client secret used for authenticating with the OIDC provider. |
string |
null |
no |
oidc_signin_redirect |
The sign-in redirect URL for the OIDC provider. |
string |
null |
no |
project_prefix |
The project prefix for this workload. This is appeneded to the beginning of most resource names. |
string |
"cgd" |
no |
redis_connection_config |
The redis connection configuration that Horde should use. |
string |
null |
no |
tags |
Tags to apply to resources. |
map(any) |
{ "iac-management": "CGD-Toolkit", "iac-module": "unreal-horde", "iac-provider": "Terraform" } |
no |
unreal_horde_alb_access_logs_bucket |
ID of the S3 bucket for Unreal Horde ALB access log storage. If access logging is enabled and this is null the module creates a bucket. |
string |
null |
no |
unreal_horde_alb_access_logs_prefix |
Log prefix for Unreal Horde ALB access logs. If null the project prefix and module name are used. |
string |
null |
no |
unreal_horde_cloudwatch_log_retention_in_days |
The log retention in days of the cloudwatch log group for Unreal Horde. |
string |
365 |
no |
unreal_horde_external_alb_subnets |
A list of subnets to deploy the Unreal Horde load balancer into. Public subnets are recommended. |
list(string) |
[] |
no |
unreal_horde_internal_alb_subnets |
A list of subnets to deploy the Unreal Horde internal load balancer into. Private subnets are recommended. |
list(string) |
[] |
no |
unreal_horde_service_subnets |
A list of subnets to deploy the Unreal Horde service into. Private subnets are recommended. |
list(string) |
n/a |
yes |
vpc_id |
The ID of the existing VPC you would like to deploy Unreal Horde into. |
string |
n/a |
yes |