@@ -151,22 +151,27 @@ def update_nodes_in_queue(strategy, queues)
151
151
end
152
152
end
153
153
154
- # Update slurm_parallelcluster_topology to add/remove Block Topology plugin
155
- template "#{ node [ 'cluster' ] [ 'slurm' ] [ 'install_dir' ] } /etc/slurm_parallelcluster_topology.conf" do
156
- source 'slurm/slurm_parallelcluster_topology.conf.erb'
157
- owner 'root'
158
- group 'root'
159
- mode '0644'
160
- end
154
+ ruby_block "Update slurm topology" do
155
+ block do
156
+ # Update slurm_parallelcluster_topology to add/remove Block Topology plugin
157
+ template "#{ node [ 'cluster' ] [ 'slurm' ] [ 'install_dir' ] } /etc/slurm_parallelcluster_topology.conf" do
158
+ source 'slurm/slurm_parallelcluster_topology.conf.erb'
159
+ owner 'root'
160
+ group 'root'
161
+ mode '0644'
162
+ end
161
163
162
- # Generate Slurm topology.conf file
163
- execute "update_topology_config" do
164
- command "#{ cookbook_virtualenv_path } /bin/python #{ node [ 'cluster' ] [ 'scripts_dir' ] } /slurm/pcluster_topology_generator.py" \
165
- " --output-file #{ node [ 'cluster' ] [ 'slurm' ] [ 'install_dir' ] } /etc/topology.conf" \
166
- " --block-sizes #{ node [ 'cluster' ] [ 'p6egb200_block_sizes' ] } " \
167
- " --input-file #{ node [ 'cluster' ] [ 'cluster_config_path' ] } "
168
- not_if { ::File . exist? ( node [ 'cluster' ] [ 'previous_cluster_config_path' ] ) && !are_queues_updated? && node [ 'cluster' ] [ 'p6egb200_block_sizes' ] . nil? || ( platform? ( 'amazon' ) && node [ 'platform_version' ] == "2" ) }
169
- #TODO: Need to remove topology.conf if CB is removed
164
+ # Update Slurm topology.conf file
165
+ execute "update or cleanup topology.conf" do
166
+ command "#{ cookbook_virtualenv_path } /bin/python #{ node [ 'cluster' ] [ 'scripts_dir' ] } /slurm/pcluster_topology_generator.py" \
167
+ " --output-file #{ node [ 'cluster' ] [ 'slurm' ] [ 'install_dir' ] } /etc/topology.conf" \
168
+ " --block-sizes #{ node [ 'cluster' ] [ 'p6egb200_block_sizes' ] } " \
169
+ " --input-file #{ node [ 'cluster' ] [ 'cluster_config_path' ] } "
170
+ not_if { ::File . exist? ( node [ 'cluster' ] [ 'previous_cluster_config_path' ] ) && !are_queues_updated? && node [ 'cluster' ] [ 'p6egb200_block_sizes' ] . nil? }
171
+ #TODO: Need to remove topology.conf if CB is removed
172
+ end
173
+ end
174
+ not_if { platform? ( 'amazon' ) && node [ 'platform_version' ] == "2" }
170
175
end
171
176
172
177
execute "generate_pcluster_slurm_configs" do
0 commit comments