summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSam Doran <sdoran@redhat.com>2021-01-11 17:45:58 -0500
committerGitHub <noreply@github.com>2021-01-11 16:45:58 -0600
commitabc6658ac2eda6fc77bf65e4b8fa2b8933f6fd52 (patch)
treee103d0f5d0380d66217011df8e611e3e1770bf6c
parentb4b1bf993269e32056bc5d94c75641757df9d466 (diff)
downloadansible-abc6658ac2eda6fc77bf65e4b8fa2b8933f6fd52.tar.gz
[stable-2.10] Add macOS 11 to CI (#72622) (#73180)
* [stable-2.10] Add macOS 11 to CI (#72622) * Fix connection_paramiko_ssh test for macOS 11 * Update Azure Pipelines config * Add changelog (cherry picked from commit a7e834071c) Co-authored-by: Sam Doran <sdoran@redhat.com> * Prefer venv for tests * Update pip integration test to use venv on py3. (cherry picked from commit 456e9b7a33d7a6f24b1e87b7785ba46980471197) Co-authored-by: Matt Clay <matt@mystile.com>
-rw-r--r--.azure-pipelines/azure-pipelines.yml4
-rw-r--r--changelogs/fragments/ci-add-macos-11.yml2
-rwxr-xr-xtest/integration/targets/collections_runtime_pythonpath/runme.sh2
-rwxr-xr-xtest/integration/targets/delegate_to/runme.sh1
-rwxr-xr-xtest/integration/targets/filter_urls/runme.sh1
-rwxr-xr-xtest/integration/targets/groupby_filter/runme.sh1
-rwxr-xr-xtest/integration/targets/lookup_password/runme.sh1
-rwxr-xr-xtest/integration/targets/old_style_cache_plugins/runme.sh1
-rw-r--r--test/integration/targets/pip/tasks/main.yml34
-rw-r--r--test/integration/targets/pip/tasks/pip.yml4
-rw-r--r--test/integration/targets/setup_paramiko/install-Darwin-python-3.yml (renamed from test/integration/targets/setup_paramiko/install-MacOSX-10-python-3.yml)0
-rw-r--r--test/integration/targets/setup_paramiko/install.yml1
-rw-r--r--test/integration/targets/setup_paramiko/setup.sh1
-rw-r--r--test/integration/targets/setup_paramiko/uninstall-Darwin-python-3.yml (renamed from test/integration/targets/setup_paramiko/uninstall-MacOSX-10-python-3.yml)0
-rw-r--r--test/integration/targets/setup_paramiko/uninstall.yml1
-rwxr-xr-xtest/integration/targets/template_jinja2_latest/runme.sh1
-rwxr-xr-xtest/integration/targets/vault/runme.sh4
-rw-r--r--test/lib/ansible_test/_data/completion/remote.txt1
18 files changed, 42 insertions, 18 deletions
diff --git a/.azure-pipelines/azure-pipelines.yml b/.azure-pipelines/azure-pipelines.yml
index b5795d0e9b..aec8e7fada 100644
--- a/.azure-pipelines/azure-pipelines.yml
+++ b/.azure-pipelines/azure-pipelines.yml
@@ -87,8 +87,8 @@ stages:
- template: templates/matrix.yml
parameters:
targets:
- - name: macOS 10.15
- test: macos/10.15
+ - name: macOS 11.1
+ test: macos/11.1
- name: RHEL 7.9
test: rhel/7.9
- name: RHEL 8.2
diff --git a/changelogs/fragments/ci-add-macos-11.yml b/changelogs/fragments/ci-add-macos-11.yml
new file mode 100644
index 0000000000..7843014922
--- /dev/null
+++ b/changelogs/fragments/ci-add-macos-11.yml
@@ -0,0 +1,2 @@
+minor_changes:
+ - ansible-test - add macOS 11.1 as a remote target (https://github.com/ansible/ansible/pull/72622)
diff --git a/test/integration/targets/collections_runtime_pythonpath/runme.sh b/test/integration/targets/collections_runtime_pythonpath/runme.sh
index 654104a1e2..41236e8b92 100755
--- a/test/integration/targets/collections_runtime_pythonpath/runme.sh
+++ b/test/integration/targets/collections_runtime_pythonpath/runme.sh
@@ -5,7 +5,7 @@ set -eux -o pipefail
export PIP_DISABLE_PIP_VERSION_CHECK=1
-
+export ANSIBLE_TEST_PREFER_VENV=1
source virtualenv.sh
diff --git a/test/integration/targets/delegate_to/runme.sh b/test/integration/targets/delegate_to/runme.sh
index 697fc3930f..4405955201 100755
--- a/test/integration/targets/delegate_to/runme.sh
+++ b/test/integration/targets/delegate_to/runme.sh
@@ -63,6 +63,7 @@ ansible-playbook has_hostvars.yml -i inventory -v "$@"
# test ansible_x_interpreter
# python
+export ANSIBLE_TEST_PREFER_VENV=1
source virtualenv.sh
(
cd "${OUTPUT_DIR}"/venv/bin
diff --git a/test/integration/targets/filter_urls/runme.sh b/test/integration/targets/filter_urls/runme.sh
index f6460acb33..9362a385df 100755
--- a/test/integration/targets/filter_urls/runme.sh
+++ b/test/integration/targets/filter_urls/runme.sh
@@ -6,6 +6,7 @@ export ANSIBLE_ROLES_PATH=../
ansible-playbook runme.yml "$@"
+export ANSIBLE_TEST_PREFER_VENV=1
source virtualenv.sh
# This is necessary for installing Jinja 2.6. We need this because Jinja 2.6
diff --git a/test/integration/targets/groupby_filter/runme.sh b/test/integration/targets/groupby_filter/runme.sh
index e5099aa1b7..07894b0f2c 100755
--- a/test/integration/targets/groupby_filter/runme.sh
+++ b/test/integration/targets/groupby_filter/runme.sh
@@ -2,6 +2,7 @@
set -eux
+export ANSIBLE_TEST_PREFER_VENV=1
source virtualenv.sh
pip install -U jinja2==2.9.4
diff --git a/test/integration/targets/lookup_password/runme.sh b/test/integration/targets/lookup_password/runme.sh
index a3637a7e22..ac2c1704c5 100755
--- a/test/integration/targets/lookup_password/runme.sh
+++ b/test/integration/targets/lookup_password/runme.sh
@@ -2,6 +2,7 @@
set -eux
+export ANSIBLE_TEST_PREFER_VENV=1
source virtualenv.sh
# Requirements have to be installed prior to running ansible-playbook
diff --git a/test/integration/targets/old_style_cache_plugins/runme.sh b/test/integration/targets/old_style_cache_plugins/runme.sh
index 13911bd55b..86d2433b80 100755
--- a/test/integration/targets/old_style_cache_plugins/runme.sh
+++ b/test/integration/targets/old_style_cache_plugins/runme.sh
@@ -2,6 +2,7 @@
set -eux
+export ANSIBLE_TEST_PREFER_VENV=1
source virtualenv.sh
# Run test if dependencies are installed
diff --git a/test/integration/targets/pip/tasks/main.yml b/test/integration/targets/pip/tasks/main.yml
index 05879c18a9..c0a36c432c 100644
--- a/test/integration/targets/pip/tasks/main.yml
+++ b/test/integration/targets/pip/tasks/main.yml
@@ -1,20 +1,30 @@
# Current pip unconditionally uses md5.
# We can re-enable if pip switches to a different hash or allows us to not check md5.
-- name: find virtualenv command
- command: "which virtualenv virtualenv-{{ ansible_python.version.major }}.{{ ansible_python.version.minor }}"
- register: command
- ignore_errors: true
+- name: Python 2
+ when: ansible_python.version.major == 2
+ block:
+ - name: find virtualenv command
+ command: "which virtualenv virtualenv-{{ ansible_python.version.major }}.{{ ansible_python.version.minor }}"
+ register: command
+ ignore_errors: true
-- name: is virtualenv available to python -m
- command: '{{ ansible_python_interpreter }} -m virtualenv'
- register: python_m
- when: not command.stdout_lines
- failed_when: python_m.rc != 2
+ - name: is virtualenv available to python -m
+ command: '{{ ansible_python_interpreter }} -m virtualenv'
+ register: python_m
+ when: not command.stdout_lines
+ failed_when: python_m.rc != 2
-- name: remember selected virtualenv command
- set_fact:
- virtualenv: "{{ command.stdout_lines[0] if command is successful else ansible_python_interpreter ~ ' -m virtualenv' }}"
+ - name: remember selected virtualenv command
+ set_fact:
+ virtualenv: "{{ command.stdout_lines[0] if command is successful else ansible_python_interpreter ~ ' -m virtualenv' }}"
+
+- name: Python 3+
+ when: ansible_python.version.major > 2
+ block:
+ - name: remember selected virtualenv command
+ set_fact:
+ virtualenv: "{{ ansible_python_interpreter ~ ' -m venv' }}"
- block:
- name: install git, needed for repo installs
diff --git a/test/integration/targets/pip/tasks/pip.yml b/test/integration/targets/pip/tasks/pip.yml
index 6281bbe80c..572c7b6f31 100644
--- a/test/integration/targets/pip/tasks/pip.yml
+++ b/test/integration/targets/pip/tasks/pip.yml
@@ -521,7 +521,7 @@
### test virtualenv_command begin ###
- name: Test virtualenv command with arguments
- when: "ansible_system == 'Linux'"
+ when: ansible_python.version.major == 2
block:
- name: make sure the virtualenv does not exist
file:
@@ -533,7 +533,7 @@
pip:
name: "{{ pip_test_package }}"
virtualenv: "{{ output_dir }}/pipenv"
- virtualenv_command: "virtualenv --verbose"
+ virtualenv_command: "{{ command.stdout_lines[0] | basename }} --verbose"
state: present
register: version13
diff --git a/test/integration/targets/setup_paramiko/install-MacOSX-10-python-3.yml b/test/integration/targets/setup_paramiko/install-Darwin-python-3.yml
index a156f8066a..a156f8066a 100644
--- a/test/integration/targets/setup_paramiko/install-MacOSX-10-python-3.yml
+++ b/test/integration/targets/setup_paramiko/install-Darwin-python-3.yml
diff --git a/test/integration/targets/setup_paramiko/install.yml b/test/integration/targets/setup_paramiko/install.yml
index 194bd51f80..e98abe33be 100644
--- a/test/integration/targets/setup_paramiko/install.yml
+++ b/test/integration/targets/setup_paramiko/install.yml
@@ -13,5 +13,6 @@
with_first_found:
- "install-{{ ansible_distribution }}-{{ ansible_distribution_major_version }}-python-{{ ansible_python.version.major }}.yml"
- "install-{{ ansible_os_family }}-{{ ansible_distribution_major_version }}-python-{{ ansible_python.version.major }}.yml"
+ - "install-{{ ansible_os_family }}-python-{{ ansible_python.version.major }}.yml"
- "install-python-{{ ansible_python.version.major }}.yml"
- "install-fail.yml"
diff --git a/test/integration/targets/setup_paramiko/setup.sh b/test/integration/targets/setup_paramiko/setup.sh
index 64b935cdd8..8c4f6f1c77 100644
--- a/test/integration/targets/setup_paramiko/setup.sh
+++ b/test/integration/targets/setup_paramiko/setup.sh
@@ -3,6 +3,7 @@
set -eux
+export ANSIBLE_TEST_PREFER_VENV=1
source virtualenv.sh # for pip installs, if needed, otherwise unused
ansible-playbook ../setup_paramiko/install.yml -i ../setup_paramiko/inventory "$@"
trap 'ansible-playbook ../setup_paramiko/uninstall.yml -i ../setup_paramiko/inventory "$@"' EXIT
diff --git a/test/integration/targets/setup_paramiko/uninstall-MacOSX-10-python-3.yml b/test/integration/targets/setup_paramiko/uninstall-Darwin-python-3.yml
index 69a68e4209..69a68e4209 100644
--- a/test/integration/targets/setup_paramiko/uninstall-MacOSX-10-python-3.yml
+++ b/test/integration/targets/setup_paramiko/uninstall-Darwin-python-3.yml
diff --git a/test/integration/targets/setup_paramiko/uninstall.yml b/test/integration/targets/setup_paramiko/uninstall.yml
index 46a16d913a..48ff68e6f6 100644
--- a/test/integration/targets/setup_paramiko/uninstall.yml
+++ b/test/integration/targets/setup_paramiko/uninstall.yml
@@ -10,6 +10,7 @@
with_first_found:
- "uninstall-{{ ansible_distribution }}-{{ ansible_distribution_major_version }}-python-{{ ansible_python.version.major }}.yml"
- "uninstall-{{ ansible_os_family }}-{{ ansible_distribution_major_version }}-python-{{ ansible_python.version.major }}.yml"
+ - "uninstall-{{ ansible_os_family }}-python-{{ ansible_python.version.major }}.yml"
- "uninstall-{{ ansible_pkg_mgr }}-python-{{ ansible_python.version.major }}.yml"
- "uninstall-{{ ansible_pkg_mgr }}.yml"
- "uninstall-fail.yml"
diff --git a/test/integration/targets/template_jinja2_latest/runme.sh b/test/integration/targets/template_jinja2_latest/runme.sh
index 6a20eb5dc4..d6a09677e0 100755
--- a/test/integration/targets/template_jinja2_latest/runme.sh
+++ b/test/integration/targets/template_jinja2_latest/runme.sh
@@ -2,6 +2,7 @@
set -eux
+export ANSIBLE_TEST_PREFER_VENV=1
source virtualenv.sh
pip install -U -r requirements.txt
diff --git a/test/integration/targets/vault/runme.sh b/test/integration/targets/vault/runme.sh
index e3b21d7f57..197095bce5 100755
--- a/test/integration/targets/vault/runme.sh
+++ b/test/integration/targets/vault/runme.sh
@@ -1,6 +1,8 @@
#!/usr/bin/env bash
set -euvx
+
+export ANSIBLE_TEST_PREFER_VENV=1
source virtualenv.sh
@@ -521,4 +523,4 @@ ansible-playbook -i ../../inventory -v "$@" --vault-password-file vault-password
# Ensure we don't leave unencrypted temp files dangling
ansible-playbook -v "$@" --vault-password-file vault-password test_dangling_temp.yml
-ansible-playbook "$@" --vault-password-file vault-password single_vault_as_string.yml \ No newline at end of file
+ansible-playbook "$@" --vault-password-file vault-password single_vault_as_string.yml
diff --git a/test/lib/ansible_test/_data/completion/remote.txt b/test/lib/ansible_test/_data/completion/remote.txt
index 109a80883a..dea4367b66 100644
--- a/test/lib/ansible_test/_data/completion/remote.txt
+++ b/test/lib/ansible_test/_data/completion/remote.txt
@@ -2,6 +2,7 @@ freebsd/11.1 python=2.7,3.6 python_dir=/usr/local/bin
freebsd/12.1 python=3.6,2.7 python_dir=/usr/local/bin
osx/10.11 python=2.7 python_dir=/usr/local/bin
macos/10.15 python=3.8 python_dir=/usr/local/bin
+macos/11.1 python=3.9 python_dir=/usr/local/bin
rhel/7.6 python=2.7
rhel/7.8 python=2.7
rhel/7.9 python=2.7