diff --git a/.azure-pipelines/azure-pipelines.yml b/.azure-pipelines/azure-pipelines.yml index f9fa0a2fd0a..704ced5e4dc 100644 --- a/.azure-pipelines/azure-pipelines.yml +++ b/.azure-pipelines/azure-pipelines.yml @@ -98,8 +98,8 @@ stages: test: rhel/8.5@3.8 - name: RHEL 9.0b test: rhel/9.0b - - name: FreeBSD 12.2 - test: freebsd/12.2 + - name: FreeBSD 12.3 + test: freebsd/12.3 - name: FreeBSD 13.0 test: freebsd/13.0 groups: diff --git a/changelogs/fragments/ansible-test-freebsd-12.3.yaml b/changelogs/fragments/ansible-test-freebsd-12.3.yaml new file mode 100644 index 00000000000..677a7d3eccc --- /dev/null +++ b/changelogs/fragments/ansible-test-freebsd-12.3.yaml @@ -0,0 +1,2 @@ +minor_changes: + - ansible-test - Add support for remote testing of FreeBSD 12.3. diff --git a/test/lib/ansible_test/_data/completion/remote.txt b/test/lib/ansible_test/_data/completion/remote.txt index 152b672e35e..02ee9a66e40 100644 --- a/test/lib/ansible_test/_data/completion/remote.txt +++ b/test/lib/ansible_test/_data/completion/remote.txt @@ -1,4 +1,5 @@ freebsd/12.2 python=3.7,2.7,3.8 python_dir=/usr/local/bin provider=aws +freebsd/12.3 python=3.8 python_dir=/usr/local/bin provider=aws freebsd/13.0 python=3.7,2.7,3.8,3.9 python_dir=/usr/local/bin provider=aws freebsd python_dir=/usr/local/bin provider=aws macos/11.1 python=3.9 python_dir=/usr/local/bin provider=parallels diff --git a/test/lib/ansible_test/_util/target/setup/bootstrap.sh b/test/lib/ansible_test/_util/target/setup/bootstrap.sh index a94cccebe7d..95fcac6181c 100644 --- a/test/lib/ansible_test/_util/target/setup/bootstrap.sh +++ b/test/lib/ansible_test/_util/target/setup/bootstrap.sh @@ -127,38 +127,35 @@ bootstrap_remote_freebsd() " if [ "${controller}" ]; then + jinja2_pkg="py${python_package_version}-jinja2" + cryptography_pkg="py${python_package_version}-cryptography" + pyyaml_pkg="py${python_package_version}-yaml" + # Declare platform/python version combinations which do not have supporting OS packages available. # For these combinations ansible-test will use pip to install the requirements instead. case "${platform_version}/${python_version}" in - "11.4/3.8") - have_os_packages="" - ;; "12.2/3.8") - have_os_packages="" + jinja2_pkg="" # not available + cryptography_pkg="" # not available + pyyaml_pkg="" # not available ;; "13.0/3.8") - have_os_packages="" + jinja2_pkg="" # not available + cryptography_pkg="" # not available + pyyaml_pkg="" # not available ;; "13.0/3.9") - have_os_packages="" - ;; - *) - have_os_packages="yes" + jinja2_pkg="" # not available + cryptography_pkg="" # not available + pyyaml_pkg="" # not available ;; esac - # Jinja2 is not installed with an OS package since the provided version is too old. - # PyYAML is never installed with an OS package since it does not include libyaml support. - # Instead, ansible-test will install them using pip. - if [ "${have_os_packages}" ]; then - cryptography_pkg="py${python_package_version}-cryptography" - else - cryptography_pkg="" - fi - packages=" ${packages} libyaml + ${pyyaml_pkg} + ${jinja2_pkg} ${cryptography_pkg} " fi