File tree Expand file tree Collapse file tree 8 files changed +735
-0
lines changed
integration/targets/connection_proxmox_qm_remote Expand file tree Collapse file tree 8 files changed +735
-0
lines changed Original file line number Diff line number Diff line change
1
+ # Copyright (c) 2025 Nils Stein (@mietzen) <
[email protected] >
2
+ # Copyright (c) 2025 Ansible Project
3
+ # GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt)
4
+ # SPDX-License-Identifier: GPL-3.0-or-later
5
+
6
+ azp/posix/3
7
+ destructive
8
+ needs/root
9
+ needs/target/connection
10
+ skip/docker
11
+ skip/alpine
12
+ skip/macos
Original file line number Diff line number Diff line change
1
+ ---
2
+ # Copyright (c) 2025 Nils Stein (@mietzen) <[email protected] >
3
+ # Copyright (c) 2025 Ansible Project
4
+ # GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt)
5
+ # SPDX-License-Identifier: GPL-3.0-or-later
6
+
7
+ - hosts : localhost
8
+ gather_facts : true
9
+ serial : 1
10
+ tasks :
11
+ - name : Copy qm mock
12
+ copy :
13
+ src : files/qm
14
+ dest : /usr/sbin/qm
15
+ mode : ' 0755'
16
+ - name : Install paramiko
17
+ pip :
18
+ name : " paramiko>=3.0.0"
Original file line number Diff line number Diff line change
1
+ #! /usr/bin/env bash
2
+ # Copyright (c) 2025 Nils Stein (@mietzen) <[email protected] >
3
+ # Copyright (c) 2025 Ansible Project
4
+ # GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt)
5
+ # SPDX-License-Identifier: GPL-3.0-or-later
6
+
7
+ # Shell script to mock proxmox qm behaviour
8
+
9
+ >&2 echo " [DEBUG] INPUT: $@ "
10
+
11
+ pwd=" $( pwd) "
12
+
13
+ # Get quoted parts and restore quotes
14
+ declare -a cmd=()
15
+ for arg in " $@ " ; do
16
+ if [[ $arg =~ [[:space:]] ]]; then
17
+ arg=" '$arg '"
18
+ fi
19
+ cmd+=(" $arg " )
20
+ done
21
+
22
+ cmd=" ${cmd[@]: 3} "
23
+ vmid=" ${@: 2: 1} "
24
+ >&2 echo " [INFO] MOCKING: qm ${@: 1: 3} ${cmd} "
25
+ tmp_dir=" /tmp/ansible-remote/proxmox_qm_remote/integration_test/vm_${vmid} "
26
+ mkdir -p " $tmp_dir "
27
+ >&2 echo " [INFO] PWD: $tmp_dir "
28
+ >&2 echo " [INFO] CMD: ${cmd} "
29
+ cd " $tmp_dir "
30
+
31
+ eval " ${cmd} "
32
+
33
+ cd " $pwd "
Original file line number Diff line number Diff line change
1
+ ---
2
+ # Copyright (c) Ansible Project
3
+ # GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt)
4
+ # SPDX-License-Identifier: GPL-3.0-or-later
5
+
6
+ - hosts : " {{ target_hosts }}"
7
+ gather_facts : false
8
+ serial : 1
9
+ tasks :
10
+ - name : create file without content
11
+ copy :
12
+ content : " "
13
+ dest : " {{ remote_tmp }}/test_empty.txt"
14
+ force : no
15
+ mode : ' 0644'
16
+
17
+ - name : assert file without content exists
18
+ stat :
19
+ path : " {{ remote_tmp }}/test_empty.txt"
20
+ register : empty_file_stat
21
+
22
+ - name : verify file without content exists
23
+ assert :
24
+ that :
25
+ - empty_file_stat.stat.exists
26
+ fail_msg : " The file {{ remote_tmp }}/test_empty.txt does not exist."
27
+
28
+ - name : verify file without content is empty
29
+ assert :
30
+ that :
31
+ - empty_file_stat.stat.size == 0
32
+ fail_msg : " The file {{ remote_tmp }}/test_empty.txt is not empty."
Original file line number Diff line number Diff line change
1
+ #! /usr/bin/env bash
2
+ # Copyright (c) 2025 Nils Stein (@mietzen) <[email protected] >
3
+ # Copyright (c) 2025 Ansible Project
4
+ # GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt)
5
+ # SPDX-License-Identifier: GPL-3.0-or-later
6
+
7
+ set -eux
8
+
9
+ ANSIBLE_ROLES_PATH=../ \
10
+ ansible-playbook dependencies.yml -v " $@ "
11
+
12
+ ./test.sh " $@ "
13
+
14
+ ansible-playbook plugin-specific-tests.yml -i " ./test_connection.inventory" \
15
+ -e target_hosts=" proxmox_qm_remote" \
16
+ -e action_prefix= \
17
+ -e local_tmp=/tmp/ansible-local \
18
+ -e remote_tmp=/tmp/ansible-remote \
19
+ " $@ "
Original file line number Diff line number Diff line change
1
+ ../connection_posix/test.sh
Original file line number Diff line number Diff line change
1
+ # Copyright (c) 2025 Nils Stein (@mietzen) <
[email protected] >
2
+ # Copyright (c) 2025 Ansible Project
3
+ # GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt)
4
+ # SPDX-License-Identifier: GPL-3.0-or-later
5
+
6
+ [proxmox_qm_remote]
7
+ proxmox_qm_remote-pipelining ansible_ssh_pipelining=true
8
+ proxmox_qm_remote-no-pipelining ansible_ssh_pipelining=false
9
+ [proxmox_qm_remote:vars]
10
+ ansible_host=localhost
11
+ ansible_user=root
12
+ ansible_python_interpreter="{{ ansible_playbook_python }}"
13
+ ansible_connection=community.proxmox.proxmox_qm_remote
14
+ proxmox_vmid=123
You can’t perform that action at this time.
0 commit comments