@@ -45,34 +45,19 @@ resource "kubernetes_deployment" "container" {
4545 }
4646 }
4747
48- affinity {
49- dynamic "node_affinity" {
50- for_each = length (var. node_affinity ) > 0 ? [" node_affinity" ] : []
51- content {
52- dynamic "preferred_during_scheduling_ignored_during_execution" {
53- for_each = { for v in lookup (var. node_affinity , " preferred_during_scheduling_ignored_during_execution" , []) : uuid () => v }
54- content {
55- weight = preferred_during_scheduling_ignored_during_execution. value [" weight" ]
56- preference {
57- dynamic "match_expressions" {
58- for_each = { for v in lookup (preferred_during_scheduling_ignored_during_execution. value [" preference" ], " match_expressions" , []) : uuid () => v }
59- content {
60- key = match_expressions. value [" key" ]
61- operator = match_expressions. value [" operator" ]
62- values = lookup (match_expressions. value , " values" , [])
63- }
64- }
65- }
66- }
67- }
68- dynamic "required_during_scheduling_ignored_during_execution" {
69- for_each = { for v in lookup (var. node_affinity , " required_during_scheduling_ignored_during_execution" , []) : uuid () => v }
70- content {
71- dynamic "node_selector_term" {
72- for_each = { for v in lookup (required_during_scheduling_ignored_during_execution. value , " node_selector_term" , []) : uuid () => v }
73- content {
48+ dynamic "affinity" {
49+ for_each = length (var. node_affinity ) > 0 || length (var. pod_affinity ) > 0 || length (var. node_affinity ) > 0 ? [" affinity" ] : []
50+ content {
51+ dynamic "node_affinity" {
52+ for_each = length (var. node_affinity ) > 0 ? [" node_affinity" ] : []
53+ content {
54+ dynamic "preferred_during_scheduling_ignored_during_execution" {
55+ for_each = { for v in lookup (var. node_affinity , " preferred_during_scheduling_ignored_during_execution" , []) : uuid () => v }
56+ content {
57+ weight = preferred_during_scheduling_ignored_during_execution. value [" weight" ]
58+ preference {
7459 dynamic "match_expressions" {
75- for_each = { for v in lookup (node_selector_term . value , " match_expressions" , []) : uuid () => v }
60+ for_each = { for v in lookup (preferred_during_scheduling_ignored_during_execution . value [ " preference " ] , " match_expressions" , []) : uuid () => v }
7661 content {
7762 key = match_expressions. value [" key" ]
7863 operator = match_expressions. value [" operator" ]
@@ -82,99 +67,116 @@ resource "kubernetes_deployment" "container" {
8267 }
8368 }
8469 }
70+ dynamic "required_during_scheduling_ignored_during_execution" {
71+ for_each = { for v in lookup (var. node_affinity , " required_during_scheduling_ignored_during_execution" , []) : uuid () => v }
72+ content {
73+ dynamic "node_selector_term" {
74+ for_each = { for v in lookup (required_during_scheduling_ignored_during_execution. value , " node_selector_term" , []) : uuid () => v }
75+ content {
76+ dynamic "match_expressions" {
77+ for_each = { for v in lookup (node_selector_term. value , " match_expressions" , []) : uuid () => v }
78+ content {
79+ key = match_expressions. value [" key" ]
80+ operator = match_expressions. value [" operator" ]
81+ values = lookup (match_expressions. value , " values" , [])
82+ }
83+ }
84+ }
85+ }
86+ }
87+ }
8588 }
8689 }
87- }
88- dynamic "pod_affinity" {
89- for_each = length (var. pod_affinity ) > 0 ? [" pod_affinity" ] : []
90- content {
91- dynamic "preferred_during_scheduling_ignored_during_execution" {
92- for_each = { for v in lookup (var. pod_affinity , " preferred_during_scheduling_ignored_during_execution" , []) : uuid () => v }
93- content {
94- weight = preferred_during_scheduling_ignored_during_execution. value [" weight" ]
95- pod_affinity_term {
96- namespaces = lookup (preferred_during_scheduling_ignored_during_execution. value [" pod_affinity_term" ], " namespaces" , [])
97- topology_key = lookup (preferred_during_scheduling_ignored_during_execution. value [" pod_affinity_term" ], " topology_key" , " " )
90+ dynamic "pod_affinity" {
91+ for_each = length (var. pod_affinity ) > 0 ? [" pod_affinity" ] : []
92+ content {
93+ dynamic "preferred_during_scheduling_ignored_during_execution" {
94+ for_each = { for v in lookup (var. pod_affinity , " preferred_during_scheduling_ignored_during_execution" , []) : uuid () => v }
95+ content {
96+ weight = preferred_during_scheduling_ignored_during_execution. value [" weight" ]
97+ pod_affinity_term {
98+ namespaces = lookup (preferred_during_scheduling_ignored_during_execution. value [" pod_affinity_term" ], " namespaces" , [])
99+ topology_key = lookup (preferred_during_scheduling_ignored_during_execution. value [" pod_affinity_term" ], " topology_key" , " " )
100+ label_selector {
101+ match_labels = lookup (preferred_during_scheduling_ignored_during_execution. value [" pod_affinity_term" ][" label_selector" ], " match_labels" , {})
102+ dynamic "match_expressions" {
103+ for_each = { for v in lookup (preferred_during_scheduling_ignored_during_execution. value [" pod_affinity_term" ][" label_selector" ], " match_expressions" , []) : uuid () => v }
104+ content {
105+ key = match_expressions. value [" key" ]
106+ operator = match_expressions. value [" operator" ]
107+ values = lookup (match_expressions. value , " values" , [])
108+ }
109+ }
110+ }
111+ }
112+ }
113+ }
114+ dynamic "required_during_scheduling_ignored_during_execution" {
115+ for_each = { for v in lookup (var. pod_affinity , " required_during_scheduling_ignored_during_execution" , []) : uuid () => v }
116+ content {
98117 label_selector {
99- match_labels = lookup (preferred_during_scheduling_ignored_during_execution . value [ " pod_affinity_term " ] [" label_selector" ], " match_labels" , {})
118+ match_labels = lookup (required_during_scheduling_ignored_during_execution . value [" label_selector" ], " match_labels" , {})
100119 dynamic "match_expressions" {
101- for_each = { for v in lookup (preferred_during_scheduling_ignored_during_execution . value [ " pod_affinity_term " ] [" label_selector" ], " match_expressions" , []) : uuid () => v }
120+ for_each = { for v in lookup (required_during_scheduling_ignored_during_execution . value [" label_selector" ], " match_expressions" , []) : uuid () => v }
102121 content {
103122 key = match_expressions. value [" key" ]
104123 operator = match_expressions. value [" operator" ]
105124 values = lookup (match_expressions. value , " values" , [])
106125 }
107126 }
108127 }
128+ namespaces = lookup (required_during_scheduling_ignored_during_execution. value , " namespaces" , [])
129+ topology_key = lookup (required_during_scheduling_ignored_during_execution. value , " topology_key" , " " )
109130 }
110131 }
111132 }
112- dynamic "required_during_scheduling_ignored_during_execution" {
113- for_each = { for v in lookup (var. pod_affinity , " required_during_scheduling_ignored_during_execution" , []) : uuid () => v }
114- content {
115- label_selector {
116- match_labels = lookup (required_during_scheduling_ignored_during_execution. value [" label_selector" ], " match_labels" , {})
117- dynamic "match_expressions" {
118- for_each = { for v in lookup (required_during_scheduling_ignored_during_execution. value [" label_selector" ], " match_expressions" , []) : uuid () => v }
119- content {
120- key = match_expressions. value [" key" ]
121- operator = match_expressions. value [" operator" ]
122- values = lookup (match_expressions. value , " values" , [])
133+ }
134+
135+ dynamic "pod_anti_affinity" {
136+ for_each = length (var. pod_anti_affinity ) > 0 ? [" pod_anti_affinity" ] : []
137+ content {
138+ dynamic "preferred_during_scheduling_ignored_during_execution" {
139+ for_each = { for v in lookup (var. pod_anti_affinity , " preferred_during_scheduling_ignored_during_execution" , []) : uuid () => v }
140+ content {
141+ weight = preferred_during_scheduling_ignored_during_execution. value [" weight" ]
142+ pod_affinity_term {
143+ namespaces = lookup (preferred_during_scheduling_ignored_during_execution. value [" pod_affinity_term" ], " namespaces" , [])
144+ topology_key = lookup (preferred_during_scheduling_ignored_during_execution. value [" pod_affinity_term" ], " topology_key" , " " )
145+ label_selector {
146+ match_labels = lookup (preferred_during_scheduling_ignored_during_execution. value [" pod_affinity_term" ][" label_selector" ], " match_labels" , {})
147+ dynamic "match_expressions" {
148+ for_each = { for v in lookup (preferred_during_scheduling_ignored_during_execution. value [" pod_affinity_term" ][" label_selector" ], " match_expressions" , []) : uuid () => v }
149+ content {
150+ key = match_expressions. value [" key" ]
151+ operator = match_expressions. value [" operator" ]
152+ values = lookup (match_expressions. value , " values" , [])
153+ }
154+ }
123155 }
124156 }
125157 }
126- namespaces = lookup (required_during_scheduling_ignored_during_execution. value , " namespaces" , [])
127- topology_key = lookup (required_during_scheduling_ignored_during_execution. value , " topology_key" , " " )
128158 }
129- }
130- }
131- }
132-
133- dynamic "pod_anti_affinity" {
134- for_each = length (var. pod_anti_affinity ) > 0 ? [" pod_anti_affinity" ] : []
135- content {
136- dynamic "preferred_during_scheduling_ignored_during_execution" {
137- for_each = { for v in lookup (var. pod_anti_affinity , " preferred_during_scheduling_ignored_during_execution" , []) : uuid () => v }
138- content {
139- weight = preferred_during_scheduling_ignored_during_execution. value [" weight" ]
140- pod_affinity_term {
141- namespaces = lookup (preferred_during_scheduling_ignored_during_execution. value [" pod_affinity_term" ], " namespaces" , [])
142- topology_key = lookup (preferred_during_scheduling_ignored_during_execution. value [" pod_affinity_term" ], " topology_key" , " " )
159+ dynamic "required_during_scheduling_ignored_during_execution" {
160+ for_each = { for v in lookup (var. pod_anti_affinity , " required_during_scheduling_ignored_during_execution" , []) : uuid () => v }
161+ content {
143162 label_selector {
144- match_labels = lookup (preferred_during_scheduling_ignored_during_execution . value [ " pod_affinity_term " ] [" label_selector" ], " match_labels" , {})
163+ match_labels = lookup (required_during_scheduling_ignored_during_execution . value [" label_selector" ], " match_labels" , {})
145164 dynamic "match_expressions" {
146- for_each = { for v in lookup (preferred_during_scheduling_ignored_during_execution . value [ " pod_affinity_term " ] [" label_selector" ], " match_expressions" , []) : uuid () => v }
165+ for_each = { for v in lookup (required_during_scheduling_ignored_during_execution . value [" label_selector" ], " match_expressions" , []) : uuid () => v }
147166 content {
148167 key = match_expressions. value [" key" ]
149168 operator = match_expressions. value [" operator" ]
150169 values = lookup (match_expressions. value , " values" , [])
151170 }
152171 }
153172 }
173+ namespaces = lookup (required_during_scheduling_ignored_during_execution. value , " namespaces" , [])
174+ topology_key = lookup (required_during_scheduling_ignored_during_execution. value , " topology_key" , " " )
154175 }
155176 }
156177 }
157- dynamic "required_during_scheduling_ignored_during_execution" {
158- for_each = { for v in lookup (var. pod_anti_affinity , " required_during_scheduling_ignored_during_execution" , []) : uuid () => v }
159- content {
160- label_selector {
161- match_labels = lookup (required_during_scheduling_ignored_during_execution. value [" label_selector" ], " match_labels" , {})
162- dynamic "match_expressions" {
163- for_each = { for v in lookup (required_during_scheduling_ignored_during_execution. value [" label_selector" ], " match_expressions" , []) : uuid () => v }
164- content {
165- key = match_expressions. value [" key" ]
166- operator = match_expressions. value [" operator" ]
167- values = lookup (match_expressions. value , " values" , [])
168- }
169- }
170- }
171- namespaces = lookup (required_during_scheduling_ignored_during_execution. value , " namespaces" , [])
172- topology_key = lookup (required_during_scheduling_ignored_during_execution. value , " topology_key" , " " )
173- }
174- }
175178 }
176179 }
177-
178180 }
179181
180182 automount_service_account_token = true
@@ -223,8 +225,9 @@ resource "kubernetes_deployment" "container" {
223225 dynamic "container" {
224226 for_each = local. image
225227 content {
226- name = container. key
227- image = container. value
228+ name = container. key
229+ image = container. value
230+ image_pull_policy = var. image_pull_policy
228231
229232 args = lookup (local. args , container. key , [])
230233
0 commit comments