OctopusDeployLabs / terraform-provider-octopusdeploy

Terraform Provider for Octopus Deploy :octopus:
https://registry.terraform.io/providers/OctopusDeployLabs/octopusdeploy
Mozilla Public License 2.0
82 stars 67 forks source link

http2: server sent GOAWAY after approx 50 minutes with Octopus Cloud instance #698

Open mcasperson opened 2 months ago

mcasperson commented 2 months ago

Describe the bug When deploying a large terraform module that takes at least an hour to complete to a cloud Octopus instance, you'll get a "http2: server sent GOAWAY" error.

Steps to reproduce

  1. Deploy a large terraform module to a hosted instance
  2. At around the 50 minute mark, the connection is lost and terraform returns an error

Expected behavior Large Terraform modules should be able to be applied, even if they take over an hour.

Logs and other supporting information

Error: http2: server sent GOAWAY an
d closed the connection; LastStreamID=1999, ErrCode=NO_ERROR, debug="" 
  with octopusdeploy_variable.variables_account_passwords_etmcsit4appuser_1, 
  on project_variable_sensitive_variables_account_passwords_etmcsit4appuser_1.tf line 8, in resource "octopusdeploy_variable" "variables_account_passwords_etmcsit4appuser_1": 
   8: resource "octopusdeploy_variable" "variables_account_passwords_etmcsit4appuser_1" { 
Error: http2: server sent GOAWAY and closed the connection; LastStreamID=1999, ErrCode=NO_ERROR, debug="" 
  with octopusdeploy_variable.variables_account_passwords_pvtweb_6, 
  on project_variable_variables_account_passwords_pvtweb_6.tf line 8, in resource "octopusdeploy_variable" "variables_account_passwords_pvtweb_6": 
   8: resource "octopusdeploy_variable" "variables_account_passwords_pvtweb_6" { 

ServerTasks-1801557.log.txt

Screenshots If applicable, add screenshots to help explain your problem.

Environment and versions:

Additional context My assumption is that one of the reverse proxies used by Octopus Cloud closes long running connections.

mcasperson commented 2 months ago

You can often retry applying the Terraform module and it will work because most of the resources are already created.