Skip to content
This repository has been archived by the owner on Jun 3, 2024. It is now read-only.

[SYM-5335] Implement gcp_connector #1

Merged
merged 20 commits into from
Dec 11, 2023

Conversation

llam15
Copy link
Contributor

@llam15 llam15 commented Dec 6, 2023

Description

  • Implements the gcp_connector module, which:

    • Creates the resources required for the Sym Runtime to access a given Google Cloud Platform organization via Workload Identity Federation.
    • Adds variables to allow implementers to toggle whether to allow Sym to manage Google Group Memberships
    • Note: Because Google Workspace Admin Roles can only be managed by the Admin Console or with a Super Admin user, this module does not define the custom role that must be attached to the Sym Service Account. Instead we will provide in the documentation steps on how to set it up manually.
  • Adds a CircleCI pipeline to run terraform/fmt and terraform/validate as required checks for PRs

  • Adds a CODEOWNER file as well as a PR template file

Testing

  • Manually tested by applying to the sym-intergation-leslie project in the compliance.dev test account like so:
module "gcp_connector" {
  source = "../gcp-connector"

  environment                     = "leslie-local"
  identity_pool_project_id = google_project.sym_integration.project_id
  gcp_org_id                       = "472792873457"

  enable_group_management_api  = true

  depends_on = [google_project.sym_integration]
}

Copy link

linear bot commented Dec 6, 2023

@llam15 llam15 requested a review from a team December 6, 2023 14:47
variables.tf Outdated
# See: https://github.com/hashicorp/terraform/issues/25609#issuecomment-1472119672

value = null
precondition {
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This precondition block is what forces our minimum Terraform version to be >= 1.2.

Currently, the latest version of Terraform is 1.6.5. Are we comfortable with saying that to use the gcp_connector you must have a version >= 1.2?

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Got it... I do think we can get away with it, though it would be good, if possible, to find out if our existing customers who are interested in using us with GCP are able to do this.


<!-- BEGIN_TF_DOCS -->
<!-- END_TF_DOCS -->
<!-- BEGINNING OF PRE-COMMIT-TERRAFORM DOCS HOOK -->
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I decided to make the TF Doc generation part of our pre-commit hooks, so that we can preview the README in the PRs before merging, instead of generating them after they are merged to main.

Thoughts?

@llam15 llam15 merged commit b470d22 into main Dec 11, 2023
3 checks passed
@llam15 llam15 deleted the leslie/sym-5335-implement-gcp_connector branch December 11, 2023 16:20
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants