1
0
Fork 0
mirror of https://github.com/ansible-collections/community.general.git synced 2026-04-25 05:02:46 +00:00
community.general/tests/integration/targets/ansible_galaxy_install/tasks/main.yml
patchback[bot] a425d16e7c
[PR #11646/8d403dde backport][stable-12] ansible_galaxy_install: new param executable (#11651)
ansible_galaxy_install: new param executable (#11646)

* ansible_galaxy_install: new param executable

* add changelog frag

(cherry picked from commit 8d403dde5b)

Co-authored-by: Alexei Znamensky <103110+russoz@users.noreply.github.com>
2026-03-22 20:33:41 +01:00

183 lines
5 KiB
YAML

---
# Copyright (c) Ansible Project
# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt)
# SPDX-License-Identifier: GPL-3.0-or-later
###################################################
- name: Make directory install_c
ansible.builtin.file:
path: "{{ remote_tmp_dir }}/install_c"
state: directory
- name: Install collection netbox.netbox
community.general.ansible_galaxy_install:
type: collection
name: netbox.netbox
dest: "{{ remote_tmp_dir }}/install_c"
register: install_c0
- name: Assert collection netbox.netbox was installed
assert:
that:
- install_c0 is changed
- '"netbox.netbox" in install_c0.new_collections'
- name: Install collection netbox.netbox (again)
community.general.ansible_galaxy_install:
type: collection
name: netbox.netbox
dest: "{{ remote_tmp_dir }}/install_c"
register: install_c1
- name: Assert collection was not installed
assert:
that:
- install_c1 is not changed
###################################################
- name: Make directory install_r
ansible.builtin.file:
path: "{{ remote_tmp_dir }}/install_r"
state: directory
- name: Install role ansistrano.deploy
community.general.ansible_galaxy_install:
type: role
name: ansistrano.deploy
dest: "{{ remote_tmp_dir }}/install_r"
register: install_r0
- name: Assert collection ansistrano.deploy was installed
assert:
that:
- install_r0 is changed
- '"ansistrano.deploy" in install_r0.new_roles'
- name: Install role ansistrano.deploy (again)
community.general.ansible_galaxy_install:
type: role
name: ansistrano.deploy
dest: "{{ remote_tmp_dir }}/install_r"
register: install_r1
- name: Assert role was not installed
assert:
that:
- install_r1 is not changed
###################################################
- name: Set requirements file path
set_fact:
reqs_file: '{{ remote_tmp_dir }}/reqs.yaml'
- name: Copy requirements file
copy:
src: 'files/test.yml'
dest: '{{ reqs_file }}'
- name: Install from requirements file
community.general.ansible_galaxy_install:
type: both
requirements_file: "{{ reqs_file }}"
register: install_rq0
ignore_errors: true
- name: Assert requirements file was installed
assert:
that:
- install_rq0 is changed
- '"geerlingguy.java" in install_rq0.new_roles'
- '"geerlingguy.php_roles" in install_rq0.new_collections'
- name: Install from requirements file (again)
community.general.ansible_galaxy_install:
type: both
requirements_file: "{{ reqs_file }}"
register: install_rq1
ignore_errors: true
- name: Assert requirements file was not installed
assert:
that:
- install_rq1 is not changed
###################################################
- name: Make directory upgrade_c
ansible.builtin.file:
path: "{{ remote_tmp_dir }}/upgrade_c"
state: directory
- name: Install collection netbox.netbox 3.17.0
community.general.ansible_galaxy_install:
type: collection
name: netbox.netbox:3.17.0
dest: "{{ remote_tmp_dir }}/upgrade_c"
register: upgrade_c0
- name: Assert collection netbox.netbox was installed
assert:
that:
- upgrade_c0 is changed
- '"netbox.netbox" in upgrade_c0.new_collections'
- name: Upgrade collection netbox.netbox
community.general.ansible_galaxy_install:
state: latest
type: collection
name: netbox.netbox
dest: "{{ remote_tmp_dir }}/upgrade_c"
register: upgrade_c1
- name: Upgrade collection netbox.netbox (again)
community.general.ansible_galaxy_install:
state: latest
type: collection
name: netbox.netbox
dest: "{{ remote_tmp_dir }}/upgrade_c"
register: upgrade_c2
- name: Assert collection was not installed
assert:
that:
- upgrade_c1 is changed
- upgrade_c2 is not changed
###################################################
- name: Find ansible-galaxy executable path
ansible.builtin.command: which ansible-galaxy
register: galaxy_which
changed_when: false
- name: Make directory exec_c
ansible.builtin.file:
path: "{{ remote_tmp_dir }}/exec_c"
state: directory
- name: Install collection using explicit executable path
community.general.ansible_galaxy_install:
type: collection
name: netbox.netbox
dest: "{{ remote_tmp_dir }}/exec_c"
executable: "{{ galaxy_which.stdout }}"
register: exec_c0
- name: Assert collection was installed using explicit executable
assert:
that:
- exec_c0 is changed
- '"netbox.netbox" in exec_c0.new_collections'
- exec_c0.executable == galaxy_which.stdout
- name: Fail to install collection using bad executable path
community.general.ansible_galaxy_install:
type: collection
name: netbox.netbox
dest: "{{ remote_tmp_dir }}/exec_c"
executable: /nonexistent/ansible-galaxy
register: exec_c_fail
ignore_errors: true
- name: Assert bad executable caused failure
assert:
that:
- exec_c_fail is failed