mirror of
https://github.com/ansible-collections/community.general.git
synced 2025-06-29 03:30:22 -07:00
[PR #10013/4b9373f6 backport][stable-10] Homebrew: Emit a useful error message if brew info reports a package tap is null. (#10040)
Homebrew: Emit a useful error message if brew info reports a package tap is null. (#10013)
* Fix #10012.
Homebrew: Emit a useful error message if a package tap is null. This can happen if an installed package is subsequently removed from the tap (e.g. it is withdrawn by homebrew).
* Added changelogs fragment for PR 10013
* Do not raise error when tap is null in package_detail
pylint: remove trailing whitespace
* Minor: Update plugins/modules/homebrew.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* Minor: Update changelogs/fragments/10012-improve-error-handling-homebrew-missing-tap.yml
Co-authored-by: Alexei Znamensky <103110+russoz@users.noreply.github.com>
* Update plugins/modules/homebrew.py
Co-authored-by: Felix Fontein <felix@fontein.de>
---------
Co-authored-by: Felix Fontein <felix@fontein.de>
Co-authored-by: Alexei Znamensky <103110+russoz@users.noreply.github.com>
(cherry picked from commit 4b9373f694
)
Co-authored-by: brad2014 <brad2014@users.noreply.github.com>
This commit is contained in:
parent
8bce7601bc
commit
0310c7875d
2 changed files with 10 additions and 3 deletions
|
@ -399,10 +399,15 @@ class Homebrew(object):
|
|||
name = package_detail["name"]
|
||||
full_name = package_detail["full_name"]
|
||||
|
||||
tapped_name = package_detail["tap"] + "/" + name
|
||||
# Issue https://github.com/ansible-collections/community.general/issues/9803:
|
||||
# name can include the tap as a prefix, in order to disambiguate,
|
||||
# e.g. casks from identically named formulae.
|
||||
#
|
||||
# Issue https://github.com/ansible-collections/community.general/issues/10012:
|
||||
# package_detail["tap"] is None if package is no longer available.
|
||||
tapped_name = [package_detail["tap"] + "/" + name] if package_detail["tap"] else []
|
||||
aliases = package_detail.get("aliases", [])
|
||||
|
||||
package_names = set([name, full_name, tapped_name] + aliases)
|
||||
package_names = set([name, full_name] + tapped_name + aliases)
|
||||
|
||||
# Finally, identify which of all those package names was the one supplied by the user.
|
||||
package_names = package_names & set(self.packages)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue