https://github.com/libre-devops/terraform-azurerm-search-service
A module used to deploy Azure Search Service 🔎
https://github.com/libre-devops/terraform-azurerm-search-service
Last synced: 2 months ago
JSON representation
A module used to deploy Azure Search Service 🔎
- Host: GitHub
- URL: https://github.com/libre-devops/terraform-azurerm-search-service
- Owner: libre-devops
- License: mit
- Created: 2024-10-24T18:57:33.000Z (6 months ago)
- Default Branch: main
- Last Pushed: 2024-10-28T09:29:52.000Z (6 months ago)
- Last Synced: 2024-12-26T16:11:42.143Z (4 months ago)
- Language: PowerShell
- Size: 18.6 KB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
Awesome Lists containing this project
README
```hcl
resource "azurerm_search_service" "this" {
for_each = { for instance in var.search_services : instance.name => instance }
location = each.value.location
name = each.value.name
resource_group_name = each.value.rg_name
sku = lower(each.value.sku)
allowed_ips = try(each.value.allowed_ips, [])
authentication_failure_mode = each.value.authentication_failure_mode
customer_managed_key_enforcement_enabled = each.value.customer_managed_key_enforcement_enabled
hosting_mode = each.value.hosting_mode
local_authentication_enabled = each.value.local_authentication_enabled
partition_count = each.value.partition_count
public_network_access_enabled = each.value.public_network_access_enabled
replica_count = each.value.replica_count
semantic_search_sku = each.value.semantic_search_skudynamic "identity" {
for_each = each.value.identity_type == "SystemAssigned" ? [each.value.identity_type] : []
content {
type = each.value.identity_type
}
}dynamic "identity" {
for_each = each.value.identity_type == "SystemAssigned, UserAssigned" ? [each.value.identity_type] : []
content {
type = each.value.identity_type
identity_ids = try(each.value.identity_ids, [])
}
}dynamic "identity" {
for_each = each.value.identity_type == "UserAssigned" ? [each.value.identity_type] : []
content {
type = each.value.identity_type
identity_ids = length(try(each.value.identity_ids, [])) > 0 ? each.value.identity_ids : []
}
}
}
```
## RequirementsNo requirements.
## Providers
| Name | Version |
|------|---------|
| [azurerm](#provider\_azurerm) | n/a |## Modules
No modules.
## Resources
| Name | Type |
|------|------|
| [azurerm_search_service.this](https://registry.terraform.io/providers/hashicorp/azurerm/latest/docs/resources/search_service) | resource |## Inputs
| Name | Description | Type | Default | Required |
|------|-------------|------|---------|:--------:|
| [search\_services](#input\_search\_services) | The search services to make |list(object({| n/a | yes |
name = string
rg_name = string
location = optional(string, "uksouth")
tags = map(string)
sku = string
allowed_ips = optional(list(string))
authentication_failure_mode = optional(string, "http403")
customer_managed_key_enforcement_enabled = optional(bool)
hosting_mode = optional(string, "default")
identity_ids = optional(list(string))
identity_type = optional(string)
local_authentication_enabled = optional(bool)
partition_count = optional(number)
public_network_access_enabled = optional(bool)
replica_count = optional(number)
semantic_search_sku = optional(string)
}))## Outputs
| Name | Description |
|------|-------------|
| [search\_service\_identity\_principal\_ids](#output\_search\_service\_identity\_principal\_ids) | The Principal IDs associated with the Managed Service Identities of all Search Service instances. |
| [search\_service\_identity\_tenant\_ids](#output\_search\_service\_identity\_tenant\_ids) | The Tenant IDs associated with the Managed Service Identities of all Search Service instances. |
| [search\_service\_ids](#output\_search\_service\_ids) | The IDs of all the Search Service instances. |
| [search\_service\_primary\_keys](#output\_search\_service\_primary\_keys) | The Primary Keys used for Search Service Administration. |
| [search\_service\_query\_keys](#output\_search\_service\_query\_keys) | The Query Keys of all Search Service instances. |
| [search\_service\_secondary\_keys](#output\_search\_service\_secondary\_keys) | The Secondary Keys used for Search Service Administration. |