This module deploys apps in different spaces while making them available from a single host through a path prefix. It demonstrates how network policies can be used to accomodate traffic across spaces and potentially even across org boundaries
Important
This repository is managed as Philips Inner-source / Open-source. This repository is NOT endorsed or supported by HSSA&P or I&S Cloud Operations. You are expected to self-support or raise tickets on the Github project and NOT raise tickets in HSP ServiceNow.
Based on the teams count (var.teams) the module does the following:
- Creates
nspaces - Deploys a test app in each space
- Deploys a Kong API gateway
- Configures the API gateway to forward
/teamNpath to spaceNhosted test app - Sets up network policies for cross space container-to-container traffic
Provide the required variables and then run:
terraform init
terraform applyLicense is MIT
No requirements.
| Name | Version |
|---|---|
| cloudfoundry | 0.15.0 |
| hsdp | 0.30.10 |
| random | 3.1.0 |
| Name | Source | Version |
|---|---|---|
| kong | philips-labs/kong/cloudfoundry | 3.0.0 |
| Name | Type |
|---|---|
| cloudfoundry_app.teams | resource |
| cloudfoundry_network_policy.policies | resource |
| cloudfoundry_route.internal | resource |
| cloudfoundry_space.spaces | resource |
| cloudfoundry_space_users.users | resource |
| random_pet.deploy | resource |
| cloudfoundry_domain.internal | data source |
| cloudfoundry_org.org | data source |
| hsdp_config.cf | data source |
| Name | Description | Type | Default | Required |
|---|---|---|---|---|
| cf_org_name | n/a | string |
n/a | yes |
| cf_password | n/a | string |
n/a | yes |
| cf_space_name | n/a | string |
n/a | yes |
| cf_user | n/a | string |
n/a | yes |
| region | n/a | string |
n/a | yes |
| teams | n/a | number |
4 |
no |
| Name | Description |
|---|---|
| api_gateway | n/a |
No requirements.
| Name | Version |
|---|---|
| cloudfoundry | 0.50.5 |
| hsdp | 0.42.1 |
| random | 3.1.0 |
| Name | Source | Version |
|---|---|---|
| kong | philips-labs/kong/cloudfoundry | 3.0.0 |
| Name | Type |
|---|---|
| cloudfoundry_app.teams | resource |
| cloudfoundry_network_policy.policies | resource |
| cloudfoundry_route.internal | resource |
| cloudfoundry_space.spaces | resource |
| cloudfoundry_space_users.users | resource |
| random_pet.deploy | resource |
| cloudfoundry_domain.internal | data source |
| cloudfoundry_org.org | data source |
| hsdp_config.cf | data source |
| Name | Description | Type | Default | Required |
|---|---|---|---|---|
| cf_org_name | n/a | string |
n/a | yes |
| cf_password | n/a | string |
n/a | yes |
| cf_space_name | n/a | string |
n/a | yes |
| cf_user | n/a | string |
n/a | yes |
| region | n/a | string |
n/a | yes |
| teams | n/a | number |
4 |
no |
| Name | Description |
|---|---|
| api_gateway | n/a |