indexer: support per-parameter apply_method on aws_db_parameter_group#169
Open
UnbornAztecKing wants to merge 4 commits into
Open
indexer: support per-parameter apply_method on aws_db_parameter_group#169UnbornAztecKing wants to merge 4 commits into
UnbornAztecKing wants to merge 4 commits into
Conversation
….main
Changes rds_parameter_group_parameters from map(string) to
map(object({ value, apply_method = optional("immediate") })) so workspaces
can encode pending-reboot for static parameters (e.g. rds.logical_replication)
without forcing an aws_db_parameter_group.main replace on every plan.
Default map preserves the prior values (all immediate). Workspaces using
defaults see no diff; workspaces that have overridden the var must migrate
to the new object shape.
Default true preserves existing behavior. Lets testnet match live (false).
…porters - New var ecs_container_insights (default "enhanced") drives containerInsights on aws_ecs_cluster.main in indexer + full_node/snapshot/backup validator modules (via new validator module var container_insights). - New vars msk_open_monitoring_jmx_exporter_enabled and msk_open_monitoring_node_exporter_enabled (defaults true) drive the prometheus exporters on aws_msk_cluster.main. Defaults preserve existing behavior. Lets testnet describe its live shape (insights "enabled" instead of "enhanced", exporters disabled).
These were workflow scripts not intended for the repo.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Adds the workspace-level knobs needed to describe a real
indexer/deployment without forcing destructive replacements when imported live state diverges from the previously hard-coded module.rds_parameter_group_parametersmap(object({ value, apply_method = optional("immediate") }))aws_db_parameter_group.main; static params (e.g.rds.logical_replication) can now declareapply_method = "pending-reboot"and not triggercannot_updatereplacerds_main_copy_tags_to_snapshotbooltrueaws_db_instance.main.copy_tags_to_snapshotecs_container_insightsstring(enhanced/enabled)enhancedcontainerInsightsonaws_ecs_cluster.maininindexer/and on eachmodule.validatorinvocation (full_node, snapshot, backup) via new module varcontainer_insightsmsk_open_monitoring_jmx_exporter_enabledbooltrueaws_msk_cluster.main.open_monitoring.prometheus.jmx_exporter.enabled_in_brokermsk_open_monitoring_node_exporter_enabledbooltrue…node_exporter.enabled_in_brokerDriver
Adopting the live testnet PG into TF state (
testnet-indexer-apne1-db-parameter-group-postgres-17) surfacedrds.logical_replicationwithapply_method = pending-reboot. The priormap(string)schema could not encodeapply_method, producing an unresolvablecannot_updatediff that planned a full PG replace. Same story for the other four knobs: live testnet diverges from the hard-coded value, no var existed to declare the live value.Backward compatibility
rds_parameter_group_parametersare unaffected.{ value = "..." }, optionally{ value = "...", apply_method = "pending-reboot" }.Reviewer brief
indexer/variables.tf— the five new variables.indexer/rds.tf—dynamic "parameter"now consumes the object map.indexer/ecs.tf,indexer/msk.tf— single-line literal → var substitution.modules/validator/{ecs,variables}.tf— module-levelcontainer_insightsvar, propagated by indexer's threemodule.validatorcallers.Out of scope
var.rds_parameter_group_name(instance attachment) withaws_db_parameter_group.main.name.