Skip to content

Commit 4278843

Browse files
committed
[Isolated] Only install efs-proxy deps when in adc regions
1 parent 38a7577 commit 4278843

File tree

2 files changed

+38
-51
lines changed

2 files changed

+38
-51
lines changed

cookbooks/aws-parallelcluster-environment/resources/efs/efs_redhat8.rb

Lines changed: 23 additions & 44 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@
2222
# use 'partial/_install_from_tar'
2323
use 'partial/_mount_umount'
2424

25-
def install_script_code(efs_utils_tarball, efs_utils_package, efs_utils_version)
25+
def adc_install_script_code(efs_utils_tarball, efs_utils_package, efs_utils_version)
2626
<<-EFSUTILSINSTALL
2727
set -e
2828
tar xf #{efs_utils_tarball}
@@ -40,58 +40,37 @@ def prerequisites
4040
%w(rpm-build make rust cargo openssl-devel)
4141
end
4242

43-
action :install_utils do
44-
package_repos 'update package repositories' do
45-
action :update
46-
end
47-
48-
package prerequisites do
49-
retries 3
50-
retry_delay 5
51-
end
52-
53-
directory node['cluster']['sources_dir'] do
54-
recursive true
55-
end
56-
57-
return if redhat_on_docker?
43+
action :install_efs_utils do
5844

5945
package_name = "amazon-efs-utils"
6046
package_version = new_resource.efs_utils_version
6147
efs_utils_tarball = "#{node['cluster']['sources_dir']}/efs-utils-#{package_version}.tar.gz"
62-
efs_utils_url = "#{node['cluster']['artifacts_s3_url']}/dependencies/efs/v#{package_version}.tar.gz"
6348

64-
# Do not install efs-utils if a same or newer version is already installed.
65-
return if already_installed?(package_name, package_version)
49+
if aws_region.start_with?("us-iso")
6650

67-
# On all OSes but Amazon Linux 2, amazon-efs-utils and stunnel are installed from source,
68-
# because their OS repos do not have amazon-efs-utils and new stunnel
51+
efs_proxy_deps = "efs-proxy-dependencies-#{package_version}.tar.gz"
52+
efs_proxy_deps_tarball = "#{node['cluster']['sources_dir']}/#{efs_proxy_deps}"
53+
efs_proxy_deps_url = "#{node['cluster']['artifacts_s3_url']}/dependencies/efs/#{efs_proxy_deps}"
54+
remote_file efs_proxy_deps_tarball do
55+
source efs_proxy_deps_url
56+
mode '0644'
57+
retries 3
58+
retry_delay 5
59+
action :create_if_missing
60+
end
6961

70-
# Get EFS Utils tarball
71-
remote_file efs_utils_tarball do
72-
source efs_utils_url
73-
mode '0644'
74-
retries 3
75-
retry_delay 5
76-
checksum new_resource.efs_utils_checksum
77-
action :create_if_missing
78-
end
62+
bash "install efs utils" do
63+
cwd node['cluster']['sources_dir']
64+
code adc_install_script_code(efs_utils_tarball, package_name, package_version)
65+
end
7966

80-
efs_proxy_deps = "efs-proxy-dependencies-#{package_version}.tar.gz"
81-
efs_proxy_deps_tarball = "#{node['cluster']['sources_dir']}/#{efs_proxy_deps}"
82-
efs_proxy_deps_url = "#{node['cluster']['artifacts_s3_url']}/dependencies/efs/#{efs_proxy_deps}"
83-
remote_file efs_proxy_deps_tarball do
84-
source efs_proxy_deps_url
85-
mode '0644'
86-
retries 3
87-
retry_delay 5
88-
action :create_if_missing
67+
else
68+
# Install EFS Utils following https://docs.aws.amazon.com/efs/latest/ug/installing-amazon-efs-utils.html
69+
bash "install efs utils" do
70+
cwd node['cluster']['sources_dir']
71+
code install_script_code(efs_utils_tarball, package_name, package_version)
72+
end
8973
end
9074

91-
# Install EFS Utils following https://docs.aws.amazon.com/efs/latest/ug/installing-amazon-efs-utils.html
92-
bash "install efs utils" do
93-
cwd node['cluster']['sources_dir']
94-
code install_script_code(efs_utils_tarball, package_name, package_version)
95-
end
9675
action_increase_poll_interval
9776
end

cookbooks/aws-parallelcluster-environment/resources/efs/partial/_install_from_tar.rb

Lines changed: 15 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,10 @@
1212
# or in the "LICENSE.txt" file accompanying this file.
1313
# This file is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, express or implied.
1414
# See the License for the specific language governing permissions and limitations under the License.
15+
package_name = "amazon-efs-utils"
16+
package_version = new_resource.efs_utils_version
17+
efs_utils_tarball = "#{node['cluster']['sources_dir']}/efs-utils-#{package_version}.tar.gz"
18+
efs_utils_url = "#{node['cluster']['artifacts_s3_url']}/dependencies/efs/v#{package_version}.tar.gz"
1519

1620
action :install_utils do
1721
package_repos 'update package repositories' do
@@ -29,11 +33,6 @@
2933

3034
return if redhat_on_docker?
3135

32-
package_name = "amazon-efs-utils"
33-
package_version = new_resource.efs_utils_version
34-
efs_utils_tarball = "#{node['cluster']['sources_dir']}/efs-utils-#{package_version}.tar.gz"
35-
efs_utils_url = "#{node['cluster']['artifacts_s3_url']}/dependencies/efs/v#{package_version}.tar.gz"
36-
3736
# Do not install efs-utils if a same or newer version is already installed.
3837
return if already_installed?(package_name, package_version)
3938

@@ -50,10 +49,19 @@
5049
action :create_if_missing
5150
end
5251

52+
action_install_efs_utils
53+
5354
# Install EFS Utils following https://docs.aws.amazon.com/efs/latest/ug/installing-amazon-efs-utils.html
55+
# bash "install efs utils" do
56+
# cwd node['cluster']['sources_dir']
57+
# code install_script_code(efs_utils_tarball, package_name, package_version)
58+
# end
59+
action_increase_poll_interval
60+
end
61+
62+
action :install_efs_utils do
5463
bash "install efs utils" do
5564
cwd node['cluster']['sources_dir']
5665
code install_script_code(efs_utils_tarball, package_name, package_version)
5766
end
58-
action_increase_poll_interval
59-
end
67+
end

0 commit comments

Comments
 (0)