zulip-puppet-apply: Work around broken Puppet on Ubuntu 22.04.

Signed-off-by: Anders Kaseorg <anders@zulip.com>
This commit is contained in:
Anders Kaseorg 2022-04-29 16:07:55 -07:00 committed by Alex Vandiver
parent 814abf6764
commit 25c87cc7da
2 changed files with 9 additions and 0 deletions

7
scripts/lib/ruby3hack.rb Normal file
View File

@ -0,0 +1,7 @@
# Work around https://bugs.launchpad.net/ubuntu/+source/puppet/+bug/1969939.
require 'fileutils'
def FileUtils.symlink(src, dest, options = {}, **kwargs)
FileUtils.ln_s(src, dest, **options, **kwargs)
end

View File

@ -65,6 +65,8 @@ puppet_env["FACTER_zulip_scripts_path"] = scripts_path
# This is to suppress Puppet warnings with ruby 2.7. # This is to suppress Puppet warnings with ruby 2.7.
if (distro_info["ID"], distro_info["VERSION_ID"]) in [("ubuntu", "20.04")]: if (distro_info["ID"], distro_info["VERSION_ID"]) in [("ubuntu", "20.04")]:
puppet_env["RUBYOPT"] = "-W0" puppet_env["RUBYOPT"] = "-W0"
if (distro_info["ID"], distro_info["VERSION_ID"]) in [("ubuntu", "22.04")]:
puppet_env["RUBYOPT"] = "-r " + os.path.join(scripts_path, "lib", "ruby3hack.rb")
if not args.noop and not args.force: if not args.noop and not args.force:
# --noop does not work with --detailed-exitcodes; see https://tickets.puppetlabs.com/browse/PUP-686 # --noop does not work with --detailed-exitcodes; see https://tickets.puppetlabs.com/browse/PUP-686