mirror of
https://github.com/letic/terraform-provider-google.git
synced 2024-10-01 16:21:06 +00:00
Just don't set remove_node_pool on import (#3180)
Signed-off-by: Modular Magician <magic-modules@google.com>
This commit is contained in:
parent
efe8f34ac2
commit
705a9a754d
@ -1799,15 +1799,14 @@ func resourceContainerClusterStateImporter(d *schema.ResourceData, meta interfac
|
||||
return nil, fmt.Errorf("Invalid container cluster specifier. Expecting {zone}/{name} or {project}/{zone}/{name}")
|
||||
}
|
||||
|
||||
if len(project) > 0 {
|
||||
d.Set("project", project)
|
||||
} else {
|
||||
if len(project) == 0 {
|
||||
var err error
|
||||
project, err = getProject(d, config)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
}
|
||||
d.Set("project", project)
|
||||
|
||||
if isZone(location) {
|
||||
d.Set("zone", location)
|
||||
@ -1818,17 +1817,6 @@ func resourceContainerClusterStateImporter(d *schema.ResourceData, meta interfac
|
||||
d.Set("name", clusterName)
|
||||
d.SetId(clusterName)
|
||||
|
||||
// Try to determine remove_default_node_pool from presence of default
|
||||
// node pool; if still present and user has it set to true, the pool
|
||||
// will get removed on next apply.
|
||||
nodePool := fmt.Sprintf("%s/nodePools/%s", containerClusterFullName(project, location, clusterName), "default-pool")
|
||||
_, err := config.clientContainerBeta.Projects.Locations.Clusters.NodePools.Get(nodePool).Do()
|
||||
if err != nil && isGoogleApiErrorWithCode(err, 404) {
|
||||
d.Set("remove_default_node_pool", true)
|
||||
} else if err != nil {
|
||||
log.Printf("[WARN] Unable to import value for remove_default_node_pool, got error while trying to get default node pool: %s", err)
|
||||
}
|
||||
|
||||
return []*schema.ResourceData{d}, nil
|
||||
}
|
||||
|
||||
|
@ -210,6 +210,7 @@ func TestAccContainerCluster_withNetworkPolicyEnabled(t *testing.T) {
|
||||
ImportStateIdPrefix: "us-central1-a/",
|
||||
ImportState: true,
|
||||
ImportStateVerify: true,
|
||||
ImportStateVerifyIgnore: []string{"remove_default_node_pool"},
|
||||
},
|
||||
{
|
||||
Config: testAccContainerCluster_removeNetworkPolicy(clusterName),
|
||||
@ -223,6 +224,7 @@ func TestAccContainerCluster_withNetworkPolicyEnabled(t *testing.T) {
|
||||
ImportStateIdPrefix: "us-central1-a/",
|
||||
ImportState: true,
|
||||
ImportStateVerify: true,
|
||||
ImportStateVerifyIgnore: []string{"remove_default_node_pool"},
|
||||
},
|
||||
{
|
||||
Config: testAccContainerCluster_withNetworkPolicyDisabled(clusterName),
|
||||
@ -236,6 +238,7 @@ func TestAccContainerCluster_withNetworkPolicyEnabled(t *testing.T) {
|
||||
ImportStateIdPrefix: "us-central1-a/",
|
||||
ImportState: true,
|
||||
ImportStateVerify: true,
|
||||
ImportStateVerifyIgnore: []string{"remove_default_node_pool"},
|
||||
},
|
||||
{
|
||||
Config: testAccContainerCluster_withNetworkPolicyConfigDisabled(clusterName),
|
||||
@ -249,6 +252,7 @@ func TestAccContainerCluster_withNetworkPolicyEnabled(t *testing.T) {
|
||||
ImportStateIdPrefix: "us-central1-a/",
|
||||
ImportState: true,
|
||||
ImportStateVerify: true,
|
||||
ImportStateVerifyIgnore: []string{"remove_default_node_pool"},
|
||||
},
|
||||
{
|
||||
Config: testAccContainerCluster_withNetworkPolicyConfigDisabled(clusterName),
|
||||
@ -1027,6 +1031,7 @@ func TestAccContainerCluster_withDefaultNodePoolRemoved(t *testing.T) {
|
||||
ImportStateIdPrefix: "us-central1-a/",
|
||||
ImportState: true,
|
||||
ImportStateVerify: true,
|
||||
ImportStateVerifyIgnore: []string{"remove_default_node_pool"},
|
||||
},
|
||||
},
|
||||
})
|
||||
|
@ -589,9 +589,9 @@ $ terraform import google_container_cluster.mycluster my-gcp-project/us-east1-a/
|
||||
$ terraform import google_container_cluster.mycluster us-east1-a/my-cluster
|
||||
```
|
||||
|
||||
~> **Note:** This resource has several fields that control Terraform-specific behavior and aren't present in the API. If they are set in config and you import a cluster, Terraform may need to perform an update immediately after import. Some of these updates are no-ops, and some may modify your cluster.
|
||||
~> **Note:** This resource has several fields that control Terraform-specific behavior and aren't present in the API. If they are set in config and you import a cluster, Terraform may need to perform an update immediately after import. Most of these updates should be no-ops but some may modify your cluster if the imported state differs.
|
||||
|
||||
For example:
|
||||
For example, the following fields will show diffs if set in config:
|
||||
|
||||
- `min_master_version` will not be set on import and will show a no-op diff if set in config.
|
||||
- `remove_default_node_pool`: If the default node pool does not exist at import, this value will be set to true in state, but it will not be set otherwise. Thus, you may see a no-op diff if set to false in config, or a diff if set to true in config when the default node pool still exists.
|
||||
- `min_master_version`
|
||||
- `remove_default_node_pool`
|
||||
|
Loading…
Reference in New Issue
Block a user