Note: For Admins upgrading TFE to v202311-1 in response to CVE-2023-44487. To prevent service disruption or downtime, please adhere to the following recommendations.
Use Case/Background
There may be instances where you need to update Terraform Enterprise across several older versions, necessitating the installation of multiple required versions along the way. This article offers tips to ensure a successful upgrade process.
During an upgrade spanning multiple versions, certain Terraform Enterprise versions must be installed and initiated at least once to continue the process. These versions carry out necessary database migrations/upgrades. Subsequent versions of Terraform Enterprise will not start without these migrations.
For information on individual releases and their requirements, please refer to thisĀ link.
Procedure
- Unpin the Replicated version so that it can upgrade to any version using this command
replicatedctl params set ReleaseSequence --value 0
-
Identify the target release of TFE that you intend on upgrading to, and check the prerequisites for Docker, PostgreSQL and the OS and make sure that the current system has the correct prerequisites for the target version. Links to those prerequisites can be found at the pre-install checklist for the target version of TFE.
-
If there is an Auto Scaling Group managing the TFE instance, you should increase the timeout to over an hour, in case the upgrade requires multiple versions to be installed, as it may take longer than the ASG timeout, causing the ASG to revert to the original TFE version
-
Clean up Docker resources to allow space for new Docker images for upgrade:
replicatedctl app stop -f
docker container prune
docker image prune
docker volume prune -a
- Proceed with the upgrade as outlined here.