2323action :configure do
2424 return if on_docker?
2525 return unless enroot_installed
26+ return unless configure_enroot
27+ return unless configure_pyxis
2628
2729 cookbook_file "/tmp/enroot.template.conf" do
2830 source 'enroot/enroot.template.conf'
5961 set -e
6062 ENROOT_CONFIG_RELEASE=pyxis
6163 SHARED_DIR=#{ node [ 'cluster' ] [ 'shared_dir' ] }
62-
6364 ENROOT_CACHE_PATH=${SHARED_DIR}/enroot envsubst < /tmp/enroot.template.conf > /tmp/enroot.conf
6465 mv /tmp/enroot.conf /etc/enroot/enroot.conf
6566 chmod 0644 /etc/enroot/enroot.conf
7677 mode '0644'
7778 end
7879
79-
8080 link '/usr/local/share/pyxis/pyxis.conf' do
8181 to "#{ node [ 'cluster' ] [ 'slurm' ] [ 'install_dir' ] } /etc/plugstack.conf.d/pyxis.conf"
8282 end
83-
83+
8484 template "#{ node [ 'cluster' ] [ 'slurm' ] [ 'install_dir' ] } /etc/plugstack.conf.d/pyxis.conf " do
8585 source 'pyxis/pyxis.conf.erb'
8686 cookbook 'aws-parallelcluster-platform'
8989 mode '0644'
9090 end
9191
92-
9392 bash "Configure Pyxis" do
9493 user 'root'
95- code <<-PYXIS_CONFIGURE
94+ code <<-PYXIS_CONFIGURE
95+ set -e
9696 SHARED_DIR=#{ node [ 'cluster' ] [ 'shared_dir' ] }
9797 SHARED_DIR=${SHARED_DIR} envsubst < /opt/slurm/etc/plugstack.conf.d/pyxis.conf > /opt/slurm/etc/plugstack.conf.d/pyxis.tmp.conf
9898 mv /opt/slurm/etc/plugstack.conf.d/pyxis.tmp.conf /opt/slurm/etc/plugstack.conf.d/pyxis.conf
99-
10099 PYXIS_CONFIGURE
101100 retries 3
102101 retry_delay 5
@@ -110,3 +109,11 @@ def package_version
110109def enroot_installed
111110 ::File . exist? ( '/usr/bin/enroot' )
112111end
112+
113+ def configure_enroot
114+ [ 'yes' , true ] . include? ( node [ 'cluster' ] [ 'enroot' ] [ 'enabled' ] )
115+ end
116+
117+ def configure_pyxis
118+ [ 'yes' , true ] . include? ( node [ 'cluster' ] [ 'pyxis' ] [ 'enabled' ] )
119+ end
0 commit comments