-
Notifications
You must be signed in to change notification settings - Fork 1.6k
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
Add support for accelerators to google_datafusion_instance #6851
Add support for accelerators to google_datafusion_instance #6851
Conversation
Hello! I am a robot who works on Magic Modules PRs. I've detected that you're a community contributor. @shuyama1, a repository maintainer, has been assigned to assist you and help review your changes. ❓ First time contributing? Click here for more detailsYour assigned reviewer will help review your code by:
You can help make sure that review is quick by running local tests and ensuring they're passing in between each push you make to your PR's branch. Also, try to leave a comment with each push you make, as pushes generally don't generate emails. If your reviewer doesn't get back to you within a week after your most recent change, please feel free to leave a comment on the issue asking them to take a look! In the absence of a dedicated review dashboard most maintainers manage their pending reviews through email, and those will sometimes get lost in their inbox. |
Hi there, I'm the Modular magician. I've detected the following information about your changes: Diff reportYour PR generated some diffs in downstreams - here they are. Terraform GA: Diff ( 3 files changed, 132 insertions(+), 2 deletions(-)) |
Tests analyticsTotal tests: Action takenTriggering VCR tests in RECORDING mode for the tests that failed during VCR. Click here to see the failed testsTestAccComputeGlobalForwardingRule_externalHttpLbMigBackendCustomHeaderExample|TestAccComputeGlobalForwardingRule_externalTcpProxyLbMigBackendExample|TestAccComputeForwardingRule_internalTcpUdpLbWithMigBackendExample|TestAccComputeForwardingRule_internalHttpLbWithMigBackendExample|TestAccComputeForwardingRule_forwardingRuleRegionalHttpXlbExample|TestAccComputeForwardingRule_forwardingRuleHttpLbExample|TestAccComputeForwardingRule_update|TestAccComputeGlobalForwardingRule_internalLoadBalancing|TestAccComputeGlobalForwardingRule_globalForwardingRuleInternalExample|TestAccFirebaserulesRelease_BasicRelease|TestAccLoggingBucketConfigProject_cmekSettings|TestAccDataFusionInstance_dataFusionInstanceFullExample |
Tests passed during RECORDING mode: Tests failed during RECORDING mode: Please fix these to complete your PR |
version = "6.3.0" | ||
version = "6.7.0" | ||
accelerators { | ||
accelerator_type = "ACCELERATOR_TYPE_UNSPECIFIED" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We may want to specify some other value for this field in this test and also omit ACCELERATOR_TYPE_UNSPECIFIED
value from Terraform implementation.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Updated with the revised test.
db34c7a
to
0f34a26
Compare
Hi there, I'm the Modular magician. I've detected the following information about your changes: Diff reportYour PR generated some diffs in downstreams - here they are. Terraform GA: Diff ( 3 files changed, 130 insertions(+), 2 deletions(-)) |
Tests analyticsTotal tests: Action takenTriggering VCR tests in RECORDING mode for the tests that failed during VCR. Click here to see the failed testsTestAccLoggingBucketConfigProject_cmekSettings|TestAccFirebaserulesRelease_BasicRelease|TestAccDataFusionInstance_dataFusionInstanceFullExample|TestAccComputeGlobalForwardingRule_globalForwardingRuleInternalExample|TestAccComputeGlobalForwardingRule_externalHttpLbMigBackendCustomHeaderExample|TestAccComputeForwardingRule_forwardingRuleRegionalHttpXlbExample|TestAccComputeGlobalForwardingRule_externalTcpProxyLbMigBackendExample|TestAccComputeForwardingRule_forwardingRuleHttpLbExample|TestAccComputeGlobalForwardingRule_internalLoadBalancing|TestAccComputeForwardingRule_internalTcpUdpLbWithMigBackendExample|TestAccComputeForwardingRule_internalHttpLbWithMigBackendExample |
Tests passed during RECORDING mode: All tests passed |
Hi there, I'm the Modular magician. I've detected the following information about your changes: Diff reportYour PR generated some diffs in downstreams - here they are. Terraform GA: Diff ( 3 files changed, 126 insertions(+), 2 deletions(-)) |
Tests analyticsTotal tests: Action takenTriggering VCR tests in RECORDING mode for the tests that failed during VCR. Click here to see the failed testsTestAccFirebaserulesRelease_BasicRelease|TestAccRegionInstanceGroupManager_stateful|TestAccComputeForwardingRule_update|TestAccCloudfunctions2function_cloudfunctions2BasicGcsExample |
Tests passed during RECORDING mode: Tests failed during RECORDING mode: Please fix these to complete your PR |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM overall!
One question: Does this feature support in-place update? If so, would you mind adding a update test? Otherwise, we need to add forcenew
(input: true
in mmv1). Currently, update steps are not supported in the generated tests and they need to be added manually to the handwritten test. Sorry for the extra work.
Yeah, I had tested that with figuring out the default_from_api and removed the existing |
Handwritten datafusion_instance tests locate at: https://github.com/GoogleCloudPlatform/magic-modules/blob/main/mmv1/third_party/terraform/tests/resource_data_fusion_instance_test.go.erb. You can modify an existing test to include your feature. More guidance on how to add update tests: https://googlecloudplatform.github.io/magic-modules/docs/how-to/add-handwritten-test/#update-tests. Let me know if you have any questions implementing the test! |
Hi there, I'm the Modular magician. I've detected the following information about your changes: Diff reportYour PR generated some diffs in downstreams - here they are. Terraform GA: Diff ( 3 files changed, 126 insertions(+), 2 deletions(-)) |
Tests analyticsTotal tests: Action takenTriggering VCR tests in RECORDING mode for the tests that failed during VCR. Click here to see the failed testsTestAccFirebaserulesRelease_BasicRelease|TestAccDataFusionInstance_update|TestAccContainerCluster_failedCreation |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM in general! Only have some small comments. Sorry for missing those in my previous review.
mmv1/templates/terraform/examples/data_fusion_instance_full.tf.erb
Outdated
Show resolved
Hide resolved
Hi there, I'm the Modular magician. I've detected the following information about your changes: Diff reportYour PR generated some diffs in downstreams - here they are. Terraform GA: Diff ( 3 files changed, 126 insertions(+), 2 deletions(-)) |
Tests analyticsTotal tests: Action takenTriggering VCR tests in RECORDING mode for the tests that failed during VCR. Click here to see the failed testsTestAccDataFusionInstance_dataFusionInstanceFullExample|TestAccContainerCluster_failedCreation |
Tests passed during RECORDING mode: Tests failed during RECORDING mode: Please fix these to complete your PR |
Hi, Any update on this PR? |
Hi there, I'm the Modular magician. I've detected the following information about your changes: Diff reportYour PR generated some diffs in downstreams - here they are. Terraform GA: Diff ( 4 files changed, 142 insertions(+), 2 deletions(-)) |
Tests analyticsTotal tests: Action takenTriggering VCR tests in RECORDING mode for the tests that failed during VCR. Click here to see the failed testsTestAccFirebaserulesRelease_BasicRelease|TestAccDataFusionInstance_update|TestAccDataFusionInstance_dataFusionInstanceFullExample|TestAccComputeGlobalForwardingRule_externalHttpLbMigBackendCustomHeaderExample|TestAccComputeGlobalForwardingRule_externalTcpProxyLbMigBackendExample|TestAccComputeForwardingRule_forwardingRuleRegionalHttpXlbExample|TestAccComputeForwardingRule_forwardingRuleHttpLbExample|TestAccComputeForwardingRule_internalTcpUdpLbWithMigBackendExample|TestAccComputeForwardingRule_internalHttpLbWithMigBackendExample|TestAccComputeGlobalForwardingRule_internalLoadBalancing|TestAccComputeGlobalForwardingRule_globalForwardingRuleInternalExample|TestAccWorkstationsWorkstationConfig_workstationConfigEncryptionKeyExample |
Tests passed during RECORDING mode: Tests failed during RECORDING mode: Please fix these to complete your PR |
Hi there, I'm the Modular magician. I've detected the following information about your changes: Diff reportYour PR generated some diffs in downstreams - here they are. Terraform GA: Diff ( 4 files changed, 171 insertions(+), 7 deletions(-)) |
Tests analyticsTotal tests: Action takenFound 2 affected test(s) by replaying old test recordings. Starting RECORDING based on the most recent commit. Click here to see the affected testsTestAccDataFusionInstance_dataFusionInstanceFullExample|TestAccWorkstationsWorkstationConfig_workstationConfigEncryptionKeyExample |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM! Thanks for adding the DSF. Should be good to go after resolving the conflicts!
Hi there, I'm the Modular magician. I've detected the following information about your changes: Diff reportYour PR generated some diffs in downstreams - here they are. Terraform GA: Diff ( 4 files changed, 169 insertions(+), 5 deletions(-)) |
Tests analyticsTotal tests: Action takenFound 5 affected test(s) by replaying old test recordings. Starting RECORDING based on the most recent commit. Click here to see the affected testsTestAccFirebaserulesRelease_BasicRelease|TestAccDataFusionInstance_dataFusionInstanceFullExample|TestAccComposerEnvironment_withEncryptionConfigComposer1|TestAccBigQueryDataTable_bigtable|TestAccWorkstationsWorkstationConfig_workstationConfigEncryptionKeyExample |
Tests passed during RECORDING mode: Tests failed during RECORDING mode: Please fix these to complete your PR |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM! Nice work!
- :CCAI_INSIGHTS | ||
required: true | ||
- !ruby/object:Api::Type::Enum | ||
name: 'state' |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
drive-by post review comment: We could consider marking this as required: true
as well, or mark a clientside "ENABLED" default. We need more complete guidance on this, but we want to avoid default_from_api
wherever possible- it creates worse Terraform plans, and can have surprising behaviour when performing complex updates. We still need to use it a lot of the time, though, particularly on already-released fields.
Particularly, there are often cases where making a field (in a new resource) or a subfield (of a new field) required is preferable to mapping to the minimum possible message the API allows. It creates a very clear schema, and makes the user's configuration+plan very explicit about what's happening. Plus, it's possible to change the schema in a minor version- including adding a clientside default. That's not an option for new top-level fields in existing resources or subfields in existing fields, since that'd be a breaking change.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is there a general rule for when to approach something with "this supports the main use cases better" as opposed to just matching the API functionality? Or is it just the kind of thing that will make more sense with further experience working with the provider and adding more resources and functionality?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Right now just further experience- we need to create guidance/define a general approach, but the rules will always be pretty subjective.
My thinking here is: consider the potential for confusion here if a user has a DISABLED accelerator and the state field is not in config Terraform won't see a diff, and recreating will create a resource in a different state- vs the annoyance of typing (and realistically, copy-pasting) "ENABLED" into configs.
Adding AuthorizedOrgsDesc to AccessContextManager (GoogleCloudPlatform#7178) Allow project field in Firebase apps datasource (GoogleCloudPlatform#7300) * Allow project field in Firebase apps datasource * Add tf_test to the display name * update to capitalized dependencies Rename compute_(region)_per_instance_config test files to .erb files … (GoogleCloudPlatform#7409) * Rename compute_(region)_per_instance_config test files to .erb files since the resources have fields in beta. * Omit stateful_ip tests for GA Bootstrap network cleanup (GoogleCloudPlatform#7367) * Update bootstrapped networks for alloydb * Update bootstrapped networks for redis * Update bootstrapped networks for vertexai * Update comment for BootstrapSharedTestNetwork to be more clear Fix override directory concat (GoogleCloudPlatform#7413) Bootstrap required permissions for composer environment tests (GoogleCloudPlatform#7391) * Bootstrap the required permissions * Make BootstrapAllPSARoles actually work Also adds some helper functions for debugging what the bootstrap function does. It will now log the roles that were missing in the policy. * Add missing return, fix nits * Fix typo in service agent name * Account for newly exported test functions Add maintenance_interval field to Instance Template and Instance scheduling. (GoogleCloudPlatform#7365) * Move testing to handwritten * Move testing to handwritten * Fix lint * Fix typo * Add remove step and update documentation * Add remove step and update documentation * Fix comparing string to nil * Add field to handwritten defs * rebase on main & resolve conflicts * Fix doc formatting * Add maintenance interval to Instance resource * Add maintenance interval to Instance resource * Add maintenance interval to Instance resource * Change function names to valid * Fix type mismatch * Fix type mismatch * Fix function name Fix naming of resource policies in tests to be sweepable (GoogleCloudPlatform#7412) Skip TestAccWorkstationsWorkstationConfig_workstationConfigEncryptionKeyExample (GoogleCloudPlatform#7415) Add support for Apigee Sharedflow (GoogleCloudPlatform#7202) * added sharedflows mmv1 with error * fix indentation issue for sharedflow * add semi auto generated resourceApigeeSharedFlow * remove sharedflow mmv1 and add sharedflow manual provider * adding files for debugging review, test have issue * adding files for debugging review, test have issue * update test, doc, provider for apigee * Update api.yaml remove empty new line * Update api.yaml * Rename resource_apigee_shared_flow_generated_test.go to resource_apigee_shared_flow_test.go * Update resource_apigee_shared_flow.go update import regex, change debug messages to log.Printf * Update mmv1/third_party/terraform/utils/provider.go.erb Co-authored-by: megan07 <[email protected]> * update PR to address comments * update test * fix sharedflow attribute update issue, add sharedflow deployment * Update apigee_shared_flow_deployment.html.markdown minor doc fix * Update mmv1/third_party/terraform/utils/provider.go.erb Co-authored-by: megan07 <[email protected]> * Update mmv1/third_party/terraform/website/docs/r/apigee_shared_flow.html.markdown Co-authored-by: megan07 <[email protected]> * Update resource_apigee_shared_flow_test.go remove commented out (unused) line of code * Delete api.yaml remove api.yaml as it is not needed for handwritten resource. Current repo structure no longer uses aggregated api.yaml * Rename apigee_shared_flow.html.markdown to apigee_sharedflow.html.markdown * Rename apigee_shared_flow_deployment.html.markdown to apigee_sharedflow_deployment.html.markdown * Rename resource_apigee_shared_flow.go to resource_apigee_sharedflow.go * Rename resource_apigee_shared_flow_deployment_test.go to resource_apigee_sharedflow_deployment_test.go * Rename resource_apigee_shared_flow_test.go to resource_apigee_sharedflow_test.go * Rename resource_apigee_shared_flow_sweeper_test.go to resource_apigee_sharedflow_sweeper_test.go * Update resource_apigee_sharedflow.go remove comment lines * Update mmv1/third_party/terraform/resources/resource_apigee_sharedflow.go Co-authored-by: megan07 <[email protected]> * Update resource_apigee_sharedflow_deployment_test.go remove unused debugging log * update function name to capitalize * Update resource_apigee_sharedflow_deployment_test.go remove fmt.print * add flowhook * move flowhook doc * Update mmv1/third_party/terraform/tests/resource_apigee_flowhook_test.go Co-authored-by: megan07 <[email protected]> * Update mmv1/third_party/terraform/website/docs/r/apigee_flowhook.html.markdown Co-authored-by: megan07 <[email protected]> * Update mmv1/third_party/terraform/website/docs/r/apigee_flowhook.html.markdown Co-authored-by: megan07 <[email protected]> * Update mmv1/third_party/terraform/tests/resource_apigee_flowhook_test.go Co-authored-by: megan07 <[email protected]> * Update resource_apigee_flowhook_test.go remove fmt.print * update some resource attribute properties * Update apigee_flowhook.html.markdown updated `description` and `continue_on_error` as optional * update referenced function naming case --------- Co-authored-by: Ray Xu <[email protected]> Co-authored-by: megan07 <[email protected]> add tests (GoogleCloudPlatform#7357) Co-authored-by: Edward Sun <[email protected]> run gofmt + fix capitalization errors from previous PRs (GoogleCloudPlatform#7420) switch ci secrets to use secret manager (GoogleCloudPlatform#7408) Update field descriptions (GoogleCloudPlatform#7402) HA VPN over Cloud Interconnect has launched in GA We should still probably add a sample or two showing how to use it. Document PRODUCT_BASE_PATH override for DCL resource IAM (GoogleCloudPlatform#7418) yaqs/1723187608399380480 Add support for accelerators to google_datafusion_instance (GoogleCloudPlatform#6851) Added support to the field for Data Fusion, updated corresponding generated and handwritten tests, and added a custom diffsuppressfunc. Currently suggests a manual fix to a potential diff issue, will be able to update down line based on feedback from API team. Fix alloydb_cluster permadiff (GoogleCloudPlatform#7421) Fix dns_managed_zone tests using unverified domain (GoogleCloudPlatform#7422) Add SKIP_PROJECT_SWEEPER env variable for skipping the project sweeper (GoogleCloudPlatform#7432) Remove percent sign when parsing metadata name (GoogleCloudPlatform#7417) * Remove percent sign when parsing metadata name * Remove percent sign when parsing metadata name Merge branch 'GoogleCloudPlatform:main' into feature/iam_policy Add ignore read on reserved ip ranges (GoogleCloudPlatform#7429) Fix serviceusage links, clean up service resource stub (GoogleCloudPlatform#7435) Remove use of `make generate` from TPG/TPGB-specific step in CI (GoogleCloudPlatform#7379) Updating default accelerator.state field behavior in Data Fusion Instance (GoogleCloudPlatform#7434) Making suggested default behavior functionality updates in previous accelerators PR. Modify resource attribute 'input' to 'immutable' (GoogleCloudPlatform#7431) * Modify resource attribute 'input' to 'immutable' Remove noisy logging of project sweeper being skipped (GoogleCloudPlatform#7439) Fix PubSub-to-BigQuery push configuration example (GoogleCloudPlatform#7410) Rework + reflow provider reference, touch up index (GoogleCloudPlatform#7437) Fix eventarc tests to use dedicated bootstrapped keys (GoogleCloudPlatform#7440) Update docs for changing attribute `input` to `immutable` (GoogleCloudPlatform#7442) Feat name constraints (GoogleCloudPlatform#7400) Remove game_service_cluster_basic test (GoogleCloudPlatform#7443) send friendly_name (GoogleCloudPlatform#7433) * send friendly_name * fixed validator failures * update * fix validator errors --------- Co-authored-by: Edward Sun <[email protected]> Fix headline of google_iam_workload_identity_pool (GoogleCloudPlatform#7449) Move IAM bootstrap to its own file, improve error messages (GoogleCloudPlatform#7424) * Move IAM bootstrap to its own file, improve errors Also bootstrap roles/cloudbuild.builds.builder for cloudbuild service agent. * Re-add BootstrapConfig (accidentally deleted) * Fix wrong variable name * Bootstrap the role previously hardcoded for pubsub * Move error message back into bootstrap function This will dedup the code that calls this function. It now returns a boolean and sends the more useful error through t.Error. * Bootstrap the permissions for pubsub service agent * Bootstrap the role in the correct test * Fix formatting Changing name field on google_compute_disk for TestAccComputeInstanceTemplate_sourceSnapshotEncryptionKey to include randomly generated string (GoogleCloudPlatform#7392) * Changed name within google_compute_disk on line 3162 to inclue and randomly generated string * Cleaned up arguments being passed in to be more inline with other tests * Updated based on addtional PR comments * Fixed swapping of values within new context If not specified, a default Workstations service agent SA is returned (GoogleCloudPlatform#7428) * If not specified, a default service agent SA is returned * Revert "Skip TestAccWorkstationsWorkstationConfig_workstationConfigEncryptionKeyExample" This reverts commit 097bdbe. * remove `rotation_period` update BigqueryDatapolicy to ga (GoogleCloudPlatform#6797) fix managed.dnsAuthorizations: (GoogleCloudPlatform#7445) Co-authored-by: Edward Sun <[email protected]> google_compute_security_policy: force send enforce_on_key so it can be unset on (GoogleCloudPlatform#7454) Make `hostname` and `matcher` fields immutable (GoogleCloudPlatform#7448) Add note on requiredness (GoogleCloudPlatform#7453) Update BootstrapProject to support use across multiple projects/environments (GoogleCloudPlatform#7369) * Update BootstrapProject to support use across multiple projects/environments * Fix typo * Fix arguments for getTestProjectFromEnv * Fix project naming strategy for BootstrapProject to produce valid names in all envs * Fix typo * Fix function name after rebase Update resource names in acceptance test to use `tf-test-` prefix (GoogleCloudPlatform#7450) fix datastream_stream dataset id import (GoogleCloudPlatform#7451) Merge branch 'GoogleCloudPlatform:main' into feature/iam_policy Removing api.yaml and replacing with per product configs Merge branch 'feature/iam_policy' of https://github.com/dbjnbnrj/magic-modules into feature/iam_policy
…udPlatform#6851) Added support to the field for Data Fusion, updated corresponding generated and handwritten tests, and added a custom diffsuppressfunc. Currently suggests a manual fix to a potential diff issue, will be able to update down line based on feedback from API team.
Fixes hashicorp/terraform-provider-google#9070
Adds accelerator field to the data fusion api.yaml and updates the corresponding example sample test.
If this PR is for Terraform, I acknowledge that I have:
make test
andmake lint
to ensure it passes unit and linter tests.Release Note Template for Downstream PRs (will be copied)