Add egress-space terraform module

This commit is contained in:
Ryan Ahearn
2022-11-04 16:37:32 -04:00
parent a3f594693f
commit 13134ac6ae
6 changed files with 105 additions and 6 deletions

View File

@@ -0,0 +1,36 @@
###
# Target space/org
###
data "cloudfoundry_org" "org" {
name = var.cf_org_name
}
###
# Egress Space
###
resource "cloudfoundry_space" "public_egress" {
name = "${var.cf_restricted_space_name}-egress"
org = data.cloudfoundry_org.org.id
}
###
# User roles
###
data "cloudfoundry_user" "users" {
for_each = var.deployers
name = each.key
org_id = data.cloudfoundry_org.org.id
}
locals {
user_ids = [for user in data.cloudfoundry_user.users : user.id]
}
resource "cloudfoundry_space_users" "deployers" {
space = cloudfoundry_space.public_egress.id
managers = local.user_ids
developers = local.user_ids
}

View File

@@ -0,0 +1,16 @@
terraform {
required_version = "~> 1.0"
required_providers {
cloudfoundry = {
source = "cloudfoundry-community/cloudfoundry"
version = "~> 0.15"
}
}
}
provider "cloudfoundry" {
api_url = "https://api.fr.cloud.gov"
user = var.cf_user
password = var.cf_password
app_logs_max = 30
}

View File

@@ -0,0 +1,10 @@
variable "cf_password" {
type = string
sensitive = true
}
variable "cf_user" {}
variable "cf_org_name" {}
variable "cf_restricted_space_name" {}
variable "deployers" {
type = set(string)
}