mirror of
https://github.com/ansible-collections/community.general.git
synced 2025-04-08 03:30:32 -07:00
[PR #9546/114deae3 backport][stable-10] Fix homebrew tap name handling (#9569)
Fix homebrew tap name handling (#9546)
* Add failing test
* Use fully qualified names
* Add changelog fragment
* Remove unnecessary initial cleanup
* Fix tests/integration/targets/homebrew/tasks/formulae.yml
Co-authored-by: Felix Fontein <felix@fontein.de>
---------
Co-authored-by: Felix Fontein <felix@fontein.de>
(cherry picked from commit 114deae3e4
)
Co-authored-by: Thibaut Decombe <68703331+UnknownPlatypus@users.noreply.github.com>
This commit is contained in:
parent
e32515889b
commit
2314db59c7
3 changed files with 27 additions and 1 deletions
|
@ -0,0 +1,2 @@
|
||||||
|
bugfixes:
|
||||||
|
- homebrew - fix incorrect handling of homebrew modules when a tap is requested (https://github.com/ansible-collections/community.general/pull/9546, https://github.com/ansible-collections/community.general/issues/9533).
|
|
@ -385,7 +385,7 @@ class Homebrew(object):
|
||||||
self.outdated_packages.add(package_name)
|
self.outdated_packages.add(package_name)
|
||||||
|
|
||||||
def _extract_package_name(self, package_detail, is_cask):
|
def _extract_package_name(self, package_detail, is_cask):
|
||||||
canonical_name = package_detail["token"] if is_cask else package_detail["name"] # For ex: 'sqlite'
|
canonical_name = package_detail["full_token"] if is_cask else package_detail["full_name"] # For ex: 'sqlite'
|
||||||
all_valid_names = set(package_detail.get("aliases", [])) # For ex: {'sqlite3'}
|
all_valid_names = set(package_detail.get("aliases", [])) # For ex: {'sqlite3'}
|
||||||
all_valid_names.add(canonical_name)
|
all_valid_names.add(canonical_name)
|
||||||
|
|
||||||
|
|
|
@ -363,3 +363,27 @@
|
||||||
- "reinstall_result.msg == 'Package already installed: sqlite3'"
|
- "reinstall_result.msg == 'Package already installed: sqlite3'"
|
||||||
- "reinstall_result.changed_pkgs == []"
|
- "reinstall_result.changed_pkgs == []"
|
||||||
- "reinstall_result.unchanged_pkgs == ['sqlite3']"
|
- "reinstall_result.unchanged_pkgs == ['sqlite3']"
|
||||||
|
|
||||||
|
# Test with homebrew tap
|
||||||
|
- block:
|
||||||
|
- name: Tap terraform homebrew repository
|
||||||
|
community.general.homebrew_tap:
|
||||||
|
name: hashicorp/tap
|
||||||
|
become: true
|
||||||
|
become_user: "{{ brew_stat.stat.pw_name }}"
|
||||||
|
|
||||||
|
- name: Install homebrew tap
|
||||||
|
community.general.homebrew:
|
||||||
|
name: hashicorp/tap/terraform
|
||||||
|
state: latest
|
||||||
|
update_homebrew: false
|
||||||
|
register: terraform_install_result
|
||||||
|
become: true
|
||||||
|
become_user: "{{ brew_stat.stat.pw_name }}"
|
||||||
|
|
||||||
|
- assert:
|
||||||
|
that:
|
||||||
|
- terraform_install_result is changed
|
||||||
|
- "terraform_install_result.msg == 'Package upgraded: hashicorp/tap/terraform'"
|
||||||
|
- "terraform_install_result.changed_pkgs == ['hashicorp/tap/terraform']"
|
||||||
|
- "terraform_install_result.unchanged_pkgs == []"
|
||||||
|
|
Loading…
Add table
Reference in a new issue