129 lines
4.1 KiB
Markdown
129 lines
4.1 KiB
Markdown
# Google Apigee Organization Module
|
|
|
|
This module allows managing a single Apigee organization and its environments and environmentgroups.
|
|
|
|
## Examples
|
|
|
|
### Apigee X Evaluation Organization
|
|
|
|
```hcl
|
|
module "apigee-organization" {
|
|
source = "./modules/apigee-organization"
|
|
project_id = "my-project"
|
|
analytics_region = "us-central1"
|
|
runtime_type = "CLOUD"
|
|
authorized_network = "my-vpc"
|
|
apigee_environments = [
|
|
"eval1",
|
|
"eval2"
|
|
]
|
|
apigee_envgroups = {
|
|
eval = {
|
|
environments = [
|
|
"eval1",
|
|
"eval2"
|
|
]
|
|
hostnames = [
|
|
"eval.api.example.com"
|
|
]
|
|
}
|
|
}
|
|
}
|
|
# tftest modules=1 resources=6
|
|
```
|
|
|
|
### Apigee X Paid Organization
|
|
|
|
```hcl
|
|
module "apigee-organization" {
|
|
source = "./modules/apigee-organization"
|
|
project_id = "my-project"
|
|
analytics_region = "us-central1"
|
|
runtime_type = "CLOUD"
|
|
authorized_network = "my-vpc"
|
|
database_encryption_key = "my-data-key"
|
|
apigee_environments = [
|
|
"dev1",
|
|
"dev2",
|
|
"test1",
|
|
"test2"
|
|
]
|
|
apigee_envgroups = {
|
|
dev = {
|
|
environments = [
|
|
"dev1",
|
|
"dev2"
|
|
]
|
|
hostnames = [
|
|
"dev.api.example.com"
|
|
]
|
|
}
|
|
test = {
|
|
environments = [
|
|
"test1",
|
|
"test2"
|
|
]
|
|
hostnames = [
|
|
"test.api.example.com"
|
|
]
|
|
}
|
|
}
|
|
}
|
|
# tftest modules=1 resources=11
|
|
```
|
|
|
|
### Apigee hybrid Organization
|
|
|
|
```hcl
|
|
module "apigee-organization" {
|
|
source = "./modules/apigee-organization"
|
|
project_id = "my-project"
|
|
analytics_region = "us-central1"
|
|
runtime_type = "HYBRID"
|
|
apigee_environments = [
|
|
"eval1",
|
|
"eval2"
|
|
]
|
|
apigee_envgroups = {
|
|
eval = {
|
|
environments = [
|
|
"eval1",
|
|
"eval2"
|
|
]
|
|
hostnames = [
|
|
"eval.api.example.com"
|
|
]
|
|
}
|
|
}
|
|
}
|
|
# tftest modules=1 resources=6
|
|
```
|
|
<!-- BEGIN TFDOC -->
|
|
|
|
## Variables
|
|
|
|
| name | description | type | required | default |
|
|
|---|---|:---:|:---:|:---:|
|
|
| [analytics_region](variables.tf#L17) | Analytics Region for the Apigee Organization (immutable). See https://cloud.google.com/apigee/docs/api-platform/get-started/install-cli. | <code>string</code> | ✓ | |
|
|
| [project_id](variables.tf#L61) | Project ID to host this Apigee organization (will also become the Apigee Org name). | <code>string</code> | ✓ | |
|
|
| [runtime_type](variables.tf#L66) | Apigee runtime type. Must be `CLOUD` or `HYBRID`. | <code>string</code> | ✓ | |
|
|
| [apigee_envgroups](variables.tf#L22) | Apigee Environment Groups. | <code title="map(object({ environments = list(string) hostnames = list(string) }))">map(object({…}))</code> | | <code>{}</code> |
|
|
| [apigee_environments](variables.tf#L31) | Apigee Environment Names. | <code>list(string)</code> | | <code>[]</code> |
|
|
| [authorized_network](variables.tf#L37) | VPC network self link (requires service network peering enabled (Used in Apigee X only). | <code>string</code> | | <code>null</code> |
|
|
| [billing_type](variables.tf#L75) | Billing type of the Apigee organization. | <code>string</code> | | <code>null</code> |
|
|
| [database_encryption_key](variables.tf#L43) | Cloud KMS key self link (e.g. `projects/foo/locations/us/keyRings/bar/cryptoKeys/baz`) used for encrypting the data that is stored and replicated across runtime instances (immutable, used in Apigee X only). | <code>string</code> | | <code>null</code> |
|
|
| [description](variables.tf#L49) | Description of the Apigee Organization. | <code>string</code> | | <code>"Apigee Organization created by tf module"</code> |
|
|
| [display_name](variables.tf#L55) | Display Name of the Apigee Organization. | <code>string</code> | | <code>null</code> |
|
|
|
|
## Outputs
|
|
|
|
| name | description | sensitive |
|
|
|---|---|:---:|
|
|
| [envs](outputs.tf#L17) | Apigee Environments. | |
|
|
| [org](outputs.tf#L22) | Apigee Organization. | |
|
|
| [org_ca_certificate](outputs.tf#L27) | Apigee organization CA certificate. | |
|
|
| [org_id](outputs.tf#L32) | Apigee Organization ID. | |
|
|
| [subscription_type](outputs.tf#L37) | Apigee subscription type. | |
|
|
|
|
<!-- END TFDOC -->
|