audit: ensure postgresql previous version exists.

This will avoid https://github.com/Homebrew/homebrew-core/issues/34879
in future.
This commit is contained in:
Mike McQuaid 2018-12-09 19:31:19 +00:00
parent 38493a35a2
commit f15f665b98
No known key found for this signature in database
GPG Key ID: 48A898132FD8EE70

View File

@ -527,6 +527,23 @@ module Homebrew
problem "keg_only reason should not end with a period."
end
def audit_postgresql
return unless formula.name == "postgresql"
major_version = formula.version
.to_s
.split(".")
.first
.to_i
previous_major_version = major_version - 1
previous_formula_name = "postgresql@#{previous_major_version}"
begin
Formula[previous_formula_name]
rescue FormulaUnavailableError
problem "Versioned #{previous_formula_name} must be created for " \
"`brew-postgresql-upgrade-database` and `pg_upgrade` to work."
end
end
def audit_versioned_keg_only
return unless @versioned_formula
return unless @core_tap