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

Stateful MIG -> GA #4047

Merged

Conversation

melinath
Copy link
Member

@melinath melinath commented Oct 2, 2020

Fixes hashicorp/terraform-provider-google#7323.

Stateful MIG is controlled with PerInstanceConfig and RegionPerInstanceConfig. This PR makes those both available in GA as well as related utilities and tests.

If this PR is for Terraform, I acknowledge that I have:

  • Searched through the issue tracker for an open issue that this either resolves or contributes to, commented on it to claim it, and written "fixes {url}" or "part of {url}" in this PR description. If there were no relevant open issues, I opened one and commented that I would like to work on it (not necessary for very small changes).
  • Generated Terraform, and ran make test and make lint to ensure it passes unit and linter tests.
  • Ensured that all new fields I added that can be set by a user appear in at least one example (for generated resources) or third_party test (for handwritten resources or update tests).
  • Ran relevant acceptance tests (If the acceptance tests do not yet pass or you are unable to run them, please let your reviewer know).
  • Read the Release Notes Guide before writing my release note below.

Release Note Template for Downstream PRs (will be copied)

compute: Marked `stateful_disk` as GA in `google_compute_ instance_group_manager` 
compute: Marked `stateful_disk` as GA in `google_compute_ region_instance_group_manager` 
compute: Marked `google_compute_ per_instance_config` as GA
compute: Marked `google_compute_ region_per_instance_config` as GA

@google-cla google-cla bot added the cla: yes label Oct 2, 2020
@modular-magician
Copy link
Collaborator

Hello! I am a robot who works on Magic Modules PRs.

I have detected that you are a community contributor, so your PR will be assigned to someone with a commit-bit on this repo for initial review.

Thanks for your contribution! A human will be with you soon.

@rileykarson, please review this PR or find an appropriate assignee.

@modular-magician
Copy link
Collaborator

Hi! I'm the modular magician. Your PR generated some diffs in downstreams - here they are.

Diff report:

Terraform GA: Diff ( 11 files changed, 2923 insertions(+), 3 deletions(-))
Terraform Beta: Diff ( 3 files changed, 5 deletions(-))

@modular-magician
Copy link
Collaborator

I have triggered VCR tests based on this PR's diffs. See the results here: "https://ci-oss.hashicorp.engineering/viewQueued.html?itemId=150035"

@modular-magician
Copy link
Collaborator

Hi! I'm the modular magician. Your PR generated some diffs in downstreams - here they are.

Diff report:

Terraform GA: Diff ( 13 files changed, 3104 insertions(+), 4 deletions(-))
Terraform Beta: Diff ( 4 files changed, 6 deletions(-))

@modular-magician
Copy link
Collaborator

I have triggered VCR tests based on this PR's diffs. See the results here: "https://ci-oss.hashicorp.engineering/viewQueued.html?itemId=150037"

@rileykarson
Copy link
Member

@melinath: Let me know if you'd like me to review this, or if you'd already had a reviewer in mind! You can register yourself on this list so that the robot doesn't randomly pick one for you.

@melinath
Copy link
Member Author

melinath commented Oct 2, 2020

@rileykarson I didn't have a reviewer in mind; I can definitely reassign it if you prefer! I'll make a separate PR to remove myself from that list. :-)

Copy link
Member

@rileykarson rileykarson left a comment

Choose a reason for hiding this comment

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

Generally looks good- using a test run to double check, since VCR failed (due to unrelated reasons).

Just one small thing- you'll want to update the documentation for Instance Group Manager + the regional variant so that fields aren't unnecessarily marked as beta. See https://www.terraform.io/docs/providers/google/r/compute_instance_group_manager.html#stateful_disk for example.

I'd refer to specific resources (for newly GA resources) or fields in the changelog message as well, instead of the feature as whole. You can attach multiple messages to a single PR by specifying the release-note block multiple times, if that helps. For example, a recent field in GKE was noted as container: marked workload_metadata_config as GA in google_container_node_pool

@melinath melinath requested a review from rileykarson October 2, 2020 22:35
@melinath
Copy link
Member Author

melinath commented Oct 2, 2020

  • Updated the docs to not mark stateful_disk as Beta and also updated api docs links to point to v1 instead of beta.
  • Also updated the release note to have multiple messages, one for each updated field or resource.

Thanks! LMK if you have any more feedback.

@modular-magician
Copy link
Collaborator

Hi! I'm the modular magician. Your PR generated some diffs in downstreams - here they are.

Diff report:

Terraform GA: Diff ( 15 files changed, 3107 insertions(+), 7 deletions(-))
Terraform Beta: Diff ( 6 files changed, 5 insertions(+), 11 deletions(-))

@modular-magician
Copy link
Collaborator

I have triggered VCR tests based on this PR's diffs. See the results here: "https://ci-oss.hashicorp.engineering/viewQueued.html?itemId=150083"

Copy link
Member

@rileykarson rileykarson left a comment

Choose a reason for hiding this comment

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

LGTM!

Just a couple small notes on the release notes. You'll want to break the release note up from one note with multiple lines to multiple notes with one line each (this will format the final changelog a little better), a la:

compute: Marked `stateful_disk` as GA in `instance_group_manager` 
compute: Marked `stateful_disk` as GA in `region_instance_group_manager` 
compute: Marked `per_instance_config` as GA
compute: Marked `region_per_instance_config` as GA

When referring to resource names, I'd use the full name of the resource as well. For these resources, that's including the google_compute_ prefix, eg

compute: Marked `stateful_disk` as GA in `google_compute_instance_group_manager` 

@modular-magician
Copy link
Collaborator

I have triggered VCR tests in RECORDING mode for the following tests that failed during VCR: TestAccProviderMeta_setModuleName|TestAccComputeSnapshot_encryptionCMEK|TestAccMonitoringDashboard_gridLayout|TestAccMonitoringDashboard_basic|TestAccMonitoringDashboard_rowLayout|TestAccMonitoringDashboard_update You can view the result here: "https://ci-oss.hashicorp.engineering/viewQueued.html?itemId=150090"

@melinath
Copy link
Member Author

melinath commented Oct 5, 2020

@rileykarson I've updated the release notes section; thanks! It looks like the next step is that you would run the magician to generate downstream PRs and then, if those are approved, all the PRs get merged. Is that correct?

@rileykarson
Copy link
Member

Ah- there may be a guide we need to update somewhere. The Magician generates diffs downstream (#4047 (comment) for example) but doesn't create pull requests until post-merge these days. Approval on the MM pr is enough (a practice we ended up adopting even when there were downstream PRs).

Once you've merged this PR, the Magician will asynchronously create and automatically merge PRs against each repo that had a diff in the diff comment.

@melinath melinath merged commit 09a7ce6 into GoogleCloudPlatform:master Oct 5, 2020
@melinath melinath deleted the terraform-7323-stateful-mig-ga branch October 5, 2020 16:11
@melinath melinath restored the terraform-7323-stateful-mig-ga branch October 5, 2020 16:20
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Stateful MIG beta timeline
3 participants