You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Please vote on this issue by adding a 👍 reaction to the original issue to help the community and maintainers prioritize this request
Please do not leave "+1" or other comments that do not add relevant new information or questions, they generate extra noise for issue followers and do not help prioritize the request
If you are interested in working on this issue or have submitted a pull request, please leave a comment
The resources and data sources in this provider are generated from the CloudFormation schema, so they can only support the actions that the underlying schema supports. For this reason submitted bugs should be limited to defects in the generation and runtime code of the provider. Customizing behavior of the resource, or noting a gap in behavior are not valid bugs and should be submitted as enhancements to AWS via the CloudFormation Open Coverage Roadmap.
Terraform CLI and Terraform AWS Cloud Control Provider Version
locals {
config_name="${var.environment}-sandbox-flexmatch-config"
}
resource"awscc_gamelift_matchmaking_configuration""flexmatch_sandbox" {
name=local.config_namedescription="The matchmaker for the Sandbox game mode."flex_match_mode="STANDALONE"acceptance_required=falserequest_timeout_seconds=var.ticket_timeout_secondsrule_set_name=awscc_gamelift_matchmaking_rule_set.flexmatch_sandbox_2.id## AWS CC Provider does not allow switching rule setsnotification_target=var.sns_arnlifecycle {
replace_triggered_by=[awscc_gamelift_matchmaking_rule_set.flexmatch_sandbox]
}
}
resource"awscc_gamelift_matchmaking_rule_set""flexmatch_sandbox" {
name=local.config_namerule_set_body=local.ruleset
}
resource"awscc_gamelift_matchmaking_rule_set""flexmatch_sandbox_2" {
name="${local.config_name}-2"rule_set_body=local.ruleset
}
## Rule Set Body is separate, not attached as it has no baring on the resource, `awscc_gamelift_matchmaking_rule_set` works fine
Debug Output
module.flexmatch_sandbox.awscc_gamelift_matchmaking_configuration.flexmatch_sandbox: Modifying... [id=kurtisl-sandbox-flexmatch-config]
╷
│ Error: AWS SDK Go Service Operation Unsuccessful
│
│ with module.flexmatch_sandbox.awscc_gamelift_matchmaking_configuration.flexmatch_sandbox,
│ on modules/flexmatch_sandbox/gamelift.tf line 5, in resource "awscc_gamelift_matchmaking_configuration""flexmatch_sandbox":
│ 5:resource"awscc_gamelift_matchmaking_configuration""flexmatch_sandbox" {
│
│ Calling Cloud Control API service UpdateResource operation returned: operation error CloudControl: UpdateResource, https response error StatusCode:400, RequestID: 415df5d1-850e-46cf-8340-18f98440c0fc, api error
│ ValidationException: Model validation failed (#/GameSessionQueueArns/0: expected type: String, found: Null)
Expected Behavior
When changing the rule_set_name value in awscc_gamelift_matchmaking_configuration terraform should only change rule_set_name.
This in turn allows us to deploy new awscc_gamelift_matchmaking_rule_set and switch between them. It is worth considering terraform does not allow changing a awscc_gamelift_matchmaking_rule_set while attached to a awscc_gamelift_matchmaking_configuration hence the requirement to change the rule_set_name in awscc_gamelift_matchmaking_configuration
Actual Behavior
Terraform attempts to change a number of values which were not set in the 1st apply such as game_session_queue_arns which result in a validation error from the AWS API Model validation failed (#/GameSessionQueueArns/0: expected type: String, found: Null)
As we are using standalone flexmatch we do not need to use these values, in the debug info you can see other values which are been added despite only the rule_set_name changing from flexmatch_sandbox to flexmatch_sandbox_2
Steps to Reproduce
1.terraform apply
2. change rule_set_name to flexmatch_sandbox_2
3.terraform apply
Important Factoids
Everything is pretty standard with nothing unique
References
#0000
The text was updated successfully, but these errors were encountered:
@kurtislamb , thanks for reporting this issue. I wonder if the diff was caused because Cloud Control API returned a different value for game_session_queue_arns than what was stored in the statefile.
Are you able to re-run the Terraform plan with TF_LOG set to DEBUG ?
Community Note
Terraform CLI and Terraform AWS Cloud Control Provider Version
Affected Resource(s)
Terraform Configuration Files
Debug Output
Expected Behavior
When changing the
rule_set_name
value inawscc_gamelift_matchmaking_configuration
terraform should only changerule_set_name
.This in turn allows us to deploy new
awscc_gamelift_matchmaking_rule_set
and switch between them. It is worth considering terraform does not allow changing aawscc_gamelift_matchmaking_rule_set
while attached to aawscc_gamelift_matchmaking_configuration
hence the requirement to change therule_set_name
inawscc_gamelift_matchmaking_configuration
Actual Behavior
Terraform attempts to change a number of values which were not set in the 1st apply such as
game_session_queue_arns
which result in a validation error from the AWS APIModel validation failed (#/GameSessionQueueArns/0: expected type: String, found: Null)
As we are using standalone flexmatch we do not need to use these values, in the debug info you can see other values which are been added despite only the
rule_set_name
changing fromflexmatch_sandbox
toflexmatch_sandbox_2
Steps to Reproduce
1.
terraform apply
2. change
rule_set_name
toflexmatch_sandbox_2
3.
terraform apply
Important Factoids
References
The text was updated successfully, but these errors were encountered: