| |
@@ -0,0 +1,99 @@
|
| |
+ ---
|
| |
+ - 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 IBus and GNOME installed-tests testing harness
|
| |
+ package:
|
| |
+ name:
|
| |
+ - git
|
| |
+ - make
|
| |
+ - gcc
|
| |
+ - diffutils
|
| |
+ - autoconf
|
| |
+ - automake
|
| |
+ - libtool
|
| |
+ - glib2-devel
|
| |
+ - systemd-devel
|
| |
+ - gnome-session
|
| |
+ - gnome-shell
|
| |
+ - dbus-x11
|
| |
+ - xorg-x11-server-Xvfb
|
| |
+ - ibus
|
| |
+ - ibus-desktop-testing
|
| |
+ - ibus-typing-booster-tests
|
| |
+
|
| |
+ - 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: Start IBus installed-tests testing harness
|
| |
+ environment:
|
| |
+ ANSIBLE: 1
|
| |
+ TMPDIR: '{{ remote_artifacts }}'
|
| |
+ G_MESSAGES_DEBUG: 'all'
|
| |
+ block:
|
| |
+ - name: Execute IBus typing booster tests
|
| |
+ shell: |
|
| |
+ set -e
|
| |
+ status="FAIL: frame"
|
| |
+ ibus-desktop-testing-runner \
|
| |
+ --no-graphics \
|
| |
+ --runner=gnome \
|
| |
+ --timeout=1200 \
|
| |
+ --tests='{{ installed_test_name }}' \
|
| |
+ --output='{{ remote_artifacts }}/{{ installed_test_name }}.log' \
|
| |
+ --result='{{ remote_artifacts }}/test.log' \
|
| |
+ null
|
| |
+ if [ $? -eq 0 ]; then
|
| |
+ status="PASS: frame"
|
| |
+ fi
|
| |
+ echo "${status} $TEST" >> {{ remote_artifacts }}/test.log
|
| |
+
|
| |
+ - name: Check the results
|
| |
+ shell: |
|
| |
+ log="{{ remote_artifacts }}/test.log"
|
| |
+ if [ ! -f $log ] ; then
|
| |
+ echo ERROR
|
| |
+ else
|
| |
+ FAIL=`grep "^FAIL: " $log | grep -v 'FAIL: 0$'`
|
| |
+ if [ x"$FAIL" != x ] ; then
|
| |
+ echo ERROR
|
| |
+ else
|
| |
+ echo PASS
|
| |
+ fi
|
| |
+ fi
|
| |
+ register: test_fails
|
| |
+ #failed_when: False
|
| |
+
|
| |
+ - name: Set role result
|
| |
+ set_fact:
|
| |
+ role_result: "{{ test_fails.stdout }}"
|
| |
+ 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
|
| |
+
|
| |