Bumping this to add:
Using Terraform 0.15.5 and about to move to 1.X, however, the inability to disable the concise diff is proving problematic for certain resources.
For example:
-/+ resource "google_bigquery_table" "super_awesome_table" {
<snip>
~ schema = jsonencode(
~ [ # forces replacement
# (18 unchanged elements hidden)
{
mode = "NULLABLE"
name = "column_name_000"
type = "STRING"
},
~ {
~ type = "FLOAT" -> "STRING"
# (2 unchanged elements hidden)
} # forces replacement,
~ {
~ type = "FLOAT" -> "STRING"
# (2 unchanged elements hidden)
} # forces replacement,
~ {
~ type = "FLOAT" -> "STRING"
# (2 unchanged elements hidden)
} # forces replacement,
{
mode = "NULLABLE"
name = "column_name_001"
type = "STRING"
},
~ {
~ type = "FLOAT" -> "STRING"
# (2 unchanged elements hidden)
} # forces replacement,
~ {
~ type = "FLOAT" -> "STRING"
# (2 unchanged elements hidden)
} # forces replacement,
~ {
~ type = "FLOAT" -> "STRING"
# (2 unchanged elements hidden)
} # forces replacement,
~ {
~ type = "FLOAT" -> "STRING"
# (2 unchanged elements hidden)
} # forces replacement,
~ {
~ type = "FLOAT" -> "STRING"
# (2 unchanged elements hidden)
} # forces replacement,
{
mode = "NULLABLE"
name = "column_name_002"
type = "STRING"
},
# (26 unchanged elements hidden)
{
mode = "NULLABLE"
name = "column_name_003"
type = "STRING"
},
~ {
~ name = "column_name_004" -> "column_name_005"
# (2 unchanged elements hidden)
} # forces replacement,
]
)
Note that in this case I’ve got columns of a datatable defined and an external person/process has caused some column types to change their datatype for whatever special reason.
Now, instead of writing an automated response to go through and alert on the changes I’ve got to go through the definition manually (worst case) or write a vastly more complicated automated process to cover this.
In this particular instance, being able to disable the concise diff for certain runs (as a flag on the cli or an env…preferably a flag on the cli) would be extremely helpful, and should be relatively simple to implement.