File tree Expand file tree Collapse file tree 7 files changed +43
-3
lines changed Expand file tree Collapse file tree 7 files changed +43
-3
lines changed Original file line number Diff line number Diff line change @@ -35,6 +35,7 @@ module "additional" {
35
35
security_group_ids = lookup (each. value , " security_group_ids" , [for o in data . openstack_networking_secgroup_v2 . nonlogin : o . id ])
36
36
additional_cloud_config = lookup (each. value , " additional_cloud_config" , var. additional_cloud_config )
37
37
additional_cloud_config_vars = lookup (each. value , " additional_cloud_config_vars" , var. additional_cloud_config_vars )
38
+ server_group_id = lookup (each. value , " server_group_id" , null )
38
39
39
40
# can't be set for additional nodes
40
41
compute_init_enable = []
@@ -68,6 +69,7 @@ module "additional" {
68
69
" nodename_template" ,
69
70
" security_group_ids" ,
70
71
" additional_cloud_config" ,
71
- " additional_cloud_config_vars"
72
+ " additional_cloud_config_vars" ,
73
+ " server_group_id"
72
74
]
73
75
}
Original file line number Diff line number Diff line change @@ -34,6 +34,7 @@ module "compute" {
34
34
match_ironic_node = lookup (each. value , " match_ironic_node" , null )
35
35
availability_zone = lookup (each. value , " availability_zone" , null )
36
36
ip_addresses = lookup (each. value , " ip_addresses" , null )
37
+ server_group_id = lookup (each. value , " server_group_id" , null )
37
38
38
39
# computed
39
40
# not using openstack_compute_instance_v2.control.access_ip_v4 to avoid
@@ -63,7 +64,8 @@ module "compute" {
63
64
" gateway_ip" ,
64
65
" nodename_template" ,
65
66
" additional_cloud_config" ,
66
- " additional_cloud_config_vars"
67
+ " additional_cloud_config_vars" ,
68
+ " server_group_id"
67
69
]
68
70
69
71
}
Original file line number Diff line number Diff line change @@ -72,6 +72,13 @@ resource "openstack_compute_instance_v2" "control" {
72
72
}
73
73
}
74
74
75
+ dynamic "scheduler_hints" {
76
+ for_each = var. control_server_group_id != null ? [true ] : []
77
+ content {
78
+ group = var. control_server_group_id
79
+ }
80
+ }
81
+
75
82
metadata = {
76
83
environment_root = var.environment_root
77
84
access_ip = openstack_networking_port_v2.control[var.cluster_networks[0 ].network].all_fixed_ips[0 ]
Original file line number Diff line number Diff line change @@ -34,6 +34,7 @@ module "login" {
34
34
match_ironic_node = lookup (each. value , " match_ironic_node" , null )
35
35
availability_zone = lookup (each. value , " availability_zone" , null )
36
36
ip_addresses = lookup (each. value , " ip_addresses" , null )
37
+ server_group_id = lookup (each. value , " server_group_id" , null )
37
38
38
39
# can't be set for login
39
40
compute_init_enable = []
@@ -68,7 +69,8 @@ module "login" {
68
69
" nodename_template" ,
69
70
" additional_cloud_config" ,
70
71
" additional_cloud_config_vars" ,
71
- " security_group_ids"
72
+ " security_group_ids" ,
73
+ " server_group_id"
72
74
]
73
75
74
76
}
Original file line number Diff line number Diff line change @@ -103,6 +103,13 @@ resource "openstack_compute_instance_v2" "compute_fixed_image" {
103
103
}
104
104
}
105
105
106
+ dynamic "scheduler_hints" {
107
+ for_each = var. server_group_id != null ? [true ] : []
108
+ content {
109
+ group = var. server_group_id
110
+ }
111
+ }
112
+
106
113
metadata = merge (
107
114
{
108
115
environment_root = var.environment_root
@@ -164,6 +171,13 @@ resource "openstack_compute_instance_v2" "compute" {
164
171
}
165
172
}
166
173
174
+ dynamic "scheduler_hints" {
175
+ for_each = var. server_group_id != null ? [true ] : []
176
+ content {
177
+ group = var. server_group_id
178
+ }
179
+ }
180
+
167
181
metadata = merge (
168
182
{
169
183
environment_root = var.environment_root
Original file line number Diff line number Diff line change @@ -209,3 +209,8 @@ variable "additional_cloud_config_vars" {
209
209
default = {}
210
210
nullable = false
211
211
}
212
+
213
+ variable "server_group_id" {
214
+ type = string
215
+ default = null
216
+ }
Original file line number Diff line number Diff line change @@ -84,6 +84,7 @@ variable "login" {
84
84
if match_ironic_node is true, defered to OpenStack otherwise
85
85
gateway_ip: Address to add default route via
86
86
nodename_template: Overrides variable cluster_nodename_template
87
+ server_group_id: String ID of server group to use for scheduler hint
87
88
EOF
88
89
89
90
type = any
@@ -129,6 +130,7 @@ variable "compute" {
129
130
if match_ironic_node is true, defered to OpenStack otherwise
130
131
gateway_ip: Address to add default route via
131
132
nodename_template: Overrides variable cluster_nodename_template
133
+ server_group_id: String ID of server group to use for scheduler hint
132
134
133
135
Nodes are added to the following inventory groups:
134
136
- $group_name
@@ -341,3 +343,9 @@ variable "additional_cloud_config_vars" {
341
343
type = map (any )
342
344
default = {}
343
345
}
346
+
347
+ variable "control_server_group_id" {
348
+ description = " ID of server group to use for control node scheduler hint"
349
+ type = string
350
+ default = null
351
+ }
You can’t perform that action at this time.
0 commit comments