You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

108 lines
1.9 KiB

  1. variable keyfile_location {
  2. description = "Location of the json keyfile to use with the google provider"
  3. type = string
  4. }
  5. variable region {
  6. description = "Region of all resources"
  7. type = string
  8. }
  9. variable gcp_project_id {
  10. description = "ID of the project"
  11. type = string
  12. }
  13. variable prefix {
  14. description = "Prefix for resource names"
  15. default = "default"
  16. }
  17. variable machines {
  18. description = "Cluster machines"
  19. type = map(object({
  20. node_type = string
  21. size = string
  22. zone = string
  23. additional_disks = map(object({
  24. size = number
  25. }))
  26. boot_disk = object({
  27. image_name = string
  28. size = number
  29. })
  30. }))
  31. }
  32. variable "master_sa_email" {
  33. type = string
  34. default = ""
  35. }
  36. variable "master_sa_scopes" {
  37. type = list(string)
  38. default = ["https://www.googleapis.com/auth/cloud-platform"]
  39. }
  40. variable "master_preemptible" {
  41. type = bool
  42. default = false
  43. }
  44. variable "master_additional_disk_type" {
  45. type = string
  46. default = "pd-ssd"
  47. }
  48. variable "worker_sa_email" {
  49. type = string
  50. default = ""
  51. }
  52. variable "worker_sa_scopes" {
  53. type = list(string)
  54. default = ["https://www.googleapis.com/auth/cloud-platform"]
  55. }
  56. variable "worker_preemptible" {
  57. type = bool
  58. default = false
  59. }
  60. variable "worker_additional_disk_type" {
  61. type = string
  62. default = "pd-ssd"
  63. }
  64. variable ssh_pub_key {
  65. description = "Path to public SSH key file which is injected into the VMs."
  66. type = string
  67. }
  68. variable ssh_whitelist {
  69. type = list(string)
  70. }
  71. variable api_server_whitelist {
  72. type = list(string)
  73. }
  74. variable nodeport_whitelist {
  75. type = list(string)
  76. }
  77. variable "ingress_whitelist" {
  78. type = list(string)
  79. default = ["0.0.0.0/0"]
  80. }
  81. variable "extra_ingress_firewalls" {
  82. type = map(object({
  83. source_ranges = set(string)
  84. protocol = string
  85. ports = list(string)
  86. target_tags = set(string)
  87. }))
  88. default = {}
  89. }