main.tf 2.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576
  1. data "azurerm_client_config" "current" {}
  2. data "azurerm_subscription" "primary" {}
  3. locals {
  4. resource_group_name = "external-secrets-e2e"
  5. }
  6. resource "azurerm_resource_group" "current" {
  7. name = local.resource_group_name
  8. location = var.resource_group_location
  9. }
  10. module "test_sp" {
  11. source = "./service-principal"
  12. application_display_name = "managed-e2e-suite-external-secrets-operator"
  13. application_owners = [data.azurerm_client_config.current.object_id]
  14. issuer = module.test_aks.cluster_issuer_url
  15. subject = "system:serviceaccount:${var.sa_namespace}:${var.sa_name}"
  16. depends_on = [
  17. azurerm_resource_group.current
  18. ]
  19. }
  20. module "e2e_sp" {
  21. source = "./service-principal"
  22. application_display_name = "managed-e2e-suite-external-secrets-e2e"
  23. application_owners = [data.azurerm_client_config.current.object_id]
  24. issuer = module.test_aks.cluster_issuer_url
  25. subject = "system:serviceaccount:default:external-secrets-e2e"
  26. }
  27. module "test_key_vault" {
  28. source = "./key-vault"
  29. key_vault_display_name = var.key_vault_display_name
  30. resource_group_location = var.resource_group_location
  31. resource_group_name = local.resource_group_name
  32. tenant_id = data.azurerm_client_config.current.tenant_id
  33. client_object_id = data.azurerm_client_config.current.object_id
  34. eso_sp_object_id = module.test_sp.sp_object_id
  35. eso_e2e_sp_object_id = module.e2e_sp.sp_object_id
  36. depends_on = [
  37. azurerm_resource_group.current
  38. ]
  39. }
  40. module "test_aks" {
  41. source = "./aks"
  42. cluster_name = var.cluster_name
  43. resource_group_name = local.resource_group_name
  44. resource_group_location = var.resource_group_location
  45. default_node_pool_node_count = var.default_node_pool_node_count
  46. default_node_pool_vm_size = var.default_node_pool_vm_size
  47. cluster_tags = var.cluster_tags
  48. depends_on = [
  49. azurerm_resource_group.current
  50. ]
  51. }
  52. resource "azurerm_role_assignment" "current" {
  53. scope = data.azurerm_subscription.primary.id
  54. role_definition_name = "Owner"
  55. principal_id = module.test_sp.sp_id
  56. depends_on = [
  57. azurerm_resource_group.current
  58. ]
  59. }