init FMF CI gating

This commit is contained in:
Michal Kolar 2021-02-14 17:15:34 +00:00 committed by Alexandra Hájková
parent 1bdd88c886
commit 2c9320f3f2
12 changed files with 69 additions and 64 deletions

1
.fmf/version Normal file
View File

@ -0,0 +1 @@
1

20
gating.yaml Normal file
View File

@ -0,0 +1,20 @@
--- !Policy
product_versions:
- fedora-*
decision_context: bodhi_update_push_stable
subject_type: koji_build
rules:
- !PassingTestCaseRule {test_case_name: fedora-ci.koji-build.tier0.functional}
- !PassingTestCaseRule {test_case_name: baseos-qe.koji-build.scratch-build.validation}
--- !Policy
product_versions:
- rhel-8
decision_context: osci_compose_gate
rules:
- !PassingTestCaseRule {test_case_name: osci.brew-build.tier0.functional}
--- !Policy
product_versions:
- rhel-9
decision_context: osci_compose_gate
rules:
- !PassingTestCaseRule {test_case_name: osci.brew-build.tier0.functional}

6
plans/ci.fmf Normal file
View File

@ -0,0 +1,6 @@
summary: CI Gating Plan
discover:
how: fmf
directory: tests
execute:
how: beakerlib

View File

@ -1,31 +0,0 @@
Justification
Adds tests according to the CI wiki specifically the standard test
interface in the spec.
The playbook includes Tier1 level test cases that have been tested in
the following contexts and is passing reliably: Classic and
Container. Test logs are stored in the artifacts directory.
The following steps are used to execute the tests using the standard
test interface: Test environment
Make sure you have installed packages from the spec
# rpm -q ansible python2-dnf libselinux-python standard-test-roles
ansible-2.3.2.0-1.fc26.noarch
python2-dnf-2.6.3-11.fc26.noarch
libselinux-python-2.6-7.fc26.x86_64
standard-test-roles-2.4-1.fc26.noarch
Run tests for Classic (must be run as root)
# export ANSIBLE_INVENTORY=$(test -e inventory && echo inventory || echo /usr/share/ansible/inventory)
# ansible-playbook --tags=classic tests.yml
Run tests for Container (must be run as root)
# export ANSIBLE_INVENTORY=$(test -e inventory && echo inventory || echo /usr/share/ansible/inventory)
# export TEST_SUBJECTS=docker:docker.io/library/fedora:26
# ansible-playbook --tags=container tests.yml

View File

@ -1,4 +1,4 @@
sta
start
si 30
n 10
up

View File

@ -0,0 +1,17 @@
summary: Debug a system binary.
description: ''
contact:
- Marek Polacek <mpolacek@redhat.com>
component:
- gdb
test: ./runtest.sh
framework: beakerlib
recommend:
- gdb
- coreutils
- coreutils-debuginfo
- glibc
- glibc-debuginfo
duration: 5m
extra-summary: /tools/gdb/Sanity/debug-system-binary
extra-task: /tools/gdb/Sanity/debug-system-binary

View File

@ -27,8 +27,7 @@
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# Include Beaker environment
. /usr/bin/rhts-environment.sh || exit 1
. /usr/lib/beakerlib/beakerlib.sh || exit 1
. /usr/share/beakerlib/beakerlib.sh || exit 1
CMD="gdb"
BIN="$(which $CMD)"

View File

@ -14,5 +14,4 @@ frame 1
b xexit
c
c
c
q

View File

@ -0,0 +1,22 @@
summary: We debug a binary that is delivered via the Toolset.
description: ''
contact:
- Marek Polacek <mpolacek@redhat.com>
component:
- gdb
test: ./runtest.sh
framework: beakerlib
recommend:
- gdb
- coreutils
- binutils
- binutils-debuginfo
- glibc
- glibc-debuginfo
- gcc
- gcc-debuginfo
- zlib
- zlib-debuginfo
duration: 5m
extra-summary: /tools/gdb/Sanity/debug-toolset-binary
extra-task: /tools/gdb/Sanity/debug-toolset-binary

View File

@ -32,8 +32,7 @@
# but in fact, it doesn't have to. It should not fail either way.
# Include Beaker environment
. /usr/bin/rhts-environment.sh || exit 1
. /usr/lib/beakerlib/beakerlib.sh || exit 1
. /usr/share/beakerlib/beakerlib.sh || exit 1
CMD="gdb"
BIN="$(which $CMD)"

View File

@ -1,3 +0,0 @@
#!/bin/bash
export TEST_DOCKER_EXTRA_ARGS="--privileged"
exec merge-standard-inventory "$@"

View File

@ -1,24 +0,0 @@
---
# This first play always runs on the local staging system
- hosts: localhost
roles:
- role: standard-test-beakerlib
tags:
- classic
- container
tests:
- debug-toolset-binary
- debug-system-binary
required_packages:
- gdb
- coreutils
- binutils
- binutils-debuginfo
- glibc
- glibc-debuginfo
- gcc
- gcc-debuginfo
- zlib
- zlib-debuginfo
- coreutils-debuginfo
- which