Skip to content
Snippets Groups Projects
Commit 55ef924e authored by Raymond Wanyoike's avatar Raymond Wanyoike
Browse files

cask reinstall: download and verify cask before uninstall

Closes: caskroom/homebrew-cask#27075
parent 697340ff
No related branches found
No related tags found
No related merge requests found
......@@ -7,6 +7,24 @@ module Hbc
begin
cask = Hbc.load(cask_token)
installer = Installer.new(cask,
force: force,
skip_cask_deps: skip_cask_deps,
require_sha: require_sha)
installer.print_caveats
# Download
begin
installer.satisfy_dependencies
installer.verify_has_sha if @require_sha && !@force
installer.download
installer.verify
rescue StandardError => e
installer.purge_versioned_files
raise e
end
# Uninstall
if cask.installed?
# use copy of cask for uninstallation to avoid 'No such file or directory' bug
installed_cask = cask
......@@ -26,10 +44,18 @@ module Hbc
Installer.new(installed_cask, force: true).uninstall
end
Installer.new(cask,
force: force,
skip_cask_deps: skip_cask_deps,
require_sha: require_sha).install
# Reinstall
begin
installer.extract_primary_container
installer.install_artifacts
installer.save_caskfile
installer.enable_accessibility_access
rescue StandardError => e
installer.purge_versioned_files
raise e
end
puts installer.summary
count += 1
rescue CaskUnavailableError => e
warn_unavailable_with_suggestion cask_token, e
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment