Add GitHub Actions warning/error annotations for deprecations/disables.

This should make these messages, particular warnings, more obvious to
GitHub Actions users.

There's an argument perhaps we should do this more broadly for all
warning/error messages but: this feels like a good start.
This commit is contained in:
Mike McQuaid 2024-03-14 09:49:12 +00:00
parent a7d77485f1
commit dcaa69a2dc
No known key found for this signature in database
3 changed files with 11 additions and 2 deletions

View File

@ -130,11 +130,16 @@ on_request: true)
deprecate_disable_type = DeprecateDisable.type(@cask)
return if deprecate_disable_type.nil?
message = DeprecateDisable.message(@cask)
message_full = "#{@cask.token} has been #{message}"
case deprecate_disable_type
when :deprecated
opoo "#{@cask.token} has been #{DeprecateDisable.message(@cask)}"
puts "::warning #{message_full}" if ENV["GITHUB_ACTIONS"]
opoo message_full
when :disabled
raise CaskCannotBeInstalledError.new(@cask, DeprecateDisable.message(@cask))
puts "::error #{message_full}" if ENV["GITHUB_ACTIONS"]
raise CaskCannotBeInstalledError.new(@cask, message)
end
end

View File

@ -147,10 +147,12 @@ module Kernel
disable = true if disable_for_developers && Homebrew::EnvConfig.developer?
if disable || Homebrew.raise_deprecation_exceptions?
puts "::error #{message}" if ENV["GITHUB_ACTIONS"]
exception = MethodDeprecatedError.new(message)
exception.set_backtrace(backtrace)
raise exception
elsif !Homebrew.auditing?
puts "::warning #{message}" if ENV["GITHUB_ACTIONS"]
opoo message
end
end

View File

@ -206,8 +206,10 @@ class FormulaInstaller
case deprecate_disable_type
when :deprecated
puts "::warning #{message}" if ENV["GITHUB_ACTIONS"]
opoo message
when :disabled
puts "::error #{message}" if ENV["GITHUB_ACTIONS"]
raise CannotInstallFormulaError, message
end
end