Introduction
Problem
Terraform Enterprise installation requires the bootstrap configuration file /etc/replicated.conf. The installer reads information from the bootstrap file to retrieve application packages, by default it is the latest version. The file can optionally contain the ReleaseSequence
property to pin the installation to a particular release of Terraform Enterprise and the value of the ReleaseSequence is of numeric type
. Terraform Enterprise installation will be halted and it may experience the error 504
on the browser due to the frontend load-balancer being unable to communicate with the application in the scenario where there are double quotes surrounding the value of the sequence number. At the beginning of the log output of the replicated
container shows the error Failed to read config: json: cannot unmarshal string into Go struct field Params.ReleaseSequence of type int
.
Cause
-
When surrounding the release sequence number with double quotes, the installer interprets the value as if the data type is a string where it is not supported and fails with the error
Go struct field Params.ReleaseSequence of type int
.
Solutions:
-
Provide the value of the ReleaseSequence property in the /etc/replicated.conf without the double quotes nor single quotes.
-
Alternatively, use the command line option to pass the
release-sequence=<<RELEASE SEQUENCE>>
to the installation shell script which accepts the surrounding double quotes. For example,curl -o install.sh https://install.terraform.io/ptfe/stable bash ./install.sh \ no-proxy \ private-address=1.2.3.4 \ public-address=5.6.7.8 \ release-sequence="523"
For Terraform Enterprise v202205-1 or later:
curl -o install.sh https://install.terraform.io/tfe/stable bash ./install.sh \ no-proxy \ private-address=1.2.3.4 \ public-address=5.6.7.8 \ release-sequence="619"
Additional Information
- For further clarification/assistance, please contact support at support@hashicorp.com or submit a ticket via our support portal.