tests: Add centos 8; debian 10, 11; ubuntu 16.04, 18.04, 20.04 test images

This commit is contained in:
Alex Willmer 2021-02-21 20:52:58 +00:00
parent 6bf58c3cfb
commit ac7505d624
9 changed files with 107 additions and 3 deletions

View File

@ -15,10 +15,18 @@
- "out.failed"
- "out.results[0].failed"
- "out.results[0].msg.startswith('MODULE FAILURE')"
- "out.results[0].module_stdout.startswith('/bin/sh: ')"
# On Ubuntu 16.04 /bin/sh is dash 0.5.8. It treats custom_binary_single_null
# as a valid executable. There's no error message, and rc == 0.
- |
out.results[0].module_stdout.endswith('custom_binary_single_null: cannot execute binary file\r\n') or
out.results[0].module_stdout.endswith('custom_binary_single_null: Exec format error\r\n')
out.results[0].module_stdout.startswith('/bin/sh: ')
or (ansible_facts.distribution == 'Ubuntu' and ansible_facts.distribution_version == '16.04')
- |
out.results[0].module_stdout.endswith((
'custom_binary_single_null: cannot execute binary file\r\n',
'custom_binary_single_null: Exec format error\r\n',
'custom_binary_single_null: cannot execute binary file: Exec format error\r\n',
))
or (ansible_facts.distribution == 'Ubuntu' and ansible_facts.distribution_version == '16.04')
# Can't test this: Mitogen returns 126, 2.5.x returns 126, 2.4.x discarded the

View File

@ -42,11 +42,19 @@
update_cache: true
when: ansible_pkg_mgr == 'yum'
- name: Ensure requisite dnf packages are installed
dnf:
name: "{{ common_packages + packages }}"
state: present
update_cache: true
when: ansible_pkg_mgr == 'dnf'
- name: Clean up package cache
vars:
clean_command:
apt: apt-get clean
yum: yum clean all
dnf: dnf clean all
command: "{{ clean_command[ansible_pkg_mgr] }}"
args:
warn: false
@ -58,6 +66,11 @@
- /var/lib/apt/lists
when: ansible_pkg_mgr == 'apt'
- name: Configure /usr/bin/python
command: alternatives --set python /usr/bin/python3.8
args:
creates: /usr/bin/python
when: inventory_hostname in ["centos8"]
- name: Enable UTF-8 locale on Debian
copy:
@ -173,6 +186,15 @@
regexp: '.*session.*required.*pam_loginuid.so'
line: session optional pam_loginuid.so
# Normally this would be removed by systemd-networkd-wait-online. If
# present ssh works only for root. The message displayed is
# > System is booting up. Unprivileged users are not permitted to log in
# > yet. Please come back later. For technical details, see pam_nologin(8).
- name: Remove login lockout
file:
path: /run/nologin
state: absent
- name: Install convenience script for running an straced Python
copy:
mode: 'u+rwx,go=rx'

View File

@ -0,0 +1,10 @@
bootstrap_packages: [python3]
docker_base: centos:8
packages:
- perl-JSON
- python2-virtualenv
- python3-virtualenv
- python36
- python38

View File

@ -0,0 +1,11 @@
bootstrap_packages: [python]
docker_base: debian:10
packages:
- libjson-perl
- locales
- python-virtualenv
- python3
- python3-virtualenv
- virtualenv

View File

@ -0,0 +1,11 @@
bootstrap_packages: [python3, python3-apt]
docker_base: debian:bullseye
packages:
- libjson-perl
- locales
- python-is-python3
- python2
- python3-virtualenv
- virtualenv

View File

@ -0,0 +1,11 @@
bootstrap_packages: [python]
docker_base: ubuntu:16.04
packages:
- libjson-perl
- locales
- python-virtualenv
- python3
- python3-virtualenv
- virtualenv

View File

@ -0,0 +1,11 @@
bootstrap_packages: [python]
docker_base: ubuntu:18.04
packages:
- libjson-perl
- locales
- python-virtualenv
- python3
- python3-virtualenv
- virtualenv

View File

@ -0,0 +1,11 @@
bootstrap_packages: [python3]
docker_base: ubuntu:20.04
packages:
- libjson-perl
- locales
- python-is-python3
- python2
- python3-virtualenv
- virtualenv

View File

@ -1,6 +1,7 @@
[all:children]
centos
debian
ubuntu
[all:vars]
ansible_connection = docker
@ -9,6 +10,14 @@ ansible_connection = docker
centos5
centos6
centos7
centos8
[debian]
debian9
debian10
debian11
[ubuntu]
ubuntu1604
ubuntu1804
ubuntu2004