Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Upgrade terraform to 0.13.7 #105

Merged
merged 3 commits into from
Nov 19, 2021
Merged

Upgrade terraform to 0.13.7 #105

merged 3 commits into from
Nov 19, 2021

Conversation

stoyanr
Copy link
Contributor

@stoyanr stoyanr commented Nov 3, 2021

How to categorize this PR?

/area control-plane
/kind enhancement

What this PR does / why we need it:
Upgrades terraform to 0.13.7. This is the first step of upgrading to 0.15 in order to fix gardener/gardener/issues/4838.

Which issue(s) this PR fixes:
Fixes #

Special notes for your reviewer:

  • I ran successfully make test-e2e and make docker-images locally.
  • I also ran successfully make start and make start COMMAND=destroy with a valid AWS configuration for one of my test shoots.
  • For the provider validation status, see the comment below.

Release note:

terraform has been upgraded to 0.13.7

@stoyanr stoyanr requested a review from a team as a code owner November 3, 2021 17:21
@gardener-robot gardener-robot added area/control-plane Control plane related kind/enhancement Enhancement, improvement, extension needs/review Needs review size/m Size of pull request is medium (see gardener-robot robot/bots/size.py) labels Nov 3, 2021
@gardener-robot-ci-3 gardener-robot-ci-3 added the reviewed/ok-to-test Has approval for testing (check PR in detail before setting this label because PR is run on CI/CD) label Nov 3, 2021
@stoyanr
Copy link
Contributor Author

stoyanr commented Nov 3, 2021

/invite @ialidzhikov

@gardener-robot-ci-2 gardener-robot-ci-2 added needs/ok-to-test Needs approval for testing (check PR in detail before setting this label because PR is run on CI/CD) and removed reviewed/ok-to-test Has approval for testing (check PR in detail before setting this label because PR is run on CI/CD) labels Nov 3, 2021
@stoyanr stoyanr marked this pull request as draft November 3, 2021 17:23
@gardener-robot-ci-2 gardener-robot-ci-2 added reviewed/ok-to-test Has approval for testing (check PR in detail before setting this label because PR is run on CI/CD) and removed reviewed/ok-to-test Has approval for testing (check PR in detail before setting this label because PR is run on CI/CD) labels Nov 3, 2021
@gardener-robot-ci-1 gardener-robot-ci-1 added the reviewed/ok-to-test Has approval for testing (check PR in detail before setting this label because PR is run on CI/CD) label Nov 4, 2021
@gardener-robot-ci-3 gardener-robot-ci-3 removed the reviewed/ok-to-test Has approval for testing (check PR in detail before setting this label because PR is run on CI/CD) label Nov 4, 2021
@gardener-robot-ci-2 gardener-robot-ci-2 added the reviewed/ok-to-test Has approval for testing (check PR in detail before setting this label because PR is run on CI/CD) label Nov 4, 2021
@gardener-robot-ci-1 gardener-robot-ci-1 removed the reviewed/ok-to-test Has approval for testing (check PR in detail before setting this label because PR is run on CI/CD) label Nov 4, 2021
@gardener-robot-ci-2 gardener-robot-ci-2 added reviewed/ok-to-test Has approval for testing (check PR in detail before setting this label because PR is run on CI/CD) and removed reviewed/ok-to-test Has approval for testing (check PR in detail before setting this label because PR is run on CI/CD) labels Nov 5, 2021
@stoyanr
Copy link
Contributor Author

stoyanr commented Nov 5, 2021

Provider validation status:

AWS (see gardener/gardener-extension-provider-aws/pull/439):

  • reconciliation and deletion of existing Infrastructure
  • creation and deletion of new Infrastructure (single zone, new vpc)
  • creation and deletion of new Infrastructure (single zone, existing vpc)
  • creation and deletion of new Infrastructure (multiple zones, new vpc)
  • creation and deletion of new Infrastructure (multiple zone, existing vpc)
  • gardener-extension-provider-aws Infrastructure integration test

GCP (see gardener/gardener-extension-provider-gcp/pull/345):

  • reconciliation and deletion of existing Infrastructure
  • creation and deletion of new Infrastructure (single zone, new vpc)
  • creation and deletion of new Infrastructure (single zone, existing vpc)
  • gardener-extension-provider-gcp Infrastructure integration test

Azure (see gardener/gardener-extension-provider-azure/pull/391):

  • reconciliation and deletion of existing Infrastructure
  • creation and deletion of new Infrastructure

Alicloud (see gardener/gardener-extension-provider-alicloud/pull/379):

  • reconciliation and deletion of existing Infrastructure
  • creation and deletion of new Infrastructure

Openstack (see gardener/gardener-extension-provider-openstack/pull/350):

  • reconciliation and deletion of existing Infrastructure
  • creation and deletion of new Infrastructure

@stoyanr stoyanr marked this pull request as ready for review November 5, 2021 11:14
@ialidzhikov
Copy link
Member

We had a sync with @stoyanr on how to proceed with the terraform version updates. We agreed to proceed first with the 0.13.7 update and to have a new terraformer minor release with it (terraformer@v2.13.0). When provider extensions successfully adopt terraformer@v2.13.0, we plan to proceed with the 0.14.11 and 0.15.5 updates in new minor releases - 0.14.11 update in terraformer@v2.14.0 and 0.15.5 update terraformer@2.15.0. Meanwhile, if we need to do critical corrections, we will do it with patch releases of the corresponding terraformer minor release (for example provider-aws wants to update its terraformer-provider-aws - this can be performed with v2.13.1, v2.14.1 or v2.15.1 depending on which version of the terraformer is used currently by the provider-aws extesion).
We also agreed that gardener/gardener#4978 is important for debugging and investigation purposes and it will be good if release of provider extension adopts terraform version bump together with a fix for gardener/gardener#4978.

Last but not least, many thanks to @stoyanr for his work on this topic.
I will need some time to get familiar with the details and to run some basic tests also on my side.

/cc @rfranzke @dkistner @kon-angelo

Copy link
Member

@ialidzhikov ialidzhikov left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good to me in general. I managed to test the following scenarios with gardener-extension-provider-aws and they worked well:

  • reconciliation of existing Infrastructure
  • deletion of existing Infrastructure
  • creation and deletion of new Infrastructure (single zone, new vpc)
  • creation and deletion of new Infrastructure (multiple zones, new vpc)
  • creation and deletion of new Infrastructure (single zone, existing vpc)
  • creation and deletion of new Infrastructure (multiple zone, existing vpc)

.gitignore Show resolved Hide resolved
pkg/terraformer/terraformer.go Show resolved Hide resolved
test/utils/objects.go Outdated Show resolved Hide resolved
@gardener-robot gardener-robot added size/l Size of pull request is large (see gardener-robot robot/bots/size.py) needs/second-opinion Needs second review by someone else and removed size/m Size of pull request is medium (see gardener-robot robot/bots/size.py) labels Nov 17, 2021
@gardener-robot-ci-1 gardener-robot-ci-1 added reviewed/ok-to-test Has approval for testing (check PR in detail before setting this label because PR is run on CI/CD) and removed reviewed/ok-to-test Has approval for testing (check PR in detail before setting this label because PR is run on CI/CD) labels Nov 17, 2021
@stoyanr
Copy link
Contributor Author

stoyanr commented Nov 17, 2021

@ialidzhikov I added the tests as requested and replied to your other comments, PTAL.

Copy link
Member

@ialidzhikov ialidzhikov left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

/lgtm

@gardener-robot gardener-robot added reviewed/lgtm Has approval for merging and removed needs/review Needs review needs/second-opinion Needs second review by someone else labels Nov 19, 2021
@stoyanr stoyanr merged commit 110ea54 into master Nov 19, 2021
@stoyanr stoyanr deleted the upgrade-terraform-to-0.13.7 branch November 19, 2021 11:51
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/control-plane Control plane related kind/enhancement Enhancement, improvement, extension needs/ok-to-test Needs approval for testing (check PR in detail before setting this label because PR is run on CI/CD) reviewed/lgtm Has approval for merging size/l Size of pull request is large (see gardener-robot robot/bots/size.py)
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Properly classify infra dependencies that show up as "at least one terraformer pod still exists" errors
6 participants