0-bootstrap/builders/tf.cloud/outputs.tf (95 lines of code) (raw):
/**
* Copyright 2021 Google LLC
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
output "seed_project_id" {
description = "Project where service accounts and core APIs will be enabled."
value = module.seed_bootstrap.seed_project_id
}
output "bootstrap_step_terraform_service_account_email" {
description = "Bootstrap Step Terraform Account"
value = google_service_account.terraform-env-sa["bootstrap"].email
}
output "projects_step_terraform_service_account_email" {
description = "Projects Step Terraform Account"
value = google_service_account.terraform-env-sa["proj"].email
}
output "networks_step_terraform_service_account_email" {
description = "Networks Step Terraform Account"
value = google_service_account.terraform-env-sa["net"].email
}
output "environment_step_terraform_service_account_email" {
description = "Environment Step Terraform Account"
value = google_service_account.terraform-env-sa["env"].email
}
output "organization_step_terraform_service_account_email" {
description = "Organization Step Terraform Account"
value = google_service_account.terraform-env-sa["org"].email
}
output "gcs_bucket_tfstate" {
description = "Bucket used for storing terraform state for Foundations Pipelines in Seed Project."
value = module.seed_bootstrap.gcs_bucket_tfstate
}
output "common_config" {
description = "Common configuration data to be used in other steps."
value = {
org_id = var.org_id,
parent_folder = var.parent_folder,
billing_account = var.billing_account,
default_region = var.default_region,
project_prefix = var.project_prefix,
folder_prefix = var.folder_prefix
parent_id = local.parent
bootstrap_folder_name = google_folder.bootstrap.name
}
}
output "required_groups" {
description = "List of Google Groups created that are required by the Example Foundation steps."
value = var.groups.create_required_groups == false ? tomap(var.groups.required_groups) : tomap({ for key, value in module.required_group : key => value.id })
}
output "optional_groups" {
description = "List of Google Groups created that are optional to the Example Foundation steps."
value = var.groups.create_optional_groups == false ? tomap(var.groups.optional_groups) : tomap({ for key, value in module.optional_group : key => value.id })
}
/* ----------------------------------------
Specific to tfc_bootstrap
---------------------------------------- */
# Un-comment tfc_bootstrap and its outputs if you want to use Terraform Cloud instead of Cloud Build
output "cicd_project_id" {
description = "Project where the CI/CD infrastructure for Terraform Cloud resides."
value = module.tfc_cicd.project_id
}
output "tfc_org_name" {
description = "Name of the TFC organization."
value = var.tfc_org_name
}
/* ----------------------------------------
Specific to tfc_bootstrap with Terraform Cloud Agents
---------------------------------------- */
# Un-comment if you want to use Terraform Cloud Agents
# (In other words, un-comment if you set enable_tfc_cloud_agents to true on .tfvars)
output "kubernetes_endpoint" {
description = "The GKE cluster endpoint"
sensitive = true
value = module.tfc_agent_gke[0].kubernetes_endpoint
}
output "service_account" {
description = "The default service account used for TFC agent nodes"
value = module.tfc_agent_gke[0].service_account
}
output "cluster_name" {
description = "GKE cluster name"
value = module.tfc_agent_gke[0].cluster_name
}
output "hub_cluster_membership_id" {
value = module.tfc_agent_gke[0].hub_cluster_membership_id
description = "The ID of the cluster membership"
}