Skip to content

Add option to disable external Postgres preparation steps

Grant Young requested to merge gy-external-postgres-prep-option into main

What does this MR do?

MR adds an option to disable the Toolkit's convenience steps where it attempts to prepare external databases for use by GitLab by creating users, databases and enabling extensions via the Ansible community.postgres collection.

With some database setups the community.postgres collection is unable to support connecting to them, such as when mutual 2-way SSL is enabled. There may be others situations where this applies and it's a tricky area as we're beholden to the options available in Ansible and how to handle internal only databases.

As a result we need to add an option to disable these convenience steps along with associated documentation. MR does just that.

Related issues

Closes #628 (closed)

Author's checklist

When ready for review, the Author applies the workflowready for review label and mention @gl-quality/get-maintainers:

  • Merge request:
    • Corresponding Issue raised and reviewed by the GET maintainers team.
    • Merge Request Title and Description are up-to-date, accurate, and descriptive
    • MR targeting the appropriate branch
    • MR has a green pipeline
    • MR has no new security alerts in the widget from the Secret Detection and IaC Scan (SAST) jobs.
  • Code:
    • Check the area changed works as expected. Consider testing it in different environment sizes (1k,3k,10k,etc.).
    • Documentation created/updated in the same MR.
    • If this MR adds an optional configuration - check that all permutations continue to work.
    • For Terraform changes: set up a previous version environment, then run a terraform plan with your new changes and ensure nothing will be destroyed. If anything will be destroyed and this can't be avoided please add a comment to the current MR.
  • Create any follow-up issue(s) to support the new feature across other supported cloud providers or advanced configurations. Create 1 issue for each provider/configuration. Contact the Quality Enablement team if unsure.

Merge request reports