From d4129006c88591c1d0b1197041179d13095eefc1 Mon Sep 17 00:00:00 2001 From: Rafael Aquini Date: Thu, 23 May 2024 15:37:28 -0400 Subject: [PATCH] memkind: add gating for centos-stream-10 Resolves: RHELMISC-4150 Signed-off-by: Rafael Aquini --- gating.yaml | 6 ++++++ tests/memkind-prepsource.sh | 9 +++++++++ tests/memkind-test.sh | 26 +++++++++++++++++++++++++ tests/provision.fmf | 5 +++++ tests/tests.yml | 38 +++++++++++++++++++++++++++++++++++++ 5 files changed, 84 insertions(+) create mode 100644 gating.yaml create mode 100755 tests/memkind-prepsource.sh create mode 100755 tests/memkind-test.sh create mode 100644 tests/provision.fmf create mode 100644 tests/tests.yml diff --git a/gating.yaml b/gating.yaml new file mode 100644 index 0000000..4ca9235 --- /dev/null +++ b/gating.yaml @@ -0,0 +1,6 @@ +--- !Policy +product_versions: + - rhel-10 +decision_context: osci_compose_gate +rules: + - !PassingTestCaseRule {test_case_name: osci.brew-build.tier0.functional} diff --git a/tests/memkind-prepsource.sh b/tests/memkind-prepsource.sh new file mode 100755 index 0000000..12053c0 --- /dev/null +++ b/tests/memkind-prepsource.sh @@ -0,0 +1,9 @@ +#!/bin/bash -x + +WORKDIR="${1}" + +rpmbuild -bp $WORKDIR/*.spec --nodeps --define "_sourcedir $WORKDIR" --define "_builddir $WORKDIR/source" +mkdir $WORKDIR/temp +mv $WORKDIR/source/*/* $WORKDIR/temp/ +rm -rf $WORKDIR/source/* +mv $WORKDIR/temp/* $WORKDIR/source/ diff --git a/tests/memkind-test.sh b/tests/memkind-test.sh new file mode 100755 index 0000000..40c2c1d --- /dev/null +++ b/tests/memkind-test.sh @@ -0,0 +1,26 @@ +#!/bin/sh + +RETCODE=0 +TMPTESTSFILE=/tmp/memkind-tests.log +TMPBUILDFILE=/tmp/memkind-build.log + +# re-play the build +pushd source +./build.sh &> $TMPBUILDFILE +RETCODE=$? +if [ $RETCODE != 0 ]; then + cat $TMPBUILDFILE + exit $RETCODE +fi + +pushd test + +# run all tests filtering out those that are not meant +# to pass on a small VM +./all_tests --gtest_filter=-BATest.test_TC_MEMKIND_hbwmalloc_Pref_CheckAvailable:DlopenTest.*:HbwVerifyFunctionTest.*:NegativeTestHuge.test_TC_MEMKIND_hbwmalloc_memalign_psize_Interleave_Policy_PAGE_SIZE_2MB:HBW*.*:BATest.test_TC_MEMKIND_free_ext_MEMKIND_GBTLB_4096_bytes &> $TMPTESTSFILE +RETCODE=$? +if [ $RETCODE != 0 ]; then + cat $TMPTESTSFILE +fi +exit $RETCODE + diff --git a/tests/provision.fmf b/tests/provision.fmf new file mode 100644 index 0000000..dd69f34 --- /dev/null +++ b/tests/provision.fmf @@ -0,0 +1,5 @@ +--- + +standard-inventory-qcow2: + qemu: + m: 4G diff --git a/tests/tests.yml b/tests/tests.yml new file mode 100644 index 0000000..276d18b --- /dev/null +++ b/tests/tests.yml @@ -0,0 +1,38 @@ +--- +- hosts: localhost + tags: + - classic + vars: + # standard-test-basic directory for tests are relative to {{ tenv_workdir }} + tenv_workdir: /var/str + pre_tasks: + - import_role: + name: standard-test-source + vars: + fetch_only: True + - name: Copy files including source to test environment + synchronize: + src: "{{ playbook_dir }}/.." + dest: "{{ tenv_workdir }}" + mode: push + ssh_args: "-o UserKnownHostsFile=/dev/null" + roles: + - role: standard-test-basic + required_packages: + - automake + - libtool + - numactl-devel + - systemd + - gcc + - gcc-c++ + - make + - gawk + - python3 + - rpm-build + tests: + - prepare-source: + dir: ./ + run: ./memkind-prepsource.sh "{{tenv_workdir}}" + - memkind_test: + dir: ./ + run: ./memkind-test.sh