{"id":20761314,"url":"https://github.com/philips-labs/kong-multispace-routing-example","last_synced_at":"2025-11-01T16:30:27.515Z","repository":{"id":37965167,"uuid":"419841525","full_name":"philips-labs/kong-multispace-routing-example","owner":"philips-labs","description":"Example project demonstrating multi space routing using Kong and network policies","archived":false,"fork":false,"pushed_at":"2024-04-24T12:40:33.000Z","size":64,"stargazers_count":3,"open_issues_count":2,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-01-02T16:36:38.067Z","etag":null,"topics":["hsdp","kong","kong-api-gateway","network-policies","terraform"],"latest_commit_sha":null,"homepage":"","language":"HCL","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/philips-labs.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null}},"created_at":"2021-10-21T18:50:47.000Z","updated_at":"2024-04-24T12:40:38.000Z","dependencies_parsed_at":"2024-04-24T14:16:23.336Z","dependency_job_id":null,"html_url":"https://github.com/philips-labs/kong-multispace-routing-example","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/philips-labs%2Fkong-multispace-routing-example","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/philips-labs%2Fkong-multispace-routing-example/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/philips-labs%2Fkong-multispace-routing-example/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/philips-labs%2Fkong-multispace-routing-example/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/philips-labs","download_url":"https://codeload.github.com/philips-labs/kong-multispace-routing-example/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":239301994,"owners_count":19616451,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["hsdp","kong","kong-api-gateway","network-policies","terraform"],"created_at":"2024-11-17T10:18:53.711Z","updated_at":"2025-11-01T16:30:27.476Z","avatar_url":"https://github.com/philips-labs.png","language":"HCL","funding_links":[],"categories":[],"sub_categories":[],"readme":"# kong-multispace-route-example\n\nThis module deploys apps in different spaces while making them\navailable from a single host through a path prefix. It demonstrates\nhow network policies can be used to accomodate traffic across \nspaces and potentially even across org boundaries\n\n## Disclaimer\n\n\u003e [!Important]\n\u003e This repository is managed as Philips Inner-source / Open-source.\n\u003e This repository is NOT endorsed or supported by HSSA\u0026P or I\u0026S Cloud Operations.\n\u003e You are expected to self-support or raise tickets on the Github project and NOT raise tickets in HSP ServiceNow.\n\n## how it works\n\nBased on the teams count (`var.teams`) the module does the following:\n\n- Creates `n` spaces\n- Deploys a test app in each space\n- Deploys a Kong API gateway\n- Configures the API gateway to forward `/teamN` path to space `N` hosted test app\n- Sets up network policies for cross space container-to-container traffic \n\n## usage\n\nProvide the required variables and then run:\n\n```shell\nterraform init\nterraform apply\n```\n\n## License\n\nLicense is MIT\n\n\u003c!--- BEGIN_TF_DOCS ---\u003e\n## Requirements\n\nNo requirements.\n\n## Providers\n\n| Name | Version |\n|------|---------|\n| \u003ca name=\"provider_cloudfoundry\"\u003e\u003c/a\u003e [cloudfoundry](#provider\\_cloudfoundry) | 0.15.0 |\n| \u003ca name=\"provider_hsdp\"\u003e\u003c/a\u003e [hsdp](#provider\\_hsdp) | 0.30.10 |\n| \u003ca name=\"provider_random\"\u003e\u003c/a\u003e [random](#provider\\_random) | 3.1.0 |\n\n## Modules\n\n| Name | Source | Version |\n|------|--------|---------|\n| \u003ca name=\"module_kong\"\u003e\u003c/a\u003e [kong](#module\\_kong) | philips-labs/kong/cloudfoundry | 3.0.0 |\n\n## Resources\n\n| Name | Type |\n|------|------|\n| [cloudfoundry_app.teams](https://registry.terraform.io/providers/cloudfoundry-community/cloudfoundry/latest/docs/resources/app) | resource |\n| [cloudfoundry_network_policy.policies](https://registry.terraform.io/providers/cloudfoundry-community/cloudfoundry/latest/docs/resources/network_policy) | resource |\n| [cloudfoundry_route.internal](https://registry.terraform.io/providers/cloudfoundry-community/cloudfoundry/latest/docs/resources/route) | resource |\n| [cloudfoundry_space.spaces](https://registry.terraform.io/providers/cloudfoundry-community/cloudfoundry/latest/docs/resources/space) | resource |\n| [cloudfoundry_space_users.users](https://registry.terraform.io/providers/cloudfoundry-community/cloudfoundry/latest/docs/resources/space_users) | resource |\n| [random_pet.deploy](https://registry.terraform.io/providers/hashicorp/random/latest/docs/resources/pet) | resource |\n| [cloudfoundry_domain.internal](https://registry.terraform.io/providers/cloudfoundry-community/cloudfoundry/latest/docs/data-sources/domain) | data source |\n| [cloudfoundry_org.org](https://registry.terraform.io/providers/cloudfoundry-community/cloudfoundry/latest/docs/data-sources/org) | data source |\n| [hsdp_config.cf](https://registry.terraform.io/providers/philips-software/hsdp/latest/docs/data-sources/config) | data source |\n\n## Inputs\n\n| Name | Description | Type | Default | Required |\n|------|-------------|------|---------|:--------:|\n| \u003ca name=\"input_cf_org_name\"\u003e\u003c/a\u003e [cf\\_org\\_name](#input\\_cf\\_org\\_name) | n/a | `string` | n/a | yes |\n| \u003ca name=\"input_cf_password\"\u003e\u003c/a\u003e [cf\\_password](#input\\_cf\\_password) | n/a | `string` | n/a | yes |\n| \u003ca name=\"input_cf_space_name\"\u003e\u003c/a\u003e [cf\\_space\\_name](#input\\_cf\\_space\\_name) | n/a | `string` | n/a | yes |\n| \u003ca name=\"input_cf_user\"\u003e\u003c/a\u003e [cf\\_user](#input\\_cf\\_user) | n/a | `string` | n/a | yes |\n| \u003ca name=\"input_region\"\u003e\u003c/a\u003e [region](#input\\_region) | n/a | `string` | n/a | yes |\n| \u003ca name=\"input_teams\"\u003e\u003c/a\u003e [teams](#input\\_teams) | n/a | `number` | `4` | no |\n\n## Outputs\n\n| Name | Description |\n|------|-------------|\n| \u003ca name=\"output_api_gateway\"\u003e\u003c/a\u003e [api\\_gateway](#output\\_api\\_gateway) | n/a |\n\n\u003c!--- END_TF_DOCS ---\u003e\n\n\u003c!-- BEGIN_TF_DOCS --\u003e\n## Requirements\n\nNo requirements.\n\n## Providers\n\n| Name | Version |\n|------|---------|\n| \u003ca name=\"provider_cloudfoundry\"\u003e\u003c/a\u003e [cloudfoundry](#provider\\_cloudfoundry) | 0.50.5 |\n| \u003ca name=\"provider_hsdp\"\u003e\u003c/a\u003e [hsdp](#provider\\_hsdp) | 0.42.1 |\n| \u003ca name=\"provider_random\"\u003e\u003c/a\u003e [random](#provider\\_random) | 3.1.0 |\n\n## Modules\n\n| Name | Source | Version |\n|------|--------|---------|\n| \u003ca name=\"module_kong\"\u003e\u003c/a\u003e [kong](#module\\_kong) | philips-labs/kong/cloudfoundry | 3.0.0 |\n\n## Resources\n\n| Name | Type |\n|------|------|\n| [cloudfoundry_app.teams](https://registry.terraform.io/providers/cloudfoundry-community/cloudfoundry/latest/docs/resources/app) | resource |\n| [cloudfoundry_network_policy.policies](https://registry.terraform.io/providers/cloudfoundry-community/cloudfoundry/latest/docs/resources/network_policy) | resource |\n| [cloudfoundry_route.internal](https://registry.terraform.io/providers/cloudfoundry-community/cloudfoundry/latest/docs/resources/route) | resource |\n| [cloudfoundry_space.spaces](https://registry.terraform.io/providers/cloudfoundry-community/cloudfoundry/latest/docs/resources/space) | resource |\n| [cloudfoundry_space_users.users](https://registry.terraform.io/providers/cloudfoundry-community/cloudfoundry/latest/docs/resources/space_users) | resource |\n| [random_pet.deploy](https://registry.terraform.io/providers/hashicorp/random/latest/docs/resources/pet) | resource |\n| [cloudfoundry_domain.internal](https://registry.terraform.io/providers/cloudfoundry-community/cloudfoundry/latest/docs/data-sources/domain) | data source |\n| [cloudfoundry_org.org](https://registry.terraform.io/providers/cloudfoundry-community/cloudfoundry/latest/docs/data-sources/org) | data source |\n| [hsdp_config.cf](https://registry.terraform.io/providers/philips-software/hsdp/latest/docs/data-sources/config) | data source |\n\n## Inputs\n\n| Name | Description | Type | Default | Required |\n|------|-------------|------|---------|:--------:|\n| \u003ca name=\"input_cf_org_name\"\u003e\u003c/a\u003e [cf\\_org\\_name](#input\\_cf\\_org\\_name) | n/a | `string` | n/a | yes |\n| \u003ca name=\"input_cf_password\"\u003e\u003c/a\u003e [cf\\_password](#input\\_cf\\_password) | n/a | `string` | n/a | yes |\n| \u003ca name=\"input_cf_space_name\"\u003e\u003c/a\u003e [cf\\_space\\_name](#input\\_cf\\_space\\_name) | n/a | `string` | n/a | yes |\n| \u003ca name=\"input_cf_user\"\u003e\u003c/a\u003e [cf\\_user](#input\\_cf\\_user) | n/a | `string` | n/a | yes |\n| \u003ca name=\"input_region\"\u003e\u003c/a\u003e [region](#input\\_region) | n/a | `string` | n/a | yes |\n| \u003ca name=\"input_teams\"\u003e\u003c/a\u003e [teams](#input\\_teams) | n/a | `number` | `4` | no |\n\n## Outputs\n\n| Name | Description |\n|------|-------------|\n| \u003ca name=\"output_api_gateway\"\u003e\u003c/a\u003e [api\\_gateway](#output\\_api\\_gateway) | n/a |\n\u003c!-- END_TF_DOCS --\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fphilips-labs%2Fkong-multispace-routing-example","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fphilips-labs%2Fkong-multispace-routing-example","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fphilips-labs%2Fkong-multispace-routing-example/lists"}