import sources
This commit is contained in:
parent
a50f19d506
commit
e61afc56d6
3
.gitignore
vendored
3
.gitignore
vendored
@ -1,2 +1 @@
|
||||
SOURCES/clutter-1.26.2.tar.xz
|
||||
/clutter-1.26.2.tar.xz
|
||||
/clutter-1.*.tar.xz
|
||||
|
34
tests/roles/gnome-desktop-testing-role/README.md
Normal file
34
tests/roles/gnome-desktop-testing-role/README.md
Normal file
@ -0,0 +1,34 @@
|
||||
gnome-desktop-testing-role
|
||||
==========================
|
||||
|
||||
This ansible role is to make it easy to leverage gnome installed tests (via the gnome-desktop-testing module)
|
||||
|
||||
Requirements
|
||||
------------
|
||||
Xvfb
|
||||
|
||||
If gnome-desktop-testing isn't installed it will be built from version control.
|
||||
|
||||
Role Variables
|
||||
--------------
|
||||
The variable installed_test_name is used to describe the name of the installed tests to run.
|
||||
(the basename of the directory in /usr/share/installed-tests)
|
||||
|
||||
Dependencies
|
||||
------------
|
||||
standard-test-roles
|
||||
|
||||
Example Playbook
|
||||
----------------
|
||||
Including an example of how to use your role (for instance, with variables passed in as parameters) is always nice for users too:
|
||||
|
||||
- hosts: localhost
|
||||
roles:
|
||||
- role: gnome-desktop-testing-role
|
||||
test_name: mutter
|
||||
tags:
|
||||
- classic
|
||||
|
||||
License
|
||||
-------
|
||||
BSD
|
6
tests/roles/gnome-desktop-testing-role/defaults/main.yml
Normal file
6
tests/roles/gnome-desktop-testing-role/defaults/main.yml
Normal file
@ -0,0 +1,6 @@
|
||||
role_pkgs_req:
|
||||
- rsync
|
||||
- xorg-x11-server-Xvfb
|
||||
- dbus-daemon
|
||||
- sudo
|
||||
- tmux
|
4
tests/roles/gnome-desktop-testing-role/meta/main.yml
Normal file
4
tests/roles/gnome-desktop-testing-role/meta/main.yml
Normal file
@ -0,0 +1,4 @@
|
||||
---
|
||||
|
||||
dependencies:
|
||||
- role: str-common-init
|
93
tests/roles/gnome-desktop-testing-role/tasks/main.yml
Normal file
93
tests/roles/gnome-desktop-testing-role/tasks/main.yml
Normal file
@ -0,0 +1,93 @@
|
||||
---
|
||||
- name: Check if GNOME installed-tests testing harness is installed
|
||||
register: gnome_desktop_testing_runner
|
||||
find:
|
||||
paths: "{{ ansible_env.PATH.split(':') }}"
|
||||
pattern: gnome-desktop-testing-runner
|
||||
|
||||
- name: Build and install GNOME installed-tests testing harness
|
||||
when: gnome_desktop_testing_runner.matched == 0
|
||||
block:
|
||||
- name: Installing build dependencies for GNOME installed-tests testing harness
|
||||
package:
|
||||
name:
|
||||
- git
|
||||
- make
|
||||
- gcc
|
||||
- diffutils
|
||||
- autoconf
|
||||
- automake
|
||||
- libtool
|
||||
- glib2-devel
|
||||
- systemd-devel
|
||||
|
||||
- name: Fetching GNOME installed-tests testing harness source from remote repository
|
||||
git:
|
||||
repo: 'https://gitlab.gnome.org/GNOME/gnome-desktop-testing.git'
|
||||
dest: gnome-desktop-testing
|
||||
force: yes
|
||||
|
||||
- name: Configure GNOME installed-tests testing harness build
|
||||
command: ./autogen.sh --prefix=/usr --sysconfdir=/etc --localstatedir=/var
|
||||
args:
|
||||
chdir: gnome-desktop-testing
|
||||
|
||||
- name: Build GNOME installed-tests testing harness
|
||||
command: make
|
||||
args:
|
||||
chdir: gnome-desktop-testing
|
||||
|
||||
- name: Install GNOME installed-tests testing harness
|
||||
command: make install
|
||||
args:
|
||||
chdir: gnome-desktop-testing
|
||||
|
||||
- name: Create a user to run GNOME installed-tests as
|
||||
user:
|
||||
name: shadowman
|
||||
state: present
|
||||
|
||||
- name: Start GNOME installed-tests testing harness
|
||||
block:
|
||||
- name: Allow shadowman user access to artifacts dir
|
||||
file:
|
||||
path: "{{ remote_artifacts }}"
|
||||
mode: 01777
|
||||
|
||||
- name: Determine log file name
|
||||
set_fact:
|
||||
log_file: "{{ remote_artifacts }}/{{ installed_test_name }}.log"
|
||||
|
||||
- name: Delete any stale log file
|
||||
file:
|
||||
path: "{{ log_file }}"
|
||||
state: absent
|
||||
|
||||
- name: Execute tests
|
||||
become: yes
|
||||
become_user: shadowman
|
||||
shell: |
|
||||
set -e
|
||||
log_file="{{ log_file }}"
|
||||
exec 2>>$log_file 1>>$log_file
|
||||
status="FAIL"
|
||||
xvfb-run -d -s '-screen 0 1024x768x24' dbus-run-session env TMPDIR='{{ remote_artifacts }}' G_MESSAGES_DEBUG='all' LANG=en_US.utf8 gnome-desktop-testing-runner '{{ installed_test_name }}'
|
||||
if [ $? -eq 0 ]; then
|
||||
status="PASS"
|
||||
fi
|
||||
echo "${status} $TEST" >> {{ remote_artifacts }}/test.log
|
||||
args:
|
||||
chdir: "{{ remote_artifacts }}"
|
||||
|
||||
- name: Check the results
|
||||
shell: grep "^FAIL" {{ remote_artifacts }}/test.log
|
||||
register: test_fails
|
||||
failed_when: False
|
||||
|
||||
- name: Set role result
|
||||
set_fact:
|
||||
role_result_failed: "{{ (test_fails.stdout|d|length > 0) or (test_fails.stderr|d|length > 0) }}"
|
||||
role_result_msg: "{{ test_fails.stdout|d('tests failed.') }}"
|
||||
|
||||
- include_role:
|
||||
name: str-common-final
|
8
tests/tests.yml
Normal file
8
tests/tests.yml
Normal file
@ -0,0 +1,8 @@
|
||||
- hosts: localhost
|
||||
roles:
|
||||
- role: gnome-desktop-testing-role
|
||||
installed_test_name: clutter
|
||||
tags:
|
||||
- classic
|
||||
- gating
|
||||
|
Loading…
Reference in New Issue
Block a user