Files
godot-website/_plugins/minify-assets.rb
Rémi Verschelde d30898ae00 Fix minify plugin relying on shell builtin (#1104)
Explicitly initialize a shell to have access to 'command' it's not an actual program.
2025-06-25 19:08:39 +02:00

20 lines
714 B
Ruby

require 'pathname'
# Minify assets after each build
Jekyll::Hooks.register :site, :post_write do
puts "Minifying assets"
# Project path
Pathname here = Pathname.new(Dir.pwd)
Pathname from = Pathname.new(File.join(Dir.pwd, "_site"))
Pathname to = Pathname.new(Dir.pwd)
# Attempt to minify using 'minify', fallback to 'gominify' if not present
`sh -c 'command -v minify'`
minify_command = $?.exitstatus != 0 ? 'gominify' : 'minify'
`sh -c 'command -v #{minify_command}'`
if $?.exitstatus != 0
puts "ERROR: Neither 'minify' nor 'gominify' is installed. Please install 'minify'."
exit 1
end
`#{minify_command} -r -o #{to.relative_path_from(here)} #{from.relative_path_from(here)}`
end