1919use 'partial/_get_package_version_rpm'
2020use 'partial/_common'
2121# use 'partial/_redhat_based'
22- use 'partial/_install_from_tar'
22+ # use 'partial/_install_from_tar'
2323use 'partial/_mount_umount'
2424
2525def install_script_code ( efs_utils_tarball , efs_utils_package , efs_utils_version )
@@ -40,7 +40,43 @@ def prerequisites
4040 %w( rpm-build make rust cargo openssl-devel )
4141end
4242
43- action :install_efs_proxy do
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?
58+
59+ package_name = "amazon-efs-utils"
60+ package_version = new_resource . efs_utils_version
61+ 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"
63+
64+ # Do not install efs-utils if a same or newer version is already installed.
65+ return if already_installed? ( package_name , package_version )
66+
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
69+
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
79+
4480 efs_proxy_deps = "efs-proxy-dependencies-#{ package_version } .tar.gz"
4581 efs_proxy_deps_tarball = "#{ node [ 'cluster' ] [ 'sources_dir' ] } /#{ efs_proxy_deps } "
4682 efs_proxy_deps_url = "https://hgreebe-dependencies.s3.us-east-1.amazonaws.com/efs-proxy-dependencies-2.3.1.tar.gz?response-content-disposition=inline&X-Amz-Content-Sha256=UNSIGNED-PAYLOAD&X-Amz-Security-Token=IQoJb3JpZ2luX2VjEFYaCXVzLWVhc3QtMSJHMEUCIC57FpUZjjJgSezpPSXd3o5S52N7qsSVuQ066V%2BuWRJgAiEAr3AdFTmeIO2F%2BI3uS396pifdxm4%2FxZLq%2BEEW%2Fmackzgq4wQIj%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2FARAAGgw5MTE4MDA3MzcyOTEiDK8nkS5KEgup1WM5aSq3BPGpMtwENj5WLnKZFtSAVOSioatjcEVjSAF%2FOGAwRrGAb2MhKxis9WCY20Z3PgcSlTMFA7hjCyqV8TcbFdD9g68btL%2FJ7NYRs7lGw3usHacZz7XLyLv9r22vds5oUZ6EwXiK6NYsvE6cQrAJmp2g72mYvu1A%2BlgNtmmieYcJZm6aGaL4Hl%2Fp2RKFLT65%2F8F6Uuyuh3FYunGnySaZ4Q2bewKn5GowFrhlj6VdJRqgi73g%2FOcFEpoIPwpEU6SWMubMzlNIFo%2BppuK%2BoVXljmbPz5ACxI0351MbosfYjeJjYGUKX%2F5Vu0P3aOOEpNgkjQ74wMWzNKUufwtIgGT0AAPOIfss1SPU%2BDiEW80iO1rDR0sxeAPMgBEIx9T8h0qomAkMueTjH%2FfBIx4s2%2BRndjdBUDucb0WKeVIpr3LcWSOes59QZBQeaAI95H7V9oNUI8ZoipLPzgesAldhlTLvxR7xmbU%2Fy12ME900o9gAx8EhePKE75%2BMkDnyanrtjdZE6kqHPM3kksV6j6iC70ga%2ByPZGZDANZMqr62qR5Khx2XAzl1vDjwIaG6XxlDflXAjqG386OHR9UdVkNGfFF2lwePBgVN%2FIGDT1cJv2fB8kXZgG0iAJPk8jav%2BxbnKhqDDkgMb3tcnIqzDTETbEAJZLnaSASFghFKqx0UVB5EK2p271PLhJ0hJDfbTOY%2BmMWwRrPiAEdYbN1%2BDbRXt6j1yoC57TJ%2Ffgdd8TiVrpZgX0d5LETKFlUrPZuRtWzCa3dLEBjq3AiyrZVJtOxdY78gJ0fs121gkEDiaXK3x3no7b%2Bxt3i8Qmhtad5IJhm2NTbzGsjH4SBhnJeGsMiERVCuQs%2FxLmOvCEPC5XMoaAiRAO5%2BNtwsFSuNvjdN0k1zIF0qGiygPfD5cu89FTroq1s1Ga7Z%2FNy9B77DbbPD7POXyfDqmFus6IZFrUJQA6FgHaADxfj9WIBEhyeXeO8a0Z0nFGb2XsJNsDm2MWj5HCCnhFv25MpW2gUSyERCynOYQnrn2dNUIPVnGKgILOHVKqq9jt4F9Z7zPiJyz4sO%2F8HERW7F%2FLkiYMngl1zQiEqovlGBfg6P7Hyn6zihcGBs49aV0BzWuyUVmKLhdRUQnGMz%2BzQ8goV%2F0DnIIfEXBcmT%2BBnhbS4X1EteIGN8YB5cFWPE4xW0xHJDrk4akUIgA&X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=ASIA5IS4PDYFUJYKZP3N%2F20250807%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20250807T134829Z&X-Amz-Expires=43200&X-Amz-SignedHeaders=host&X-Amz-Signature=201c00085e12cdf9bcbe85060ed46d03aabab935d6b94b9e1b0c4bce8c207537"
@@ -51,4 +87,11 @@ def prerequisites
5187 retry_delay 5
5288 action :create_if_missing
5389 end
90+
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
96+ action_increase_poll_interval
5497end
0 commit comments