common: debug #2
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# Run all tests on PMem. | |
# | |
# This workflow is run on 'self-hosted' runners. | |
name: PMEM tests | |
on: | |
workflow_dispatch: | |
push: | |
schedule: | |
# run this job every 8 hours | |
- cron: '0 */8 * * *' | |
jobs: | |
no_forced_Valgrind: | |
name: No forced Valgrind | |
if: github.repository == 'pmem/pmdk' | |
runs-on: ${{ matrix.os }} | |
strategy: | |
fail-fast: false | |
matrix: | |
os: [[self-hosted, rhel],[self-hosted, opensuse]] | |
test_script: ['sh', 'py'] | |
build: ['debug', 'nondebug'] | |
force_enable: ['none'] | |
# static builds are tested in a limited scope | |
include: | |
- os: [self-hosted, rhel] | |
build: 'static_debug' | |
force_enable: '' # include Valgrind tests | |
- os: [self-hosted, rhel] | |
build: 'static_nondebug' | |
force_enable: '' # include Valgrind tests | |
env: | |
WORKDIR: utils/gha-runners | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Test prepare | |
uses: ./.github/actions/pmem_test_prepare | |
- name: Test run | |
uses: ./.github/actions/pmem_test_run | |
with: | |
test_script: ${{ matrix.test_script }} | |
build: ${{ matrix.build }} | |
force_enable: ${{ matrix.force_enable }} | |
# Test the fault injection scenarios | |
fault_injection: | |
name: Fault injection | |
if: github.repository == 'pmem/pmdk' | |
runs-on: [self-hosted, rhel] | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Test prepare | |
uses: ./.github/actions/pmem_test_prepare | |
with: | |
fault_injection: '1' | |
- name: Test run | |
uses: ./.github/actions/pmem_test_run | |
with: | |
build: nondebug # only the production build is considered | |
test_label: 'fault_injection' # only dedicated scenarios | |
# This build is only viable as long as DAOS builds PMDK with NDCTL_ENABLE=n | |
# https://github.com/daos-stack/pmdk/pull/12 | |
ndctl_enable_n: | |
name: Without ndctl | |
if: github.repository == 'pmem/pmdk' | |
runs-on: [self-hosted, rhel] | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Test prepare | |
uses: ./.github/actions/pmem_test_prepare | |
with: | |
ndctl_enable: n | |
- name: Test run | |
uses: ./.github/actions/pmem_test_run | |
with: | |
build: nondebug # only the production build is considered | |
forced_xmemcheck: | |
name: Forced memcheck/pmemcheck | |
if: github.repository == 'pmem/pmdk' | |
needs: [no_forced_Valgrind, fault_injection, ndctl_enable_n] | |
runs-on: ${{ matrix.os }} | |
strategy: | |
fail-fast: false | |
matrix: | |
os: [[self-hosted, rhel],[self-hosted, opensuse]] | |
test_script: ['sh', 'py'] | |
build: ['debug', 'nondebug'] | |
force_enable: ['pmemcheck', 'memcheck'] | |
env: | |
WORKDIR: utils/gha-runners | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Test prepare | |
uses: ./.github/actions/pmem_test_prepare | |
- name: Test run | |
uses: ./.github/actions/pmem_test_run | |
with: | |
test_script: ${{ matrix.test_script }} | |
build: ${{ matrix.build }} | |
force_enable: ${{ matrix.force_enable }} | |
forced_drd_helgrind: | |
name: Forced drd/helgrind | |
if: github.repository == 'pmem/pmdk' | |
needs: forced_xmemcheck | |
runs-on: ${{ matrix.os }} | |
strategy: | |
fail-fast: false | |
matrix: | |
os: [[self-hosted, rhel],[self-hosted, opensuse]] | |
test_script: ['sh', 'py'] | |
build: ['debug', 'nondebug'] | |
force_enable: ['drd', 'helgrind'] | |
env: | |
WORKDIR: utils/gha-runners | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Test prepare | |
uses: ./.github/actions/pmem_test_prepare | |
- name: Test run | |
uses: ./.github/actions/pmem_test_run | |
with: | |
test_script: ${{ matrix.test_script }} | |
build: ${{ matrix.build }} | |
force_enable: ${{ matrix.force_enable }} |