From 93abfda810da98c47f509e760a6f31851d6d8158 Mon Sep 17 00:00:00 2001 From: Nikhil Manglore Date: Fri, 24 Oct 2025 17:25:40 +0000 Subject: [PATCH 1/5] Implemented a merge queue for PRs Signed-off-by: Nikhil Manglore --- .github/merge-queue-config.yml | 19 ++++++++++++++ .github/workflows/daily.yml | 41 +++++++++++++++++++++++++++++++ .github/workflows/merge-queue.yml | 8 ++++++ 3 files changed, 68 insertions(+) create mode 100644 .github/merge-queue-config.yml create mode 100644 .github/workflows/merge-queue.yml diff --git a/.github/merge-queue-config.yml b/.github/merge-queue-config.yml new file mode 100644 index 0000000000..6c82a0363f --- /dev/null +++ b/.github/merge-queue-config.yml @@ -0,0 +1,19 @@ +merge_method: squash +merge_commit_message: PR_TITLE +merge_commit_body: PR_BODY + +queue: + timeout_minutes: 1440 + batch_size: 5 + required_checks: + - "call-daily-tests" + auto_merge: true + +branch_protection: + required_status_checks: + - "call-daily-tests" + strict: false + enforce_admins: false + required_pull_request_reviews: + required_approving_review_count: 1 + dismiss_stale_reviews: true \ No newline at end of file diff --git a/.github/workflows/daily.yml b/.github/workflows/daily.yml index de65828a95..8d684cb584 100644 --- a/.github/workflows/daily.yml +++ b/.github/workflows/daily.yml @@ -12,6 +12,7 @@ on: - '**/COPYING' schedule: - cron: "0 0 * * *" + workflow_call: workflow_dispatch: inputs: skipjobs: @@ -45,6 +46,8 @@ jobs: runs-on: ubuntu-latest if: | (github.event_name == 'workflow_dispatch' || + github.event_name == 'workflow_call' || + github.event_name == 'workflow_call' || (github.event_name == 'schedule' && github.repository == 'valkey-io/valkey') || (github.event_name == 'pull_request' && (contains(github.event.pull_request.labels.*.name, 'run-extra-tests') || github.event.pull_request.base.ref != 'unstable'))) && !contains(github.event.inputs.skipjobs, 'ubuntu') @@ -113,6 +116,8 @@ jobs: runs-on: ubuntu-24.04-arm if: | (github.event_name == 'workflow_dispatch' || + github.event_name == 'workflow_call' || + github.event_name == 'workflow_call' || (github.event_name == 'schedule' && github.repository == 'valkey-io/valkey') || (github.event_name == 'pull_request' && (contains(github.event.pull_request.labels.*.name, 'run-extra-tests') || github.event.pull_request.base.ref != 'unstable'))) && (!contains(github.event.inputs.skipjobs, 'ubuntu') || !contains(github.event.inputs.skipjobs, 'arm')) @@ -155,6 +160,8 @@ jobs: runs-on: ubuntu-latest if: | (github.event_name == 'workflow_dispatch' || + github.event_name == 'workflow_call' || + github.event_name == 'workflow_call' || (github.event_name == 'schedule' && github.repository == 'valkey-io/valkey') || (github.event_name == 'pull_request' && (contains(github.event.pull_request.labels.*.name, 'run-extra-tests') || github.event.pull_request.base.ref != 'unstable'))) && !contains(github.event.inputs.skipjobs, 'fortify') @@ -201,6 +208,8 @@ jobs: runs-on: ubuntu-latest if: | (github.event_name == 'workflow_dispatch' || + github.event_name == 'workflow_call' || + github.event_name == 'workflow_call' || (github.event_name == 'schedule' && github.repository == 'valkey-io/valkey') || (github.event_name == 'pull_request' && (contains(github.event.pull_request.labels.*.name, 'run-extra-tests') || github.event.pull_request.base.ref != 'unstable'))) && !contains(github.event.inputs.skipjobs, 'malloc') @@ -240,6 +249,8 @@ jobs: runs-on: ubuntu-latest if: | (github.event_name == 'workflow_dispatch' || + github.event_name == 'workflow_call' || + github.event_name == 'workflow_call' || (github.event_name == 'schedule' && github.repository == 'valkey-io/valkey') || (github.event_name == 'pull_request' && (contains(github.event.pull_request.labels.*.name, 'run-extra-tests') || github.event.pull_request.base.ref != 'unstable'))) && !contains(github.event.inputs.skipjobs, 'malloc') @@ -279,6 +290,8 @@ jobs: runs-on: ubuntu-latest if: | (github.event_name == 'workflow_dispatch' || + github.event_name == 'workflow_call' || + github.event_name == 'workflow_call' || (github.event_name == 'schedule' && github.repository == 'valkey-io/valkey') || (github.event_name == 'pull_request' && (contains(github.event.pull_request.labels.*.name, 'run-extra-tests') || github.event.pull_request.base.ref != 'unstable'))) && !contains(github.event.inputs.skipjobs, '32bit') @@ -325,6 +338,8 @@ jobs: runs-on: ubuntu-latest if: | (github.event_name == 'workflow_dispatch' || + github.event_name == 'workflow_call' || + github.event_name == 'workflow_call' || (github.event_name == 'schedule' && github.repository == 'valkey-io/valkey') || (github.event_name == 'pull_request' && (contains(github.event.pull_request.labels.*.name, 'run-extra-tests') || github.event.pull_request.base.ref != 'unstable'))) && !contains(github.event.inputs.skipjobs, 'tls') @@ -371,6 +386,8 @@ jobs: runs-on: ubuntu-latest if: | (github.event_name == 'workflow_dispatch' || + github.event_name == 'workflow_call' || + github.event_name == 'workflow_call' || (github.event_name == 'schedule' && github.repository == 'valkey-io/valkey') || (github.event_name == 'pull_request' && (contains(github.event.pull_request.labels.*.name, 'run-extra-tests') || github.event.pull_request.base.ref != 'unstable'))) && !contains(github.event.inputs.skipjobs, 'tls') @@ -417,6 +434,8 @@ jobs: runs-on: ubuntu-latest if: | (github.event_name == 'workflow_dispatch' || + github.event_name == 'workflow_call' || + github.event_name == 'workflow_call' || (github.event_name == 'schedule' && github.repository == 'valkey-io/valkey') || (github.event_name == 'pull_request' && (contains(github.event.pull_request.labels.*.name, 'run-extra-tests') || github.event.pull_request.base.ref != 'unstable'))) && !contains(github.event.inputs.skipjobs, 'iothreads') @@ -451,6 +470,8 @@ jobs: runs-on: ubuntu-latest if: | (github.event_name == 'workflow_dispatch' || + github.event_name == 'workflow_call' || + github.event_name == 'workflow_call' || (github.event_name == 'schedule' && github.repository == 'valkey-io/valkey') || (github.event_name == 'pull_request' && (contains(github.event.pull_request.labels.*.name, 'run-extra-tests') || github.event.pull_request.base.ref != 'unstable'))) && !contains(github.event.inputs.skipjobs, 'tls') && !contains(github.event.inputs.skipjobs, 'iothreads') @@ -489,6 +510,7 @@ jobs: runs-on: ubuntu-latest if: | (github.event_name == 'workflow_dispatch' || + github.event_name == 'workflow_call' || (github.event_name == 'schedule' && github.repository == 'valkey-io/valkey') || (github.event_name == 'pull_request' && (contains(github.event.pull_request.labels.*.name, 'run-extra-tests') || github.event.pull_request.base.ref != 'unstable'))) && !contains(github.event.inputs.skipjobs, 'specific') @@ -565,6 +587,7 @@ jobs: runs-on: ubuntu-latest if: | (github.event_name == 'workflow_dispatch' || + github.event_name == 'workflow_call' || (github.event_name == 'schedule' && github.repository == 'valkey-io/valkey') || (github.event_name == 'pull_request' && github.event.pull_request.base.ref != 'unstable')) && !contains(github.event.inputs.skipjobs, 'valgrind') && !contains(github.event.inputs.skiptests, 'valkey') @@ -597,6 +620,7 @@ jobs: runs-on: ubuntu-latest if: | (github.event_name == 'workflow_dispatch' || + github.event_name == 'workflow_call' || (github.event_name == 'schedule' && github.repository == 'valkey-io/valkey') || (github.event_name == 'pull_request' && github.event.pull_request.base.ref != 'unstable')) && !contains(github.event.inputs.skipjobs, 'valgrind') && !(contains(github.event.inputs.skiptests, 'modules') && contains(github.event.inputs.skiptests, 'unittest')) @@ -634,6 +658,7 @@ jobs: runs-on: ubuntu-latest if: | (github.event_name == 'workflow_dispatch' || + github.event_name == 'workflow_call' || (github.event_name == 'schedule' && github.repository == 'valkey-io/valkey') || (github.event_name == 'pull_request' && github.event.pull_request.base.ref != 'unstable')) && !contains(github.event.inputs.skipjobs, 'valgrind') && !contains(github.event.inputs.skiptests, 'valkey') @@ -666,6 +691,7 @@ jobs: runs-on: ubuntu-latest if: | (github.event_name == 'workflow_dispatch' || + github.event_name == 'workflow_call' || (github.event_name == 'schedule' && github.repository == 'valkey-io/valkey') || (github.event_name == 'pull_request' && github.event.pull_request.base.ref != 'unstable')) && !contains(github.event.inputs.skipjobs, 'valgrind') && !(contains(github.event.inputs.skiptests, 'modules') && contains(github.event.inputs.skiptests, 'unittest')) @@ -703,6 +729,7 @@ jobs: runs-on: ubuntu-latest if: | (github.event_name == 'workflow_dispatch' || + github.event_name == 'workflow_call' || (github.event_name == 'schedule' && github.repository == 'valkey-io/valkey') || (github.event_name == 'pull_request' && github.event.pull_request.base.ref != 'unstable')) && !contains(github.event.inputs.skipjobs, 'sanitizer') @@ -759,6 +786,7 @@ jobs: runs-on: ubuntu-latest if: | (github.event_name == 'workflow_dispatch' || + github.event_name == 'workflow_call' || (github.event_name == 'schedule' && github.repository == 'valkey-io/valkey') || (github.event_name == 'pull_request' && github.event.pull_request.base.ref != 'unstable')) && !contains(github.event.inputs.skipjobs, 'sanitizer') @@ -815,6 +843,7 @@ jobs: runs-on: ubuntu-latest if: | (github.event_name == 'workflow_dispatch' || + github.event_name == 'workflow_call' || (github.event_name == 'schedule' && github.repository == 'valkey-io/valkey') || (github.event_name == 'pull_request' && github.event.pull_request.base.ref != 'unstable')) && !contains(github.event.inputs.skipjobs, 'sanitizer') @@ -861,6 +890,7 @@ jobs: runs-on: ubuntu-latest if: | (github.event_name == 'workflow_dispatch' || + github.event_name == 'workflow_call' || (github.event_name == 'schedule' && github.repository == 'valkey-io/valkey') || (github.event_name == 'pull_request' && (contains(github.event.pull_request.labels.*.name, 'run-extra-tests') || github.event.pull_request.base.ref != 'unstable'))) && !contains(github.event.inputs.skipjobs, 'lttng') @@ -901,6 +931,7 @@ jobs: test-rpm-distros-jemalloc: if: | (github.event_name == 'workflow_dispatch' || + github.event_name == 'workflow_call' || (github.event_name == 'schedule' && github.repository == 'valkey-io/valkey') || (github.event_name == 'pull_request' && (contains(github.event.pull_request.labels.*.name, 'run-extra-tests') || github.event.pull_request.base.ref != 'unstable'))) && !contains(github.event.inputs.skipjobs, 'rpm-distros') @@ -967,6 +998,7 @@ jobs: test-rpm-distros-tls-module: if: | (github.event_name == 'workflow_dispatch' || + github.event_name == 'workflow_call' || (github.event_name == 'schedule' && github.repository == 'valkey-io/valkey') || (github.event_name == 'pull_request' && (contains(github.event.pull_request.labels.*.name, 'run-extra-tests') || github.event.pull_request.base.ref != 'unstable'))) && !contains(github.event.inputs.skipjobs, 'tls') @@ -1039,6 +1071,7 @@ jobs: test-rpm-distros-tls-module-no-tls: if: | (github.event_name == 'workflow_dispatch' || + github.event_name == 'workflow_call' || (github.event_name == 'schedule' && github.repository == 'valkey-io/valkey') || (github.event_name == 'pull_request' && github.event.pull_request.base.ref != 'unstable')) && !contains(github.event.inputs.skipjobs, 'tls') @@ -1112,6 +1145,7 @@ jobs: runs-on: macos-latest if: | (github.event_name == 'workflow_dispatch' || + github.event_name == 'workflow_call' || (github.event_name == 'schedule' && github.repository == 'valkey-io/valkey') || (github.event_name == 'pull_request' && (contains(github.event.pull_request.labels.*.name, 'run-extra-tests') || github.event.pull_request.base.ref != 'unstable'))) && !contains(github.event.inputs.skipjobs, 'macos') && !(contains(github.event.inputs.skiptests, 'valkey') && contains(github.event.inputs.skiptests, 'modules')) @@ -1143,6 +1177,7 @@ jobs: runs-on: macos-latest if: | (github.event_name == 'workflow_dispatch' || + github.event_name == 'workflow_call' || (github.event_name == 'schedule' && github.repository == 'valkey-io/valkey') || (github.event_name == 'pull_request' && (contains(github.event.pull_request.labels.*.name, 'run-extra-tests') || github.event.pull_request.base.ref != 'unstable'))) && !contains(github.event.inputs.skipjobs, 'macos') && !contains(github.event.inputs.skiptests, 'sentinel') @@ -1171,6 +1206,7 @@ jobs: runs-on: macos-latest if: | (github.event_name == 'workflow_dispatch' || + github.event_name == 'workflow_call' || (github.event_name == 'schedule' && github.repository == 'valkey-io/valkey') || (github.event_name == 'pull_request' && (contains(github.event.pull_request.labels.*.name, 'run-extra-tests') || github.event.pull_request.base.ref != 'unstable'))) && !contains(github.event.inputs.skipjobs, 'macos') && !contains(github.event.inputs.skiptests, 'cluster') @@ -1203,6 +1239,7 @@ jobs: runs-on: ${{ matrix.os }} if: | (github.event_name == 'workflow_dispatch' || + github.event_name == 'workflow_call' || (github.event_name == 'schedule' && github.repository == 'valkey-io/valkey') || (github.event_name == 'pull_request' && (contains(github.event.pull_request.labels.*.name, 'run-extra-tests') || github.event.pull_request.base.ref != 'unstable'))) && !contains(github.event.inputs.skipjobs, 'macos') @@ -1231,6 +1268,7 @@ jobs: runs-on: macos-13 if: | (github.event_name == 'workflow_dispatch' || + github.event_name == 'workflow_call' || (github.event_name == 'schedule' && github.repository == 'valkey-io/valkey') || (github.event_name == 'pull_request' && (contains(github.event.pull_request.labels.*.name, 'run-extra-tests') || github.event.pull_request.base.ref != 'unstable'))) && !contains(github.event.inputs.skipjobs, 'freebsd') @@ -1261,6 +1299,7 @@ jobs: runs-on: ubuntu-latest if: | (github.event_name == 'workflow_dispatch' || + github.event_name == 'workflow_call' || (github.event_name == 'schedule' && github.repository == 'valkey-io/valkey') || (github.event_name == 'pull_request' && (contains(github.event.pull_request.labels.*.name, 'run-extra-tests') || github.event.pull_request.base.ref != 'unstable'))) && !contains(github.event.inputs.skipjobs, 'alpine') @@ -1302,6 +1341,7 @@ jobs: runs-on: ubuntu-latest if: | (github.event_name == 'workflow_dispatch' || + github.event_name == 'workflow_call' || (github.event_name == 'schedule' && github.repository == 'valkey-io/valkey') || (github.event_name == 'pull_request' && (contains(github.event.pull_request.labels.*.name, 'run-extra-tests') || github.event.pull_request.base.ref != 'unstable'))) && !contains(github.event.inputs.skipjobs, 'alpine') @@ -1344,6 +1384,7 @@ jobs: timeout-minutes: 1440 if: | (github.event_name == 'workflow_dispatch' || + github.event_name == 'workflow_call' || (github.event_name == 'schedule' && github.repository == 'valkey-io/valkey') || (github.event_name == 'pull_request' && (contains(github.event.pull_request.labels.*.name, 'run-extra-tests') || github.event.pull_request.base.ref != 'unstable'))) && !contains(github.event.inputs.skipjobs, 'reply-schema') diff --git a/.github/workflows/merge-queue.yml b/.github/workflows/merge-queue.yml new file mode 100644 index 0000000000..b72c792e27 --- /dev/null +++ b/.github/workflows/merge-queue.yml @@ -0,0 +1,8 @@ +name: Merge Queue + +on: + merge_group: + +jobs: + call-daily-tests: + uses: ./.github/workflows/daily.yml \ No newline at end of file From 1ad3199667123b33c2f4b5ad3506a9ef1ffc6789 Mon Sep 17 00:00:00 2001 From: Nikhil Manglore Date: Fri, 24 Oct 2025 17:30:34 +0000 Subject: [PATCH 2/5] Remove duplicate workflow calls Signed-off-by: Nikhil Manglore --- .github/workflows/daily.yml | 10 ---------- 1 file changed, 10 deletions(-) diff --git a/.github/workflows/daily.yml b/.github/workflows/daily.yml index 8d684cb584..7a9f327138 100644 --- a/.github/workflows/daily.yml +++ b/.github/workflows/daily.yml @@ -46,7 +46,6 @@ jobs: runs-on: ubuntu-latest if: | (github.event_name == 'workflow_dispatch' || - github.event_name == 'workflow_call' || github.event_name == 'workflow_call' || (github.event_name == 'schedule' && github.repository == 'valkey-io/valkey') || (github.event_name == 'pull_request' && (contains(github.event.pull_request.labels.*.name, 'run-extra-tests') || github.event.pull_request.base.ref != 'unstable'))) && @@ -116,7 +115,6 @@ jobs: runs-on: ubuntu-24.04-arm if: | (github.event_name == 'workflow_dispatch' || - github.event_name == 'workflow_call' || github.event_name == 'workflow_call' || (github.event_name == 'schedule' && github.repository == 'valkey-io/valkey') || (github.event_name == 'pull_request' && (contains(github.event.pull_request.labels.*.name, 'run-extra-tests') || github.event.pull_request.base.ref != 'unstable'))) && @@ -160,7 +158,6 @@ jobs: runs-on: ubuntu-latest if: | (github.event_name == 'workflow_dispatch' || - github.event_name == 'workflow_call' || github.event_name == 'workflow_call' || (github.event_name == 'schedule' && github.repository == 'valkey-io/valkey') || (github.event_name == 'pull_request' && (contains(github.event.pull_request.labels.*.name, 'run-extra-tests') || github.event.pull_request.base.ref != 'unstable'))) && @@ -208,7 +205,6 @@ jobs: runs-on: ubuntu-latest if: | (github.event_name == 'workflow_dispatch' || - github.event_name == 'workflow_call' || github.event_name == 'workflow_call' || (github.event_name == 'schedule' && github.repository == 'valkey-io/valkey') || (github.event_name == 'pull_request' && (contains(github.event.pull_request.labels.*.name, 'run-extra-tests') || github.event.pull_request.base.ref != 'unstable'))) && @@ -249,7 +245,6 @@ jobs: runs-on: ubuntu-latest if: | (github.event_name == 'workflow_dispatch' || - github.event_name == 'workflow_call' || github.event_name == 'workflow_call' || (github.event_name == 'schedule' && github.repository == 'valkey-io/valkey') || (github.event_name == 'pull_request' && (contains(github.event.pull_request.labels.*.name, 'run-extra-tests') || github.event.pull_request.base.ref != 'unstable'))) && @@ -290,7 +285,6 @@ jobs: runs-on: ubuntu-latest if: | (github.event_name == 'workflow_dispatch' || - github.event_name == 'workflow_call' || github.event_name == 'workflow_call' || (github.event_name == 'schedule' && github.repository == 'valkey-io/valkey') || (github.event_name == 'pull_request' && (contains(github.event.pull_request.labels.*.name, 'run-extra-tests') || github.event.pull_request.base.ref != 'unstable'))) && @@ -338,7 +332,6 @@ jobs: runs-on: ubuntu-latest if: | (github.event_name == 'workflow_dispatch' || - github.event_name == 'workflow_call' || github.event_name == 'workflow_call' || (github.event_name == 'schedule' && github.repository == 'valkey-io/valkey') || (github.event_name == 'pull_request' && (contains(github.event.pull_request.labels.*.name, 'run-extra-tests') || github.event.pull_request.base.ref != 'unstable'))) && @@ -386,7 +379,6 @@ jobs: runs-on: ubuntu-latest if: | (github.event_name == 'workflow_dispatch' || - github.event_name == 'workflow_call' || github.event_name == 'workflow_call' || (github.event_name == 'schedule' && github.repository == 'valkey-io/valkey') || (github.event_name == 'pull_request' && (contains(github.event.pull_request.labels.*.name, 'run-extra-tests') || github.event.pull_request.base.ref != 'unstable'))) && @@ -434,7 +426,6 @@ jobs: runs-on: ubuntu-latest if: | (github.event_name == 'workflow_dispatch' || - github.event_name == 'workflow_call' || github.event_name == 'workflow_call' || (github.event_name == 'schedule' && github.repository == 'valkey-io/valkey') || (github.event_name == 'pull_request' && (contains(github.event.pull_request.labels.*.name, 'run-extra-tests') || github.event.pull_request.base.ref != 'unstable'))) && @@ -470,7 +461,6 @@ jobs: runs-on: ubuntu-latest if: | (github.event_name == 'workflow_dispatch' || - github.event_name == 'workflow_call' || github.event_name == 'workflow_call' || (github.event_name == 'schedule' && github.repository == 'valkey-io/valkey') || (github.event_name == 'pull_request' && (contains(github.event.pull_request.labels.*.name, 'run-extra-tests') || github.event.pull_request.base.ref != 'unstable'))) && From 874009f5c3051e70ddb7487aa37fbd8641808ab2 Mon Sep 17 00:00:00 2001 From: Nikhil Manglore Date: Fri, 24 Oct 2025 19:37:16 +0000 Subject: [PATCH 3/5] Removed manual config and other minor changes Signed-off-by: Nikhil Manglore --- .github/merge-queue-config.yml | 19 ------------------- .github/workflows/daily.yml | 27 ++++++++++++++++++++++++++- 2 files changed, 26 insertions(+), 20 deletions(-) delete mode 100644 .github/merge-queue-config.yml diff --git a/.github/merge-queue-config.yml b/.github/merge-queue-config.yml deleted file mode 100644 index 6c82a0363f..0000000000 --- a/.github/merge-queue-config.yml +++ /dev/null @@ -1,19 +0,0 @@ -merge_method: squash -merge_commit_message: PR_TITLE -merge_commit_body: PR_BODY - -queue: - timeout_minutes: 1440 - batch_size: 5 - required_checks: - - "call-daily-tests" - auto_merge: true - -branch_protection: - required_status_checks: - - "call-daily-tests" - strict: false - enforce_admins: false - required_pull_request_reviews: - required_approving_review_count: 1 - dismiss_stale_reviews: true \ No newline at end of file diff --git a/.github/workflows/daily.yml b/.github/workflows/daily.yml index 7a9f327138..8cf1b8df2c 100644 --- a/.github/workflows/daily.yml +++ b/.github/workflows/daily.yml @@ -12,7 +12,6 @@ on: - '**/COPYING' schedule: - cron: "0 0 * * *" - workflow_call: workflow_dispatch: inputs: skipjobs: @@ -33,6 +32,32 @@ on: use_git_ref: description: "git branch or sha to use" default: "unstable" + workflow_call: + inputs: + skipjobs: + description: "jobs to skip" + type: string + default: "" + skiptests: + description: "tests to skip" + type: string + default: "" + test_args: + description: "extra test arguments" + type: string + default: "" + cluster_test_args: + description: "extra cluster / sentinel test arguments" + type: string + default: "" + use_repo: + description: "repo owner and name" + type: string + default: "valkey-io/valkey" + use_git_ref: + description: "git branch or sha to use" + type: string + default: "unstable" concurrency: group: daily-${{ github.head_ref || github.ref }} From 010fb45eede8274db9e9e85045bcc82ad9f6d5f4 Mon Sep 17 00:00:00 2001 From: Nikhil Manglore Date: Fri, 21 Nov 2025 21:40:28 +0000 Subject: [PATCH 4/5] Run all tests except valgrind and macos Signed-off-by: Nikhil Manglore --- .github/workflows/daily.yml | 76 ++++++++++++------------------- .github/workflows/merge-queue.yml | 5 +- 2 files changed, 34 insertions(+), 47 deletions(-) diff --git a/.github/workflows/daily.yml b/.github/workflows/daily.yml index 8cf1b8df2c..9dc0010673 100644 --- a/.github/workflows/daily.yml +++ b/.github/workflows/daily.yml @@ -42,22 +42,6 @@ on: description: "tests to skip" type: string default: "" - test_args: - description: "extra test arguments" - type: string - default: "" - cluster_test_args: - description: "extra cluster / sentinel test arguments" - type: string - default: "" - use_repo: - description: "repo owner and name" - type: string - default: "valkey-io/valkey" - use_git_ref: - description: "git branch or sha to use" - type: string - default: "unstable" concurrency: group: daily-${{ github.head_ref || github.ref }} @@ -78,7 +62,7 @@ jobs: timeout-minutes: 1440 steps: - name: prep - if: github.event_name == 'workflow_dispatch' + if: github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call' run: | echo "GITHUB_REPOSITORY=${{github.event.inputs.use_repo}}" >> $GITHUB_ENV echo "GITHUB_HEAD_REF=${{github.event.inputs.use_git_ref}}" >> $GITHUB_ENV @@ -147,7 +131,7 @@ jobs: timeout-minutes: 14400 steps: - name: prep - if: github.event_name == 'workflow_dispatch' + if: github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call' run: | echo "GITHUB_REPOSITORY=${{github.event.inputs.use_repo}}" >> $GITHUB_ENV echo "GITHUB_HEAD_REF=${{github.event.inputs.use_git_ref}}" >> $GITHUB_ENV @@ -191,7 +175,7 @@ jobs: timeout-minutes: 1440 steps: - name: prep - if: github.event_name == 'workflow_dispatch' + if: github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call' run: | echo "GITHUB_REPOSITORY=${{github.event.inputs.use_repo}}" >> $GITHUB_ENV echo "GITHUB_HEAD_REF=${{github.event.inputs.use_git_ref}}" >> $GITHUB_ENV @@ -237,7 +221,7 @@ jobs: timeout-minutes: 1440 steps: - name: prep - if: github.event_name == 'workflow_dispatch' + if: github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call' run: | echo "GITHUB_REPOSITORY=${{github.event.inputs.use_repo}}" >> $GITHUB_ENV echo "GITHUB_HEAD_REF=${{github.event.inputs.use_git_ref}}" >> $GITHUB_ENV @@ -277,7 +261,7 @@ jobs: timeout-minutes: 1440 steps: - name: prep - if: github.event_name == 'workflow_dispatch' + if: github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call' run: | echo "GITHUB_REPOSITORY=${{github.event.inputs.use_repo}}" >> $GITHUB_ENV echo "GITHUB_HEAD_REF=${{github.event.inputs.use_git_ref}}" >> $GITHUB_ENV @@ -317,7 +301,7 @@ jobs: timeout-minutes: 1440 steps: - name: prep - if: github.event_name == 'workflow_dispatch' + if: github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call' run: | echo "GITHUB_REPOSITORY=${{github.event.inputs.use_repo}}" >> $GITHUB_ENV echo "GITHUB_HEAD_REF=${{github.event.inputs.use_git_ref}}" >> $GITHUB_ENV @@ -364,7 +348,7 @@ jobs: timeout-minutes: 1440 steps: - name: prep - if: github.event_name == 'workflow_dispatch' + if: github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call' run: | echo "GITHUB_REPOSITORY=${{github.event.inputs.use_repo}}" >> $GITHUB_ENV echo "GITHUB_HEAD_REF=${{github.event.inputs.use_git_ref}}" >> $GITHUB_ENV @@ -411,7 +395,7 @@ jobs: timeout-minutes: 1440 steps: - name: prep - if: github.event_name == 'workflow_dispatch' + if: github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call' run: | echo "GITHUB_REPOSITORY=${{github.event.inputs.use_repo}}" >> $GITHUB_ENV echo "GITHUB_HEAD_REF=${{github.event.inputs.use_git_ref}}" >> $GITHUB_ENV @@ -458,7 +442,7 @@ jobs: timeout-minutes: 1440 steps: - name: prep - if: github.event_name == 'workflow_dispatch' + if: github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call' run: | echo "GITHUB_REPOSITORY=${{github.event.inputs.use_repo}}" >> $GITHUB_ENV echo "GITHUB_HEAD_REF=${{github.event.inputs.use_git_ref}}" >> $GITHUB_ENV @@ -493,7 +477,7 @@ jobs: timeout-minutes: 1440 steps: - name: prep - if: github.event_name == 'workflow_dispatch' + if: github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call' run: | echo "GITHUB_REPOSITORY=${{github.event.inputs.use_repo}}" >> $GITHUB_ENV echo "GITHUB_HEAD_REF=${{github.event.inputs.use_git_ref}}" >> $GITHUB_ENV @@ -532,7 +516,7 @@ jobs: timeout-minutes: 1440 steps: - name: prep - if: github.event_name == 'workflow_dispatch' + if: github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call' run: | echo "GITHUB_REPOSITORY=${{github.event.inputs.use_repo}}" >> $GITHUB_ENV echo "GITHUB_HEAD_REF=${{github.event.inputs.use_git_ref}}" >> $GITHUB_ENV @@ -609,7 +593,7 @@ jobs: timeout-minutes: 1440 steps: - name: prep - if: github.event_name == 'workflow_dispatch' + if: github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call' run: | echo "GITHUB_REPOSITORY=${{github.event.inputs.use_repo}}" >> $GITHUB_ENV echo "GITHUB_HEAD_REF=${{github.event.inputs.use_git_ref}}" >> $GITHUB_ENV @@ -642,7 +626,7 @@ jobs: timeout-minutes: 1440 steps: - name: prep - if: github.event_name == 'workflow_dispatch' + if: github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call' run: | echo "GITHUB_REPOSITORY=${{github.event.inputs.use_repo}}" >> $GITHUB_ENV echo "GITHUB_HEAD_REF=${{github.event.inputs.use_git_ref}}" >> $GITHUB_ENV @@ -680,7 +664,7 @@ jobs: timeout-minutes: 1440 steps: - name: prep - if: github.event_name == 'workflow_dispatch' + if: github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call' run: | echo "GITHUB_REPOSITORY=${{github.event.inputs.use_repo}}" >> $GITHUB_ENV echo "GITHUB_HEAD_REF=${{github.event.inputs.use_git_ref}}" >> $GITHUB_ENV @@ -713,7 +697,7 @@ jobs: timeout-minutes: 1440 steps: - name: prep - if: github.event_name == 'workflow_dispatch' + if: github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call' run: | echo "GITHUB_REPOSITORY=${{github.event.inputs.use_repo}}" >> $GITHUB_ENV echo "GITHUB_HEAD_REF=${{github.event.inputs.use_git_ref}}" >> $GITHUB_ENV @@ -757,7 +741,7 @@ jobs: CC: ${{ matrix.compiler }} steps: - name: prep - if: github.event_name == 'workflow_dispatch' + if: github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call' run: | echo "GITHUB_REPOSITORY=${{github.event.inputs.use_repo}}" >> $GITHUB_ENV echo "GITHUB_HEAD_REF=${{github.event.inputs.use_git_ref}}" >> $GITHUB_ENV @@ -814,7 +798,7 @@ jobs: CC: ${{ matrix.compiler }} steps: - name: prep - if: github.event_name == 'workflow_dispatch' + if: github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call' run: | echo "GITHUB_REPOSITORY=${{github.event.inputs.use_repo}}" >> $GITHUB_ENV echo "GITHUB_HEAD_REF=${{github.event.inputs.use_git_ref}}" >> $GITHUB_ENV @@ -867,7 +851,7 @@ jobs: fail-fast: false steps: - name: prep - if: github.event_name == 'workflow_dispatch' + if: github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call' run: | echo "GITHUB_REPOSITORY=${{github.event.inputs.use_repo}}" >> $GITHUB_ENV echo "GITHUB_HEAD_REF=${{github.event.inputs.use_git_ref}}" >> $GITHUB_ENV @@ -912,7 +896,7 @@ jobs: timeout-minutes: 1440 steps: - name: prep - if: github.event_name == 'workflow_dispatch' + if: github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call' run: | echo "GITHUB_REPOSITORY=${{github.event.inputs.use_repo}}" >> $GITHUB_ENV echo "GITHUB_HEAD_REF=${{github.event.inputs.use_git_ref}}" >> $GITHUB_ENV @@ -976,7 +960,7 @@ jobs: steps: - name: prep - if: github.event_name == 'workflow_dispatch' + if: github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call' run: | echo "GITHUB_REPOSITORY=${{github.event.inputs.use_repo}}" >> $GITHUB_ENV echo "GITHUB_HEAD_REF=${{github.event.inputs.use_git_ref}}" >> $GITHUB_ENV @@ -1043,7 +1027,7 @@ jobs: steps: - name: prep - if: github.event_name == 'workflow_dispatch' + if: github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call' run: | echo "GITHUB_REPOSITORY=${{github.event.inputs.use_repo}}" >> $GITHUB_ENV echo "GITHUB_HEAD_REF=${{github.event.inputs.use_git_ref}}" >> $GITHUB_ENV @@ -1116,7 +1100,7 @@ jobs: steps: - name: prep - if: github.event_name == 'workflow_dispatch' + if: github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call' run: | echo "GITHUB_REPOSITORY=${{github.event.inputs.use_repo}}" >> $GITHUB_ENV echo "GITHUB_HEAD_REF=${{github.event.inputs.use_git_ref}}" >> $GITHUB_ENV @@ -1167,7 +1151,7 @@ jobs: timeout-minutes: 1440 steps: - name: prep - if: github.event_name == 'workflow_dispatch' + if: github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call' run: | echo "GITHUB_REPOSITORY=${{github.event.inputs.use_repo}}" >> $GITHUB_ENV echo "GITHUB_HEAD_REF=${{github.event.inputs.use_git_ref}}" >> $GITHUB_ENV @@ -1199,7 +1183,7 @@ jobs: timeout-minutes: 1440 steps: - name: prep - if: github.event_name == 'workflow_dispatch' + if: github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call' run: | echo "GITHUB_REPOSITORY=${{github.event.inputs.use_repo}}" >> $GITHUB_ENV echo "GITHUB_HEAD_REF=${{github.event.inputs.use_git_ref}}" >> $GITHUB_ENV @@ -1228,7 +1212,7 @@ jobs: timeout-minutes: 1440 steps: - name: prep - if: github.event_name == 'workflow_dispatch' + if: github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call' run: | echo "GITHUB_REPOSITORY=${{github.event.inputs.use_repo}}" >> $GITHUB_ENV echo "GITHUB_HEAD_REF=${{github.event.inputs.use_git_ref}}" >> $GITHUB_ENV @@ -1264,7 +1248,7 @@ jobs: with: xcode-version: latest - name: prep - if: github.event_name == 'workflow_dispatch' + if: github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call' run: | echo "GITHUB_REPOSITORY=${{github.event.inputs.use_repo}}" >> $GITHUB_ENV echo "GITHUB_HEAD_REF=${{github.event.inputs.use_git_ref}}" >> $GITHUB_ENV @@ -1290,7 +1274,7 @@ jobs: timeout-minutes: 1440 steps: - name: prep - if: github.event_name == 'workflow_dispatch' + if: github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call' run: | echo "GITHUB_REPOSITORY=${{github.event.inputs.use_repo}}" >> $GITHUB_ENV echo "GITHUB_HEAD_REF=${{github.event.inputs.use_git_ref}}" >> $GITHUB_ENV @@ -1321,7 +1305,7 @@ jobs: container: alpine:latest steps: - name: prep - if: github.event_name == 'workflow_dispatch' + if: github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call' run: | echo "GITHUB_REPOSITORY=${{github.event.inputs.use_repo}}" >> $GITHUB_ENV echo "GITHUB_HEAD_REF=${{github.event.inputs.use_git_ref}}" >> $GITHUB_ENV @@ -1363,7 +1347,7 @@ jobs: container: alpine:latest steps: - name: prep - if: github.event_name == 'workflow_dispatch' + if: github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call' run: | echo "GITHUB_REPOSITORY=${{github.event.inputs.use_repo}}" >> $GITHUB_ENV echo "GITHUB_HEAD_REF=${{github.event.inputs.use_git_ref}}" >> $GITHUB_ENV @@ -1405,7 +1389,7 @@ jobs: !contains(github.event.inputs.skipjobs, 'reply-schema') steps: - name: prep - if: github.event_name == 'workflow_dispatch' + if: github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call' run: | echo "GITHUB_REPOSITORY=${{github.event.inputs.use_repo}}" >> $GITHUB_ENV echo "GITHUB_HEAD_REF=${{github.event.inputs.use_git_ref}}" >> $GITHUB_ENV diff --git a/.github/workflows/merge-queue.yml b/.github/workflows/merge-queue.yml index b72c792e27..d7ffb052b0 100644 --- a/.github/workflows/merge-queue.yml +++ b/.github/workflows/merge-queue.yml @@ -5,4 +5,7 @@ on: jobs: call-daily-tests: - uses: ./.github/workflows/daily.yml \ No newline at end of file + uses: ./.github/workflows/daily.yml + with: + skipjobs: "valgrind,macos" + skiptests: "" From 4cc20f50b82de0f7efe5abc1a00eec8f0bb11fed Mon Sep 17 00:00:00 2001 From: Nikhil Manglore Date: Mon, 24 Nov 2025 07:26:06 +0000 Subject: [PATCH 5/5] Updated merge queue Signed-off-by: Nikhil Manglore --- .github/workflows/daily.yml | 949 ++++++++++++++++-------------- .github/workflows/merge-queue.yml | 4 + 2 files changed, 500 insertions(+), 453 deletions(-) diff --git a/.github/workflows/daily.yml b/.github/workflows/daily.yml index 9dc0010673..4f644577e0 100644 --- a/.github/workflows/daily.yml +++ b/.github/workflows/daily.yml @@ -35,13 +35,23 @@ on: workflow_call: inputs: skipjobs: - description: "jobs to skip" type: string default: "" skiptests: - description: "tests to skip" type: string default: "" + test_args: + type: string + default: "" + cluster_test_args: + type: string + default: "" + use_repo: + type: string + default: "valkey-io/valkey" + use_git_ref: + type: string + default: "unstable" concurrency: group: daily-${{ github.head_ref || github.ref }} @@ -56,20 +66,21 @@ jobs: if: | (github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call' || + github.event_name == 'merge_group' || (github.event_name == 'schedule' && github.repository == 'valkey-io/valkey') || (github.event_name == 'pull_request' && (contains(github.event.pull_request.labels.*.name, 'run-extra-tests') || github.event.pull_request.base.ref != 'unstable'))) && - !contains(github.event.inputs.skipjobs, 'ubuntu') + !contains(inputs.skipjobs || github.event.inputs.skipjobs, 'ubuntu') timeout-minutes: 1440 steps: - name: prep - if: github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call' - run: | - echo "GITHUB_REPOSITORY=${{github.event.inputs.use_repo}}" >> $GITHUB_ENV - echo "GITHUB_HEAD_REF=${{github.event.inputs.use_git_ref}}" >> $GITHUB_ENV - echo "skipjobs: ${{github.event.inputs.skipjobs}}" - echo "skiptests: ${{github.event.inputs.skiptests}}" - echo "test_args: ${{github.event.inputs.test_args}}" - echo "cluster_test_args: ${{github.event.inputs.cluster_test_args}}" + if: github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call' || github.event_name == 'merge_group' + run: | + echo "GITHUB_REPOSITORY=${{inputs.use_repo || github.event.inputs.use_repo}}" >> $GITHUB_ENV + echo "GITHUB_HEAD_REF=${{inputs.use_git_ref || github.event.inputs.use_git_ref}}" >> $GITHUB_ENV + echo "skipjobs: ${{inputs.skipjobs || github.event.inputs.skipjobs}}" + echo "skiptests: ${{inputs.skiptests || github.event.inputs.skiptests}}" + echo "test_args: ${{inputs.test_args || github.event.inputs.test_args}}" + echo "cluster_test_args: ${{inputs.cluster_test_args || github.event.inputs.cluster_test_args}}" - uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1 with: repository: ${{ env.GITHUB_REPOSITORY }} @@ -79,19 +90,19 @@ jobs: - name: testprep run: sudo apt-get install tcl8.6 tclx - name: test - if: true && !contains(github.event.inputs.skiptests, 'valkey') - run: ./runtest ${{ github.event_name != 'pull_request' && '--accurate' || '' }} --verbose --dump-logs ${{github.event.inputs.test_args}} + if: true && !contains(inputs.skiptests || github.event.inputs.skiptests, 'valkey') + run: ./runtest ${{ github.event_name != 'pull_request' && '--accurate' || '' }} --verbose --dump-logs ${{inputs.test_args || github.event.inputs.test_args || ''}} - name: module api test - if: true && !contains(github.event.inputs.skiptests, 'modules') - run: CFLAGS='-Werror' ./runtest-moduleapi --verbose --dump-logs ${{github.event.inputs.test_args}} + if: true && !contains(inputs.skiptests || github.event.inputs.skiptests, 'modules') + run: CFLAGS='-Werror' ./runtest-moduleapi --verbose --dump-logs ${{inputs.test_args || github.event.inputs.test_args || ''}} - name: sentinel tests - if: true && !contains(github.event.inputs.skiptests, 'sentinel') - run: ./runtest-sentinel ${{github.event.inputs.cluster_test_args}} + if: true && !contains(inputs.skiptests || github.event.inputs.skiptests, 'sentinel') + run: ./runtest-sentinel ${{inputs.cluster_test_args || github.event.inputs.cluster_test_args || ''}} - name: cluster tests - if: true && !contains(github.event.inputs.skiptests, 'cluster') - run: ./runtest-cluster ${{github.event.inputs.cluster_test_args}} + if: true && !contains(inputs.skiptests || github.event.inputs.skiptests, 'cluster') + run: ./runtest-cluster ${{inputs.cluster_test_args || github.event.inputs.cluster_test_args || ''}} - name: unittest - if: true && !contains(github.event.inputs.skiptests, 'unittest') + if: true && !contains(inputs.skiptests || github.event.inputs.skiptests, 'unittest') run: ./src/valkey-unit-tests --accurate - name: install Redis OSS 6.2 server for compatibility testing run: | @@ -125,20 +136,21 @@ jobs: if: | (github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call' || + github.event_name == 'merge_group' || (github.event_name == 'schedule' && github.repository == 'valkey-io/valkey') || (github.event_name == 'pull_request' && (contains(github.event.pull_request.labels.*.name, 'run-extra-tests') || github.event.pull_request.base.ref != 'unstable'))) && - (!contains(github.event.inputs.skipjobs, 'ubuntu') || !contains(github.event.inputs.skipjobs, 'arm')) + !contains(inputs.skipjobs || github.event.inputs.skipjobs, 'ubuntu') && !contains(inputs.skipjobs || github.event.inputs.skipjobs, 'arm') timeout-minutes: 14400 steps: - name: prep - if: github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call' - run: | - echo "GITHUB_REPOSITORY=${{github.event.inputs.use_repo}}" >> $GITHUB_ENV - echo "GITHUB_HEAD_REF=${{github.event.inputs.use_git_ref}}" >> $GITHUB_ENV - echo "skipjobs: ${{github.event.inputs.skipjobs}}" - echo "skiptests: ${{github.event.inputs.skiptests}}" - echo "test_args: ${{github.event.inputs.test_args}}" - echo "cluster_test_args: ${{github.event.inputs.cluster_test_args}}" + if: github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call' || github.event_name == 'merge_group' + run: | + echo "GITHUB_REPOSITORY=${{inputs.use_repo || github.event.inputs.use_repo}}" >> $GITHUB_ENV + echo "GITHUB_HEAD_REF=${{inputs.use_git_ref || github.event.inputs.use_git_ref}}" >> $GITHUB_ENV + echo "skipjobs: ${{inputs.skipjobs || github.event.inputs.skipjobs}}" + echo "skiptests: ${{inputs.skiptests || github.event.inputs.skiptests}}" + echo "test_args: ${{inputs.test_args || github.event.inputs.test_args}}" + echo "cluster_test_args: ${{inputs.cluster_test_args || github.event.inputs.cluster_test_args}}" - uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1 with: repository: ${{ env.GITHUB_REPOSITORY }} @@ -148,19 +160,19 @@ jobs: - name: testprep run: sudo apt-get install tcl8.6 tclx - name: test - if: true && !contains(github.event.inputs.skiptests, 'valkey') - run: ./runtest ${{ github.event_name != 'pull_request' && '--accurate' || '' }} --verbose --dump-logs ${{github.event.inputs.test_args}} + if: true && !contains(inputs.skiptests || github.event.inputs.skiptests, 'valkey') + run: ./runtest ${{ github.event_name != 'pull_request' && '--accurate' || '' }} --verbose --dump-logs ${{inputs.test_args || github.event.inputs.test_args || ''}} - name: module api test - if: true && !contains(github.event.inputs.skiptests, 'modules') - run: CFLAGS='-Werror' ./runtest-moduleapi --verbose --dump-logs ${{github.event.inputs.test_args}} + if: true && !contains(inputs.skiptests || github.event.inputs.skiptests, 'modules') + run: CFLAGS='-Werror' ./runtest-moduleapi --verbose --dump-logs ${{inputs.test_args || github.event.inputs.test_args || ''}} - name: sentinel tests - if: true && !contains(github.event.inputs.skiptests, 'sentinel') - run: ./runtest-sentinel ${{github.event.inputs.cluster_test_args}} + if: true && !contains(inputs.skiptests || github.event.inputs.skiptests, 'sentinel') + run: ./runtest-sentinel ${{inputs.cluster_test_args || github.event.inputs.cluster_test_args || ''}} - name: cluster tests - if: true && !contains(github.event.inputs.skiptests, 'cluster') - run: ./runtest-cluster ${{github.event.inputs.cluster_test_args}} + if: true && !contains(inputs.skiptests || github.event.inputs.skiptests, 'cluster') + run: ./runtest-cluster ${{inputs.cluster_test_args || github.event.inputs.cluster_test_args || ''}} - name: unittest - if: true && !contains(github.event.inputs.skiptests, 'unittest') + if: true && !contains(inputs.skiptests || github.event.inputs.skiptests, 'unittest') run: ./src/valkey-unit-tests --accurate test-ubuntu-jemalloc-fortify: @@ -168,21 +180,22 @@ jobs: if: | (github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call' || + github.event_name == 'merge_group' || (github.event_name == 'schedule' && github.repository == 'valkey-io/valkey') || (github.event_name == 'pull_request' && (contains(github.event.pull_request.labels.*.name, 'run-extra-tests') || github.event.pull_request.base.ref != 'unstable'))) && - !contains(github.event.inputs.skipjobs, 'fortify') + !contains(inputs.skipjobs || github.event.inputs.skipjobs, 'fortify') container: ubuntu:plucky timeout-minutes: 1440 steps: - name: prep - if: github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call' - run: | - echo "GITHUB_REPOSITORY=${{github.event.inputs.use_repo}}" >> $GITHUB_ENV - echo "GITHUB_HEAD_REF=${{github.event.inputs.use_git_ref}}" >> $GITHUB_ENV - echo "skipjobs: ${{github.event.inputs.skipjobs}}" - echo "skiptests: ${{github.event.inputs.skiptests}}" - echo "test_args: ${{github.event.inputs.test_args}}" - echo "cluster_test_args: ${{github.event.inputs.cluster_test_args}}" + if: github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call' || github.event_name == 'merge_group' + run: | + echo "GITHUB_REPOSITORY=${{inputs.use_repo || github.event.inputs.use_repo}}" >> $GITHUB_ENV + echo "GITHUB_HEAD_REF=${{inputs.use_git_ref || github.event.inputs.use_git_ref}}" >> $GITHUB_ENV + echo "skipjobs: ${{inputs.skipjobs || github.event.inputs.skipjobs}}" + echo "skiptests: ${{inputs.skiptests || github.event.inputs.skiptests}}" + echo "test_args: ${{inputs.test_args || github.event.inputs.test_args}}" + echo "cluster_test_args: ${{inputs.cluster_test_args || github.event.inputs.cluster_test_args}}" - uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1 with: repository: ${{ env.GITHUB_REPOSITORY }} @@ -195,19 +208,19 @@ jobs: - name: testprep run: apt-get install -y tcl8.6 tclx procps - name: test - if: true && !contains(github.event.inputs.skiptests, 'valkey') - run: ./runtest ${{ github.event_name != 'pull_request' && '--accurate' || '' }} --verbose --dump-logs ${{github.event.inputs.test_args}} + if: true && !contains(inputs.skiptests || github.event.inputs.skiptests, 'valkey') + run: ./runtest ${{ github.event_name != 'pull_request' && '--accurate' || '' }} --verbose --dump-logs ${{inputs.test_args || github.event.inputs.test_args || ''}} - name: module api test - if: true && !contains(github.event.inputs.skiptests, 'modules') - run: CFLAGS='-Werror' ./runtest-moduleapi --verbose --dump-logs ${{github.event.inputs.test_args}} + if: true && !contains(inputs.skiptests || github.event.inputs.skiptests, 'modules') + run: CFLAGS='-Werror' ./runtest-moduleapi --verbose --dump-logs ${{inputs.test_args || github.event.inputs.test_args || ''}} - name: sentinel tests - if: true && !contains(github.event.inputs.skiptests, 'sentinel') - run: ./runtest-sentinel ${{github.event.inputs.cluster_test_args}} + if: true && !contains(inputs.skiptests || github.event.inputs.skiptests, 'sentinel') + run: ./runtest-sentinel ${{inputs.cluster_test_args || github.event.inputs.cluster_test_args || ''}} - name: cluster tests - if: true && !contains(github.event.inputs.skiptests, 'cluster') - run: ./runtest-cluster ${{github.event.inputs.cluster_test_args}} + if: true && !contains(inputs.skiptests || github.event.inputs.skiptests, 'cluster') + run: ./runtest-cluster ${{inputs.cluster_test_args || github.event.inputs.cluster_test_args || ''}} - name: unittest - if: true && !contains(github.event.inputs.skiptests, 'unittest') + if: true && !contains(inputs.skiptests || github.event.inputs.skiptests, 'unittest') run: ./src/valkey-unit-tests --accurate test-ubuntu-libc-malloc: @@ -215,20 +228,21 @@ jobs: if: | (github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call' || + github.event_name == 'merge_group' || (github.event_name == 'schedule' && github.repository == 'valkey-io/valkey') || (github.event_name == 'pull_request' && (contains(github.event.pull_request.labels.*.name, 'run-extra-tests') || github.event.pull_request.base.ref != 'unstable'))) && - !contains(github.event.inputs.skipjobs, 'malloc') + !contains(inputs.skipjobs || github.event.inputs.skipjobs, 'malloc') timeout-minutes: 1440 steps: - name: prep - if: github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call' - run: | - echo "GITHUB_REPOSITORY=${{github.event.inputs.use_repo}}" >> $GITHUB_ENV - echo "GITHUB_HEAD_REF=${{github.event.inputs.use_git_ref}}" >> $GITHUB_ENV - echo "skipjobs: ${{github.event.inputs.skipjobs}}" - echo "skiptests: ${{github.event.inputs.skiptests}}" - echo "test_args: ${{github.event.inputs.test_args}}" - echo "cluster_test_args: ${{github.event.inputs.cluster_test_args}}" + if: github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call' || github.event_name == 'merge_group' + run: | + echo "GITHUB_REPOSITORY=${{inputs.use_repo || github.event.inputs.use_repo}}" >> $GITHUB_ENV + echo "GITHUB_HEAD_REF=${{inputs.use_git_ref || github.event.inputs.use_git_ref}}" >> $GITHUB_ENV + echo "skipjobs: ${{inputs.skipjobs || github.event.inputs.skipjobs}}" + echo "skiptests: ${{inputs.skiptests || github.event.inputs.skiptests}}" + echo "test_args: ${{inputs.test_args || github.event.inputs.test_args}}" + echo "cluster_test_args: ${{inputs.cluster_test_args || github.event.inputs.cluster_test_args}}" - uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1 with: repository: ${{ env.GITHUB_REPOSITORY }} @@ -238,37 +252,38 @@ jobs: - name: testprep run: sudo apt-get install tcl8.6 tclx - name: test - if: true && !contains(github.event.inputs.skiptests, 'valkey') - run: ./runtest ${{ github.event_name != 'pull_request' && '--accurate' || '' }} --verbose --dump-logs ${{github.event.inputs.test_args}} + if: true && !contains(inputs.skiptests || github.event.inputs.skiptests, 'valkey') + run: ./runtest ${{ github.event_name != 'pull_request' && '--accurate' || '' }} --verbose --dump-logs ${{inputs.test_args || github.event.inputs.test_args || ''}} - name: module api test - if: true && !contains(github.event.inputs.skiptests, 'modules') - run: CFLAGS='-Werror' ./runtest-moduleapi --verbose --dump-logs ${{github.event.inputs.test_args}} + if: true && !contains(inputs.skiptests || github.event.inputs.skiptests, 'modules') + run: CFLAGS='-Werror' ./runtest-moduleapi --verbose --dump-logs ${{inputs.test_args || github.event.inputs.test_args || ''}} - name: sentinel tests - if: true && !contains(github.event.inputs.skiptests, 'sentinel') - run: ./runtest-sentinel ${{github.event.inputs.cluster_test_args}} + if: true && !contains(inputs.skiptests || github.event.inputs.skiptests, 'sentinel') + run: ./runtest-sentinel ${{inputs.cluster_test_args || github.event.inputs.cluster_test_args || ''}} - name: cluster tests - if: true && !contains(github.event.inputs.skiptests, 'cluster') - run: ./runtest-cluster ${{github.event.inputs.cluster_test_args}} + if: true && !contains(inputs.skiptests || github.event.inputs.skiptests, 'cluster') + run: ./runtest-cluster ${{inputs.cluster_test_args || github.event.inputs.cluster_test_args || ''}} test-ubuntu-no-malloc-usable-size: runs-on: ubuntu-latest if: | (github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call' || + github.event_name == 'merge_group' || (github.event_name == 'schedule' && github.repository == 'valkey-io/valkey') || (github.event_name == 'pull_request' && (contains(github.event.pull_request.labels.*.name, 'run-extra-tests') || github.event.pull_request.base.ref != 'unstable'))) && - !contains(github.event.inputs.skipjobs, 'malloc') + !contains(inputs.skipjobs || github.event.inputs.skipjobs, 'malloc') timeout-minutes: 1440 steps: - name: prep - if: github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call' - run: | - echo "GITHUB_REPOSITORY=${{github.event.inputs.use_repo}}" >> $GITHUB_ENV - echo "GITHUB_HEAD_REF=${{github.event.inputs.use_git_ref}}" >> $GITHUB_ENV - echo "skipjobs: ${{github.event.inputs.skipjobs}}" - echo "skiptests: ${{github.event.inputs.skiptests}}" - echo "test_args: ${{github.event.inputs.test_args}}" - echo "cluster_test_args: ${{github.event.inputs.cluster_test_args}}" + if: github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call' || github.event_name == 'merge_group' + run: | + echo "GITHUB_REPOSITORY=${{inputs.use_repo || github.event.inputs.use_repo}}" >> $GITHUB_ENV + echo "GITHUB_HEAD_REF=${{inputs.use_git_ref || github.event.inputs.use_git_ref}}" >> $GITHUB_ENV + echo "skipjobs: ${{inputs.skipjobs || github.event.inputs.skipjobs}}" + echo "skiptests: ${{inputs.skiptests || github.event.inputs.skiptests}}" + echo "test_args: ${{inputs.test_args || github.event.inputs.test_args}}" + echo "cluster_test_args: ${{inputs.cluster_test_args || github.event.inputs.cluster_test_args}}" - uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1 with: repository: ${{ env.GITHUB_REPOSITORY }} @@ -278,37 +293,38 @@ jobs: - name: testprep run: sudo apt-get install tcl8.6 tclx - name: test - if: true && !contains(github.event.inputs.skiptests, 'valkey') - run: ./runtest ${{ github.event_name != 'pull_request' && '--accurate' || '' }} --verbose --dump-logs ${{github.event.inputs.test_args}} + if: true && !contains(inputs.skiptests || github.event.inputs.skiptests, 'valkey') + run: ./runtest ${{ github.event_name != 'pull_request' && '--accurate' || '' }} --verbose --dump-logs ${{inputs.test_args || github.event.inputs.test_args || ''}} - name: module api test - if: true && !contains(github.event.inputs.skiptests, 'modules') - run: CFLAGS='-Werror' ./runtest-moduleapi --verbose --dump-logs ${{github.event.inputs.test_args}} + if: true && !contains(inputs.skiptests || github.event.inputs.skiptests, 'modules') + run: CFLAGS='-Werror' ./runtest-moduleapi --verbose --dump-logs ${{inputs.test_args || github.event.inputs.test_args || ''}} - name: sentinel tests - if: true && !contains(github.event.inputs.skiptests, 'sentinel') - run: ./runtest-sentinel ${{github.event.inputs.cluster_test_args}} + if: true && !contains(inputs.skiptests || github.event.inputs.skiptests, 'sentinel') + run: ./runtest-sentinel ${{inputs.cluster_test_args || github.event.inputs.cluster_test_args || ''}} - name: cluster tests - if: true && !contains(github.event.inputs.skiptests, 'cluster') - run: ./runtest-cluster ${{github.event.inputs.cluster_test_args}} + if: true && !contains(inputs.skiptests || github.event.inputs.skiptests, 'cluster') + run: ./runtest-cluster ${{inputs.cluster_test_args || github.event.inputs.cluster_test_args || ''}} test-ubuntu-32bit: runs-on: ubuntu-latest if: | (github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call' || + github.event_name == 'merge_group' || (github.event_name == 'schedule' && github.repository == 'valkey-io/valkey') || (github.event_name == 'pull_request' && (contains(github.event.pull_request.labels.*.name, 'run-extra-tests') || github.event.pull_request.base.ref != 'unstable'))) && - !contains(github.event.inputs.skipjobs, '32bit') + !contains(inputs.skipjobs || github.event.inputs.skipjobs, '32bit') timeout-minutes: 1440 steps: - name: prep - if: github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call' - run: | - echo "GITHUB_REPOSITORY=${{github.event.inputs.use_repo}}" >> $GITHUB_ENV - echo "GITHUB_HEAD_REF=${{github.event.inputs.use_git_ref}}" >> $GITHUB_ENV - echo "skipjobs: ${{github.event.inputs.skipjobs}}" - echo "skiptests: ${{github.event.inputs.skiptests}}" - echo "test_args: ${{github.event.inputs.test_args}}" - echo "cluster_test_args: ${{github.event.inputs.cluster_test_args}}" + if: github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call' || github.event_name == 'merge_group' + run: | + echo "GITHUB_REPOSITORY=${{inputs.use_repo || github.event.inputs.use_repo}}" >> $GITHUB_ENV + echo "GITHUB_HEAD_REF=${{inputs.use_git_ref || github.event.inputs.use_git_ref}}" >> $GITHUB_ENV + echo "skipjobs: ${{inputs.skipjobs || github.event.inputs.skipjobs}}" + echo "skiptests: ${{inputs.skiptests || github.event.inputs.skiptests}}" + echo "test_args: ${{inputs.test_args || github.event.inputs.test_args}}" + echo "cluster_test_args: ${{inputs.cluster_test_args || github.event.inputs.cluster_test_args}}" - uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1 with: repository: ${{ env.GITHUB_REPOSITORY }} @@ -320,21 +336,21 @@ jobs: - name: testprep run: sudo apt-get install tcl8.6 tclx - name: test - if: true && !contains(github.event.inputs.skiptests, 'valkey') - run: ./runtest ${{ github.event_name != 'pull_request' && '--accurate' || '' }} --verbose --dump-logs ${{github.event.inputs.test_args}} + if: true && !contains(inputs.skiptests || github.event.inputs.skiptests, 'valkey') + run: ./runtest ${{ github.event_name != 'pull_request' && '--accurate' || '' }} --verbose --dump-logs ${{inputs.test_args || github.event.inputs.test_args || ''}} - name: module api test - if: true && !contains(github.event.inputs.skiptests, 'modules') + if: true && !contains(inputs.skiptests || github.event.inputs.skiptests, 'modules') run: | make -C tests/modules 32bit # the script below doesn't have an argument, we must build manually ahead of time - CFLAGS='-Werror' ./runtest-moduleapi --verbose --dump-logs ${{github.event.inputs.test_args}} + CFLAGS='-Werror' ./runtest-moduleapi --verbose --dump-logs ${{inputs.test_args || github.event.inputs.test_args || ''}} - name: sentinel tests - if: true && !contains(github.event.inputs.skiptests, 'sentinel') - run: ./runtest-sentinel ${{github.event.inputs.cluster_test_args}} + if: true && !contains(inputs.skiptests || github.event.inputs.skiptests, 'sentinel') + run: ./runtest-sentinel ${{inputs.cluster_test_args || github.event.inputs.cluster_test_args || ''}} - name: cluster tests - if: true && !contains(github.event.inputs.skiptests, 'cluster') - run: ./runtest-cluster ${{github.event.inputs.cluster_test_args}} + if: true && !contains(inputs.skiptests || github.event.inputs.skiptests, 'cluster') + run: ./runtest-cluster ${{inputs.cluster_test_args || github.event.inputs.cluster_test_args || ''}} - name: unittest - if: true && !contains(github.event.inputs.skiptests, 'unittest') + if: true && !contains(inputs.skiptests || github.event.inputs.skiptests, 'unittest') run: ./src/valkey-unit-tests --accurate test-ubuntu-tls: @@ -342,20 +358,21 @@ jobs: if: | (github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call' || + github.event_name == 'merge_group' || (github.event_name == 'schedule' && github.repository == 'valkey-io/valkey') || (github.event_name == 'pull_request' && (contains(github.event.pull_request.labels.*.name, 'run-extra-tests') || github.event.pull_request.base.ref != 'unstable'))) && - !contains(github.event.inputs.skipjobs, 'tls') + !contains(inputs.skipjobs || github.event.inputs.skipjobs, 'tls') timeout-minutes: 1440 steps: - name: prep - if: github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call' - run: | - echo "GITHUB_REPOSITORY=${{github.event.inputs.use_repo}}" >> $GITHUB_ENV - echo "GITHUB_HEAD_REF=${{github.event.inputs.use_git_ref}}" >> $GITHUB_ENV - echo "skipjobs: ${{github.event.inputs.skipjobs}}" - echo "skiptests: ${{github.event.inputs.skiptests}}" - echo "test_args: ${{github.event.inputs.test_args}}" - echo "cluster_test_args: ${{github.event.inputs.cluster_test_args}}" + if: github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call' || github.event_name == 'merge_group' + run: | + echo "GITHUB_REPOSITORY=${{inputs.use_repo || github.event.inputs.use_repo}}" >> $GITHUB_ENV + echo "GITHUB_HEAD_REF=${{inputs.use_git_ref || github.event.inputs.use_git_ref}}" >> $GITHUB_ENV + echo "skipjobs: ${{inputs.skipjobs || github.event.inputs.skipjobs}}" + echo "skiptests: ${{inputs.skiptests || github.event.inputs.skiptests}}" + echo "test_args: ${{inputs.test_args || github.event.inputs.test_args}}" + echo "cluster_test_args: ${{inputs.cluster_test_args || github.event.inputs.cluster_test_args}}" - uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1 with: repository: ${{ env.GITHUB_REPOSITORY }} @@ -368,41 +385,42 @@ jobs: sudo apt-get install tcl8.6 tclx tcl-tls ./utils/gen-test-certs.sh - name: test - if: true && !contains(github.event.inputs.skiptests, 'valkey') + if: true && !contains(inputs.skiptests || github.event.inputs.skiptests, 'valkey') run: | - ./runtest ${{ github.event_name != 'pull_request' && '--accurate' || '' }} --verbose --dump-logs --tls --dump-logs ${{github.event.inputs.test_args}} + ./runtest ${{ github.event_name != 'pull_request' && '--accurate' || '' }} --verbose --dump-logs --tls --dump-logs ${{inputs.test_args || github.event.inputs.test_args || ''}} - name: module api test - if: true && !contains(github.event.inputs.skiptests, 'modules') + if: true && !contains(inputs.skiptests || github.event.inputs.skiptests, 'modules') run: | - CFLAGS='-Werror' ./runtest-moduleapi --verbose --dump-logs --tls --dump-logs ${{github.event.inputs.test_args}} + CFLAGS='-Werror' ./runtest-moduleapi --verbose --dump-logs --tls --dump-logs ${{inputs.test_args || github.event.inputs.test_args || ''}} - name: sentinel tests - if: true && !contains(github.event.inputs.skiptests, 'sentinel') + if: true && !contains(inputs.skiptests || github.event.inputs.skiptests, 'sentinel') run: | - ./runtest-sentinel --tls ${{github.event.inputs.cluster_test_args}} + ./runtest-sentinel --tls ${{inputs.cluster_test_args || github.event.inputs.cluster_test_args || ''}} - name: cluster tests - if: true && !contains(github.event.inputs.skiptests, 'cluster') + if: true && !contains(inputs.skiptests || github.event.inputs.skiptests, 'cluster') run: | - ./runtest-cluster --tls ${{github.event.inputs.cluster_test_args}} + ./runtest-cluster --tls ${{inputs.cluster_test_args || github.event.inputs.cluster_test_args || ''}} test-ubuntu-tls-no-tls: runs-on: ubuntu-latest if: | (github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call' || + github.event_name == 'merge_group' || (github.event_name == 'schedule' && github.repository == 'valkey-io/valkey') || (github.event_name == 'pull_request' && (contains(github.event.pull_request.labels.*.name, 'run-extra-tests') || github.event.pull_request.base.ref != 'unstable'))) && - !contains(github.event.inputs.skipjobs, 'tls') + !contains(inputs.skipjobs || github.event.inputs.skipjobs, 'tls') timeout-minutes: 1440 steps: - name: prep - if: github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call' - run: | - echo "GITHUB_REPOSITORY=${{github.event.inputs.use_repo}}" >> $GITHUB_ENV - echo "GITHUB_HEAD_REF=${{github.event.inputs.use_git_ref}}" >> $GITHUB_ENV - echo "skipjobs: ${{github.event.inputs.skipjobs}}" - echo "skiptests: ${{github.event.inputs.skiptests}}" - echo "test_args: ${{github.event.inputs.test_args}}" - echo "cluster_test_args: ${{github.event.inputs.cluster_test_args}}" + if: github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call' || github.event_name == 'merge_group' + run: | + echo "GITHUB_REPOSITORY=${{inputs.use_repo || github.event.inputs.use_repo}}" >> $GITHUB_ENV + echo "GITHUB_HEAD_REF=${{inputs.use_git_ref || github.event.inputs.use_git_ref}}" >> $GITHUB_ENV + echo "skipjobs: ${{inputs.skipjobs || github.event.inputs.skipjobs}}" + echo "skiptests: ${{inputs.skiptests || github.event.inputs.skiptests}}" + echo "test_args: ${{inputs.test_args || github.event.inputs.test_args}}" + echo "cluster_test_args: ${{inputs.cluster_test_args || github.event.inputs.cluster_test_args}}" - uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1 with: repository: ${{ env.GITHUB_REPOSITORY }} @@ -415,41 +433,42 @@ jobs: sudo apt-get install tcl8.6 tclx tcl-tls ./utils/gen-test-certs.sh - name: test - if: true && !contains(github.event.inputs.skiptests, 'valkey') + if: true && !contains(inputs.skiptests || github.event.inputs.skiptests, 'valkey') run: | - ./runtest ${{ github.event_name != 'pull_request' && '--accurate' || '' }} --verbose --dump-logs ${{github.event.inputs.test_args}} + ./runtest ${{ github.event_name != 'pull_request' && '--accurate' || '' }} --verbose --dump-logs ${{inputs.test_args || github.event.inputs.test_args || ''}} - name: module api test - if: true && !contains(github.event.inputs.skiptests, 'modules') + if: true && !contains(inputs.skiptests || github.event.inputs.skiptests, 'modules') run: | - CFLAGS='-Werror' ./runtest-moduleapi --verbose --dump-logs ${{github.event.inputs.test_args}} + CFLAGS='-Werror' ./runtest-moduleapi --verbose --dump-logs ${{inputs.test_args || github.event.inputs.test_args || ''}} - name: sentinel tests - if: true && !contains(github.event.inputs.skiptests, 'sentinel') + if: true && !contains(inputs.skiptests || github.event.inputs.skiptests, 'sentinel') run: | - ./runtest-sentinel ${{github.event.inputs.cluster_test_args}} + ./runtest-sentinel ${{inputs.cluster_test_args || github.event.inputs.cluster_test_args || ''}} - name: cluster tests - if: true && !contains(github.event.inputs.skiptests, 'cluster') + if: true && !contains(inputs.skiptests || github.event.inputs.skiptests, 'cluster') run: | - ./runtest-cluster ${{github.event.inputs.cluster_test_args}} + ./runtest-cluster ${{inputs.cluster_test_args || github.event.inputs.cluster_test_args || ''}} test-ubuntu-io-threads: runs-on: ubuntu-latest if: | (github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call' || + github.event_name == 'merge_group' || (github.event_name == 'schedule' && github.repository == 'valkey-io/valkey') || (github.event_name == 'pull_request' && (contains(github.event.pull_request.labels.*.name, 'run-extra-tests') || github.event.pull_request.base.ref != 'unstable'))) && - !contains(github.event.inputs.skipjobs, 'iothreads') + !contains(inputs.skipjobs || github.event.inputs.skipjobs, 'iothreads') timeout-minutes: 1440 steps: - name: prep - if: github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call' - run: | - echo "GITHUB_REPOSITORY=${{github.event.inputs.use_repo}}" >> $GITHUB_ENV - echo "GITHUB_HEAD_REF=${{github.event.inputs.use_git_ref}}" >> $GITHUB_ENV - echo "skipjobs: ${{github.event.inputs.skipjobs}}" - echo "skiptests: ${{github.event.inputs.skiptests}}" - echo "test_args: ${{github.event.inputs.test_args}}" - echo "cluster_test_args: ${{github.event.inputs.cluster_test_args}}" + if: github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call' || github.event_name == 'merge_group' + run: | + echo "GITHUB_REPOSITORY=${{inputs.use_repo || github.event.inputs.use_repo}}" >> $GITHUB_ENV + echo "GITHUB_HEAD_REF=${{inputs.use_git_ref || github.event.inputs.use_git_ref}}" >> $GITHUB_ENV + echo "skipjobs: ${{inputs.skipjobs || github.event.inputs.skipjobs}}" + echo "skiptests: ${{inputs.skiptests || github.event.inputs.skiptests}}" + echo "test_args: ${{inputs.test_args || github.event.inputs.test_args}}" + echo "cluster_test_args: ${{inputs.cluster_test_args || github.event.inputs.cluster_test_args}}" - uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1 with: repository: ${{ env.GITHUB_REPOSITORY }} @@ -460,31 +479,32 @@ jobs: - name: testprep run: sudo apt-get install tcl8.6 tclx - name: test - if: true && !contains(github.event.inputs.skiptests, 'valkey') - run: ./runtest --io-threads --accurate --verbose --tags network --dump-logs ${{github.event.inputs.test_args}} + if: true && !contains(inputs.skiptests || github.event.inputs.skiptests, 'valkey') + run: ./runtest --io-threads --accurate --verbose --tags network --dump-logs ${{inputs.test_args || github.event.inputs.test_args || ''}} - name: cluster tests - if: true && !contains(github.event.inputs.skiptests, 'cluster') - run: ./runtest-cluster --io-threads ${{github.event.inputs.cluster_test_args}} + if: true && !contains(inputs.skiptests || github.event.inputs.skiptests, 'cluster') + run: ./runtest-cluster --io-threads ${{inputs.cluster_test_args || github.event.inputs.cluster_test_args || ''}} test-ubuntu-tls-io-threads: runs-on: ubuntu-latest if: | (github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call' || + github.event_name == 'merge_group' || (github.event_name == 'schedule' && github.repository == 'valkey-io/valkey') || (github.event_name == 'pull_request' && (contains(github.event.pull_request.labels.*.name, 'run-extra-tests') || github.event.pull_request.base.ref != 'unstable'))) && - !contains(github.event.inputs.skipjobs, 'tls') && !contains(github.event.inputs.skipjobs, 'iothreads') + !contains(inputs.skipjobs || github.event.inputs.skipjobs, 'tls') && !contains(inputs.skipjobs || github.event.inputs.skipjobs, 'iothreads') timeout-minutes: 1440 steps: - name: prep - if: github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call' - run: | - echo "GITHUB_REPOSITORY=${{github.event.inputs.use_repo}}" >> $GITHUB_ENV - echo "GITHUB_HEAD_REF=${{github.event.inputs.use_git_ref}}" >> $GITHUB_ENV - echo "skipjobs: ${{github.event.inputs.skipjobs}}" - echo "skiptests: ${{github.event.inputs.skiptests}}" - echo "test_args: ${{github.event.inputs.test_args}}" - echo "cluster_test_args: ${{github.event.inputs.cluster_test_args}}" + if: github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call' || github.event_name == 'merge_group' + run: | + echo "GITHUB_REPOSITORY=${{inputs.use_repo || github.event.inputs.use_repo}}" >> $GITHUB_ENV + echo "GITHUB_HEAD_REF=${{inputs.use_git_ref || github.event.inputs.use_git_ref}}" >> $GITHUB_ENV + echo "skipjobs: ${{inputs.skipjobs || github.event.inputs.skipjobs}}" + echo "skiptests: ${{inputs.skiptests || github.event.inputs.skiptests}}" + echo "test_args: ${{inputs.test_args || github.event.inputs.test_args}}" + echo "cluster_test_args: ${{inputs.cluster_test_args || github.event.inputs.cluster_test_args}}" - uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1 with: repository: ${{ env.GITHUB_REPOSITORY }} @@ -497,33 +517,34 @@ jobs: sudo apt-get install tcl8.6 tclx tcl-tls ./utils/gen-test-certs.sh - name: test - if: true && !contains(github.event.inputs.skiptests, 'valkey') + if: true && !contains(inputs.skiptests || github.event.inputs.skiptests, 'valkey') run: | - ./runtest --io-threads --tls --accurate --verbose --tags network --dump-logs ${{github.event.inputs.test_args}} + ./runtest --io-threads --tls --accurate --verbose --tags network --dump-logs ${{inputs.test_args || github.event.inputs.test_args || ''}} - name: cluster tests - if: true && !contains(github.event.inputs.skiptests, 'cluster') + if: true && !contains(inputs.skiptests || github.event.inputs.skiptests, 'cluster') run: | - ./runtest-cluster --io-threads --tls ${{github.event.inputs.cluster_test_args}} + ./runtest-cluster --io-threads --tls ${{inputs.cluster_test_args || github.event.inputs.cluster_test_args || ''}} test-ubuntu-reclaim-cache: runs-on: ubuntu-latest if: | (github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call' || + github.event_name == 'merge_group' || (github.event_name == 'schedule' && github.repository == 'valkey-io/valkey') || (github.event_name == 'pull_request' && (contains(github.event.pull_request.labels.*.name, 'run-extra-tests') || github.event.pull_request.base.ref != 'unstable'))) && - !contains(github.event.inputs.skipjobs, 'specific') + !contains(inputs.skipjobs || github.event.inputs.skipjobs, 'specific') timeout-minutes: 1440 steps: - name: prep - if: github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call' - run: | - echo "GITHUB_REPOSITORY=${{github.event.inputs.use_repo}}" >> $GITHUB_ENV - echo "GITHUB_HEAD_REF=${{github.event.inputs.use_git_ref}}" >> $GITHUB_ENV - echo "skipjobs: ${{github.event.inputs.skipjobs}}" - echo "skiptests: ${{github.event.inputs.skiptests}}" - echo "test_args: ${{github.event.inputs.test_args}}" - echo "cluster_test_args: ${{github.event.inputs.cluster_test_args}}" + if: github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call' || github.event_name == 'merge_group' + run: | + echo "GITHUB_REPOSITORY=${{inputs.use_repo || github.event.inputs.use_repo}}" >> $GITHUB_ENV + echo "GITHUB_HEAD_REF=${{inputs.use_git_ref || github.event.inputs.use_git_ref}}" >> $GITHUB_ENV + echo "skipjobs: ${{inputs.skipjobs || github.event.inputs.skipjobs}}" + echo "skiptests: ${{inputs.skiptests || github.event.inputs.skiptests}}" + echo "test_args: ${{inputs.test_args || github.event.inputs.test_args}}" + echo "cluster_test_args: ${{inputs.cluster_test_args || github.event.inputs.cluster_test_args}}" - uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1 with: repository: ${{ env.GITHUB_REPOSITORY }} @@ -587,20 +608,21 @@ jobs: if: | (github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call' || + github.event_name == 'merge_group' || (github.event_name == 'schedule' && github.repository == 'valkey-io/valkey') || (github.event_name == 'pull_request' && github.event.pull_request.base.ref != 'unstable')) && - !contains(github.event.inputs.skipjobs, 'valgrind') && !contains(github.event.inputs.skiptests, 'valkey') + !contains(inputs.skipjobs || github.event.inputs.skipjobs, 'valgrind') && !contains(inputs.skiptests || github.event.inputs.skiptests, 'valkey') timeout-minutes: 1440 steps: - name: prep - if: github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call' - run: | - echo "GITHUB_REPOSITORY=${{github.event.inputs.use_repo}}" >> $GITHUB_ENV - echo "GITHUB_HEAD_REF=${{github.event.inputs.use_git_ref}}" >> $GITHUB_ENV - echo "skipjobs: ${{github.event.inputs.skipjobs}}" - echo "skiptests: ${{github.event.inputs.skiptests}}" - echo "test_args: ${{github.event.inputs.test_args}}" - echo "cluster_test_args: ${{github.event.inputs.cluster_test_args}}" + if: github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call' || github.event_name == 'merge_group' + run: | + echo "GITHUB_REPOSITORY=${{inputs.use_repo || github.event.inputs.use_repo}}" >> $GITHUB_ENV + echo "GITHUB_HEAD_REF=${{inputs.use_git_ref || github.event.inputs.use_git_ref}}" >> $GITHUB_ENV + echo "skipjobs: ${{inputs.skipjobs || github.event.inputs.skipjobs}}" + echo "skiptests: ${{inputs.skiptests || github.event.inputs.skiptests}}" + echo "test_args: ${{inputs.test_args || github.event.inputs.test_args}}" + echo "cluster_test_args: ${{inputs.cluster_test_args || github.event.inputs.cluster_test_args}}" - uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1 with: repository: ${{ env.GITHUB_REPOSITORY }} @@ -612,28 +634,30 @@ jobs: sudo apt-get update sudo apt-get install tcl8.6 tclx valgrind -y - name: test - if: true && !contains(github.event.inputs.skiptests, 'valkey') - run: ./runtest --valgrind --no-latency --verbose --clients 1 --timeout 2400 --dump-logs ${{github.event.inputs.test_args}} + if: true && !contains(inputs.skiptests || github.event.inputs.skiptests, 'valkey') + run: ./runtest --valgrind --no-latency --verbose --clients 1 --timeout 2400 --dump-logs ${{inputs.test_args || github.event.inputs.test_args || ''}} test-valgrind-misc: runs-on: ubuntu-latest if: | (github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call' || + github.event_name == 'merge_group' || (github.event_name == 'schedule' && github.repository == 'valkey-io/valkey') || (github.event_name == 'pull_request' && github.event.pull_request.base.ref != 'unstable')) && - !contains(github.event.inputs.skipjobs, 'valgrind') && !(contains(github.event.inputs.skiptests, 'modules') && contains(github.event.inputs.skiptests, 'unittest')) + !contains(inputs.skipjobs || github.event.inputs.skipjobs, 'valgrind') && !(contains(inputs.skiptests || github.event.inputs.skiptests, 'modules') && contains(inputs.skiptests || github.event.inputs.skiptests, 'unittest')) + timeout-minutes: 1440 steps: - name: prep - if: github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call' - run: | - echo "GITHUB_REPOSITORY=${{github.event.inputs.use_repo}}" >> $GITHUB_ENV - echo "GITHUB_HEAD_REF=${{github.event.inputs.use_git_ref}}" >> $GITHUB_ENV - echo "skipjobs: ${{github.event.inputs.skipjobs}}" - echo "skiptests: ${{github.event.inputs.skiptests}}" - echo "test_args: ${{github.event.inputs.test_args}}" - echo "cluster_test_args: ${{github.event.inputs.cluster_test_args}}" + if: github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call' || github.event_name == 'merge_group' + run: | + echo "GITHUB_REPOSITORY=${{inputs.use_repo || github.event.inputs.use_repo}}" >> $GITHUB_ENV + echo "GITHUB_HEAD_REF=${{inputs.use_git_ref || github.event.inputs.use_git_ref}}" >> $GITHUB_ENV + echo "skipjobs: ${{inputs.skipjobs || github.event.inputs.skipjobs}}" + echo "skiptests: ${{inputs.skiptests || github.event.inputs.skiptests}}" + echo "test_args: ${{inputs.test_args || github.event.inputs.test_args}}" + echo "cluster_test_args: ${{inputs.cluster_test_args || github.event.inputs.cluster_test_args}}" - uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1 with: repository: ${{ env.GITHUB_REPOSITORY }} @@ -645,10 +669,10 @@ jobs: sudo apt-get update sudo apt-get install tcl8.6 tclx valgrind -y - name: module api test - if: true && !contains(github.event.inputs.skiptests, 'modules') - run: CFLAGS='-Werror' ./runtest-moduleapi --valgrind --no-latency --verbose --clients 1 --timeout 2400 --dump-logs ${{github.event.inputs.test_args}} + if: true && !contains(inputs.skiptests || github.event.inputs.skiptests, 'modules') + run: CFLAGS='-Werror' ./runtest-moduleapi --valgrind --no-latency --verbose --clients 1 --timeout 2400 --dump-logs ${{inputs.test_args || github.event.inputs.test_args || ''}} - name: unittest - if: true && !contains(github.event.inputs.skiptests, 'unittest') + if: true && !contains(inputs.skiptests || github.event.inputs.skiptests, 'unittest') run: | valgrind --track-origins=yes --suppressions=./src/valgrind.sup --show-reachable=no --show-possibly-lost=no --leak-check=full --log-file=err.txt ./src/valkey-unit-tests --valgrind if grep -q 0x err.txt; then cat err.txt; exit 1; fi @@ -658,20 +682,21 @@ jobs: if: | (github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call' || + github.event_name == 'merge_group' || (github.event_name == 'schedule' && github.repository == 'valkey-io/valkey') || (github.event_name == 'pull_request' && github.event.pull_request.base.ref != 'unstable')) && - !contains(github.event.inputs.skipjobs, 'valgrind') && !contains(github.event.inputs.skiptests, 'valkey') + !contains(inputs.skipjobs || github.event.inputs.skipjobs, 'valgrind') && !contains(inputs.skiptests || github.event.inputs.skiptests, 'valkey') timeout-minutes: 1440 steps: - name: prep - if: github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call' - run: | - echo "GITHUB_REPOSITORY=${{github.event.inputs.use_repo}}" >> $GITHUB_ENV - echo "GITHUB_HEAD_REF=${{github.event.inputs.use_git_ref}}" >> $GITHUB_ENV - echo "skipjobs: ${{github.event.inputs.skipjobs}}" - echo "skiptests: ${{github.event.inputs.skiptests}}" - echo "test_args: ${{github.event.inputs.test_args}}" - echo "cluster_test_args: ${{github.event.inputs.cluster_test_args}}" + if: github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call' || github.event_name == 'merge_group' + run: | + echo "GITHUB_REPOSITORY=${{inputs.use_repo || github.event.inputs.use_repo}}" >> $GITHUB_ENV + echo "GITHUB_HEAD_REF=${{inputs.use_git_ref || github.event.inputs.use_git_ref}}" >> $GITHUB_ENV + echo "skipjobs: ${{inputs.skipjobs || github.event.inputs.skipjobs}}" + echo "skiptests: ${{inputs.skiptests || github.event.inputs.skiptests}}" + echo "test_args: ${{inputs.test_args || github.event.inputs.test_args}}" + echo "cluster_test_args: ${{inputs.cluster_test_args || github.event.inputs.cluster_test_args}}" - uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1 with: repository: ${{ env.GITHUB_REPOSITORY }} @@ -683,28 +708,29 @@ jobs: sudo apt-get update sudo apt-get install tcl8.6 tclx valgrind -y - name: test - if: true && !contains(github.event.inputs.skiptests, 'valkey') - run: ./runtest --valgrind --no-latency --verbose --clients 1 --timeout 2400 --dump-logs ${{github.event.inputs.test_args}} + if: true && !contains(inputs.skiptests || github.event.inputs.skiptests, 'valkey') + run: ./runtest --valgrind --no-latency --verbose --clients 1 --timeout 2400 --dump-logs ${{inputs.test_args || github.event.inputs.test_args || ''}} test-valgrind-no-malloc-usable-size-misc: runs-on: ubuntu-latest if: | (github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call' || + github.event_name == 'merge_group' || (github.event_name == 'schedule' && github.repository == 'valkey-io/valkey') || (github.event_name == 'pull_request' && github.event.pull_request.base.ref != 'unstable')) && - !contains(github.event.inputs.skipjobs, 'valgrind') && !(contains(github.event.inputs.skiptests, 'modules') && contains(github.event.inputs.skiptests, 'unittest')) + !contains(inputs.skipjobs || github.event.inputs.skipjobs, 'valgrind') && !(contains(inputs.skiptests || github.event.inputs.skiptests, 'modules') && contains(inputs.skiptests || github.event.inputs.skiptests, 'unittest')) timeout-minutes: 1440 steps: - name: prep - if: github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call' - run: | - echo "GITHUB_REPOSITORY=${{github.event.inputs.use_repo}}" >> $GITHUB_ENV - echo "GITHUB_HEAD_REF=${{github.event.inputs.use_git_ref}}" >> $GITHUB_ENV - echo "skipjobs: ${{github.event.inputs.skipjobs}}" - echo "skiptests: ${{github.event.inputs.skiptests}}" - echo "test_args: ${{github.event.inputs.test_args}}" - echo "cluster_test_args: ${{github.event.inputs.cluster_test_args}}" + if: github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call' || github.event_name == 'merge_group' + run: | + echo "GITHUB_REPOSITORY=${{inputs.use_repo || github.event.inputs.use_repo}}" >> $GITHUB_ENV + echo "GITHUB_HEAD_REF=${{inputs.use_git_ref || github.event.inputs.use_git_ref}}" >> $GITHUB_ENV + echo "skipjobs: ${{inputs.skipjobs || github.event.inputs.skipjobs}}" + echo "skiptests: ${{inputs.skiptests || github.event.inputs.skiptests}}" + echo "test_args: ${{inputs.test_args || github.event.inputs.test_args}}" + echo "cluster_test_args: ${{inputs.cluster_test_args || github.event.inputs.cluster_test_args}}" - uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1 with: repository: ${{ env.GITHUB_REPOSITORY }} @@ -716,10 +742,10 @@ jobs: sudo apt-get update sudo apt-get install tcl8.6 tclx valgrind -y - name: module api test - if: true && !contains(github.event.inputs.skiptests, 'modules') - run: CFLAGS='-Werror' ./runtest-moduleapi --valgrind --no-latency --verbose --clients 1 --timeout 2400 --dump-logs ${{github.event.inputs.test_args}} + if: true && !contains(inputs.skiptests || github.event.inputs.skiptests, 'modules') + run: CFLAGS='-Werror' ./runtest-moduleapi --valgrind --no-latency --verbose --clients 1 --timeout 2400 --dump-logs ${{inputs.test_args || github.event.inputs.test_args || ''}} - name: unittest - if: true && !contains(github.event.inputs.skiptests, 'unittest') + if: true && !contains(inputs.skiptests || github.event.inputs.skiptests, 'unittest') run: | valgrind --track-origins=yes --suppressions=./src/valgrind.sup --show-reachable=no --show-possibly-lost=no --leak-check=full --log-file=err.txt ./src/valkey-unit-tests --valgrind if grep -q 0x err.txt; then cat err.txt; exit 1; fi @@ -729,9 +755,10 @@ jobs: if: | (github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call' || + github.event_name == 'merge_group' || (github.event_name == 'schedule' && github.repository == 'valkey-io/valkey') || (github.event_name == 'pull_request' && github.event.pull_request.base.ref != 'unstable')) && - !contains(github.event.inputs.skipjobs, 'sanitizer') + !contains(inputs.skipjobs || github.event.inputs.skipjobs, 'sanitizer') timeout-minutes: 1440 strategy: fail-fast: false @@ -741,14 +768,14 @@ jobs: CC: ${{ matrix.compiler }} steps: - name: prep - if: github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call' - run: | - echo "GITHUB_REPOSITORY=${{github.event.inputs.use_repo}}" >> $GITHUB_ENV - echo "GITHUB_HEAD_REF=${{github.event.inputs.use_git_ref}}" >> $GITHUB_ENV - echo "skipjobs: ${{github.event.inputs.skipjobs}}" - echo "skiptests: ${{github.event.inputs.skiptests}}" - echo "test_args: ${{github.event.inputs.test_args}}" - echo "cluster_test_args: ${{github.event.inputs.cluster_test_args}}" + if: github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call' || github.event_name == 'merge_group' + run: | + echo "GITHUB_REPOSITORY=${{inputs.use_repo || github.event.inputs.use_repo}}" >> $GITHUB_ENV + echo "GITHUB_HEAD_REF=${{inputs.use_git_ref || github.event.inputs.use_git_ref}}" >> $GITHUB_ENV + echo "skipjobs: ${{inputs.skipjobs || github.event.inputs.skipjobs}}" + echo "skiptests: ${{inputs.skiptests || github.event.inputs.skiptests}}" + echo "test_args: ${{inputs.test_args || github.event.inputs.test_args}}" + echo "cluster_test_args: ${{inputs.cluster_test_args || github.event.inputs.cluster_test_args}}" - uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1 with: repository: ${{ env.GITHUB_REPOSITORY }} @@ -760,35 +787,36 @@ jobs: sudo apt-get update sudo apt-get install tcl8.6 tclx -y - name: test - if: true && !contains(github.event.inputs.skiptests, 'valkey') - run: ./runtest --accurate --verbose --dump-logs ${{github.event.inputs.test_args}} + if: true && !contains(inputs.skiptests || github.event.inputs.skiptests, 'valkey') + run: ./runtest --accurate --verbose --dump-logs ${{inputs.test_args || github.event.inputs.test_args || ''}} - name: module api test - if: true && !contains(github.event.inputs.skiptests, 'modules') - run: CFLAGS='-Werror' ./runtest-moduleapi --verbose --dump-logs ${{github.event.inputs.test_args}} + if: true && !contains(inputs.skiptests || github.event.inputs.skiptests, 'modules') + run: CFLAGS='-Werror' ./runtest-moduleapi --verbose --dump-logs ${{inputs.test_args || github.event.inputs.test_args || ''}} - name: sentinel tests - if: true && !contains(github.event.inputs.skiptests, 'sentinel') - run: ./runtest-sentinel ${{github.event.inputs.cluster_test_args}} + if: true && !contains(inputs.skiptests || github.event.inputs.skiptests, 'sentinel') + run: ./runtest-sentinel ${{inputs.cluster_test_args || github.event.inputs.cluster_test_args || ''}} - name: cluster tests - if: true && !contains(github.event.inputs.skiptests, 'cluster') - run: ./runtest-cluster ${{github.event.inputs.cluster_test_args}} + if: true && !contains(inputs.skiptests || github.event.inputs.skiptests, 'cluster') + run: ./runtest-cluster ${{inputs.cluster_test_args || github.event.inputs.cluster_test_args || ''}} - name: unittest - if: true && !contains(github.event.inputs.skiptests, 'unittest') + if: true && !contains(inputs.skiptests || github.event.inputs.skiptests, 'unittest') run: ./src/valkey-unit-tests --large-memory - name: large memory tests - if: true && !contains(github.event.inputs.skiptests, 'valkey') && !contains(github.event.inputs.skiptests, 'large-memory') - run: ./runtest --accurate --verbose --dump-logs --large-memory --tags large-memory ${{github.event.inputs.test_args}} + if: true && !contains(inputs.skiptests || github.event.inputs.skiptests, 'valkey') && !contains(inputs.skiptests || github.event.inputs.skiptests, 'large-memory') + run: ./runtest --accurate --verbose --dump-logs --large-memory --tags large-memory ${{inputs.test_args || github.event.inputs.test_args || ''}} - name: large memory module api tests - if: true && !contains(github.event.inputs.skiptests, 'modules') && !contains(github.event.inputs.skiptests, 'large-memory') - run: CFLAGS='-Werror' ./runtest-moduleapi --verbose --dump-logs --large-memory --tags large-memory ${{github.event.inputs.test_args}} + if: true && !contains(inputs.skiptests || github.event.inputs.skiptests, 'modules') && !contains(inputs.skiptests || github.event.inputs.skiptests, 'large-memory') + run: CFLAGS='-Werror' ./runtest-moduleapi --verbose --dump-logs --large-memory --tags large-memory ${{inputs.test_args || github.event.inputs.test_args || ''}} test-sanitizer-undefined: runs-on: ubuntu-latest if: | (github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call' || + github.event_name == 'merge_group' || (github.event_name == 'schedule' && github.repository == 'valkey-io/valkey') || (github.event_name == 'pull_request' && github.event.pull_request.base.ref != 'unstable')) && - !contains(github.event.inputs.skipjobs, 'sanitizer') + !contains(inputs.skipjobs || github.event.inputs.skipjobs, 'sanitizer') timeout-minutes: 1440 strategy: fail-fast: false @@ -798,14 +826,14 @@ jobs: CC: ${{ matrix.compiler }} steps: - name: prep - if: github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call' - run: | - echo "GITHUB_REPOSITORY=${{github.event.inputs.use_repo}}" >> $GITHUB_ENV - echo "GITHUB_HEAD_REF=${{github.event.inputs.use_git_ref}}" >> $GITHUB_ENV - echo "skipjobs: ${{github.event.inputs.skipjobs}}" - echo "skiptests: ${{github.event.inputs.skiptests}}" - echo "test_args: ${{github.event.inputs.test_args}}" - echo "cluster_test_args: ${{github.event.inputs.cluster_test_args}}" + if: github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call' || github.event_name == 'merge_group' + run: | + echo "GITHUB_REPOSITORY=${{inputs.use_repo || github.event.inputs.use_repo}}" >> $GITHUB_ENV + echo "GITHUB_HEAD_REF=${{inputs.use_git_ref || github.event.inputs.use_git_ref}}" >> $GITHUB_ENV + echo "skipjobs: ${{inputs.skipjobs || github.event.inputs.skipjobs}}" + echo "skiptests: ${{inputs.skiptests || github.event.inputs.skiptests}}" + echo "test_args: ${{inputs.test_args || github.event.inputs.test_args}}" + echo "cluster_test_args: ${{inputs.cluster_test_args || github.event.inputs.cluster_test_args}}" - uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1 with: repository: ${{ env.GITHUB_REPOSITORY }} @@ -817,48 +845,49 @@ jobs: sudo apt-get update sudo apt-get install tcl8.6 tclx -y - name: test - if: true && !contains(github.event.inputs.skiptests, 'valkey') - run: ./runtest --accurate --verbose --dump-logs ${{github.event.inputs.test_args}} + if: true && !contains(inputs.skiptests || github.event.inputs.skiptests, 'valkey') + run: ./runtest --accurate --verbose --dump-logs ${{inputs.test_args || github.event.inputs.test_args || ''}} - name: module api test - if: true && !contains(github.event.inputs.skiptests, 'modules') - run: CFLAGS='-Werror' ./runtest-moduleapi --verbose --dump-logs ${{github.event.inputs.test_args}} + if: true && !contains(inputs.skiptests || github.event.inputs.skiptests, 'modules') + run: CFLAGS='-Werror' ./runtest-moduleapi --verbose --dump-logs ${{inputs.test_args || github.event.inputs.test_args || ''}} - name: sentinel tests - if: true && !contains(github.event.inputs.skiptests, 'sentinel') - run: ./runtest-sentinel ${{github.event.inputs.cluster_test_args}} + if: true && !contains(inputs.skiptests || github.event.inputs.skiptests, 'sentinel') + run: ./runtest-sentinel ${{inputs.cluster_test_args || github.event.inputs.cluster_test_args || ''}} - name: cluster tests - if: true && !contains(github.event.inputs.skiptests, 'cluster') - run: ./runtest-cluster ${{github.event.inputs.cluster_test_args}} + if: true && !contains(inputs.skiptests || github.event.inputs.skiptests, 'cluster') + run: ./runtest-cluster ${{inputs.cluster_test_args || github.event.inputs.cluster_test_args || ''}} - name: unittest - if: true && !contains(github.event.inputs.skiptests, 'unittest') + if: true && !contains(inputs.skiptests || github.event.inputs.skiptests, 'unittest') run: ./src/valkey-unit-tests --accurate --large-memory - name: large memory tests - if: true && !contains(github.event.inputs.skiptests, 'valkey') && !contains(github.event.inputs.skiptests, 'large-memory') - run: ./runtest --accurate --verbose --dump-logs --large-memory --tags large-memory ${{github.event.inputs.test_args}} + if: true && !contains(inputs.skiptests || github.event.inputs.skiptests, 'valkey') && !contains(inputs.skiptests || github.event.inputs.skiptests, 'large-memory') + run: ./runtest --accurate --verbose --dump-logs --large-memory --tags large-memory ${{inputs.test_args || github.event.inputs.test_args || ''}} - name: large memory module api tests - if: true && !contains(github.event.inputs.skiptests, 'modules') && !contains(github.event.inputs.skiptests, 'large-memory') - run: CFLAGS='-Werror' ./runtest-moduleapi --verbose --dump-logs --large-memory --tags large-memory ${{github.event.inputs.test_args}} + if: true && !contains(inputs.skiptests || github.event.inputs.skiptests, 'modules') && !contains(inputs.skiptests || github.event.inputs.skiptests, 'large-memory') + run: CFLAGS='-Werror' ./runtest-moduleapi --verbose --dump-logs --large-memory --tags large-memory ${{inputs.test_args || github.event.inputs.test_args || ''}} test-sanitizer-force-defrag: runs-on: ubuntu-latest if: | (github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call' || + github.event_name == 'merge_group' || (github.event_name == 'schedule' && github.repository == 'valkey-io/valkey') || (github.event_name == 'pull_request' && github.event.pull_request.base.ref != 'unstable')) && - !contains(github.event.inputs.skipjobs, 'sanitizer') + !contains(inputs.skipjobs || github.event.inputs.skipjobs, 'sanitizer') timeout-minutes: 1440 strategy: fail-fast: false steps: - name: prep - if: github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call' - run: | - echo "GITHUB_REPOSITORY=${{github.event.inputs.use_repo}}" >> $GITHUB_ENV - echo "GITHUB_HEAD_REF=${{github.event.inputs.use_git_ref}}" >> $GITHUB_ENV - echo "skipjobs: ${{github.event.inputs.skipjobs}}" - echo "skiptests: ${{github.event.inputs.skiptests}}" - echo "test_args: ${{github.event.inputs.test_args}}" - echo "cluster_test_args: ${{github.event.inputs.cluster_test_args}}" + if: github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call' || github.event_name == 'merge_group' + run: | + echo "GITHUB_REPOSITORY=${{inputs.use_repo || github.event.inputs.use_repo}}" >> $GITHUB_ENV + echo "GITHUB_HEAD_REF=${{inputs.use_git_ref || github.event.inputs.use_git_ref}}" >> $GITHUB_ENV + echo "skipjobs: ${{inputs.skipjobs || github.event.inputs.skipjobs}}" + echo "skiptests: ${{inputs.skiptests || github.event.inputs.skiptests}}" + echo "test_args: ${{inputs.test_args || github.event.inputs.test_args}}" + echo "cluster_test_args: ${{inputs.cluster_test_args || github.event.inputs.cluster_test_args}}" - uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1 with: repository: ${{ env.GITHUB_REPOSITORY }} @@ -870,19 +899,19 @@ jobs: sudo apt-get update sudo apt-get install tcl8.6 tclx -y - name: test - if: true && !contains(github.event.inputs.skiptests, 'valkey') - run: ./runtest --accurate --verbose --dump-logs ${{github.event.inputs.test_args}} + if: true && !contains(inputs.skiptests || github.event.inputs.skiptests, 'valkey') + run: ./runtest --accurate --verbose --dump-logs ${{inputs.test_args || github.event.inputs.test_args || ''}} - name: module api test - if: true && !contains(github.event.inputs.skiptests, 'modules') - run: CFLAGS='-Werror' ./runtest-moduleapi --verbose --dump-logs ${{github.event.inputs.test_args}} + if: true && !contains(inputs.skiptests || github.event.inputs.skiptests, 'modules') + run: CFLAGS='-Werror' ./runtest-moduleapi --verbose --dump-logs ${{inputs.test_args || github.event.inputs.test_args || ''}} - name: sentinel tests - if: true && !contains(github.event.inputs.skiptests, 'sentinel') - run: ./runtest-sentinel ${{github.event.inputs.cluster_test_args}} + if: true && !contains(inputs.skiptests || github.event.inputs.skiptests, 'sentinel') + run: ./runtest-sentinel ${{inputs.cluster_test_args || github.event.inputs.cluster_test_args || ''}} - name: cluster tests - if: true && !contains(github.event.inputs.skiptests, 'cluster') - run: ./runtest-cluster ${{github.event.inputs.cluster_test_args}} + if: true && !contains(inputs.skiptests || github.event.inputs.skiptests, 'cluster') + run: ./runtest-cluster ${{inputs.cluster_test_args || github.event.inputs.cluster_test_args || ''}} - name: unittest - if: true && !contains(github.event.inputs.skiptests, 'unittest') + if: true && !contains(inputs.skiptests || github.event.inputs.skiptests, 'unittest') run: ./src/valkey-unit-tests test-ubuntu-lttng: @@ -890,20 +919,21 @@ jobs: if: | (github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call' || + github.event_name == 'merge_group' || (github.event_name == 'schedule' && github.repository == 'valkey-io/valkey') || (github.event_name == 'pull_request' && (contains(github.event.pull_request.labels.*.name, 'run-extra-tests') || github.event.pull_request.base.ref != 'unstable'))) && - !contains(github.event.inputs.skipjobs, 'lttng') + !contains(inputs.skipjobs || github.event.inputs.skipjobs, 'lttng') timeout-minutes: 1440 steps: - name: prep - if: github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call' - run: | - echo "GITHUB_REPOSITORY=${{github.event.inputs.use_repo}}" >> $GITHUB_ENV - echo "GITHUB_HEAD_REF=${{github.event.inputs.use_git_ref}}" >> $GITHUB_ENV - echo "skipjobs: ${{github.event.inputs.skipjobs}}" - echo "skiptests: ${{github.event.inputs.skiptests}}" - echo "test_args: ${{github.event.inputs.test_args}}" - echo "cluster_test_args: ${{github.event.inputs.cluster_test_args}}" + if: github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call' || github.event_name == 'merge_group' + run: | + echo "GITHUB_REPOSITORY=${{inputs.use_repo || github.event.inputs.use_repo}}" >> $GITHUB_ENV + echo "GITHUB_HEAD_REF=${{inputs.use_git_ref || github.event.inputs.use_git_ref}}" >> $GITHUB_ENV + echo "skipjobs: ${{inputs.skipjobs || github.event.inputs.skipjobs}}" + echo "skiptests: ${{inputs.skiptests || github.event.inputs.skiptests}}" + echo "test_args: ${{inputs.test_args || github.event.inputs.test_args}}" + echo "cluster_test_args: ${{inputs.cluster_test_args || github.event.inputs.cluster_test_args}}" - uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1 with: repository: ${{ env.GITHUB_REPOSITORY }} @@ -915,25 +945,26 @@ jobs: - name: testprep run: sudo apt-get install tcl8.6 tclx - name: test - if: true && !contains(github.event.inputs.skiptests, 'valkey') - run: ./runtest ${{ github.event_name != 'pull_request' && '--accurate' || '' }} --verbose --dump-logs ${{github.event.inputs.test_args}} + if: true && !contains(inputs.skiptests || github.event.inputs.skiptests, 'valkey') + run: ./runtest ${{ github.event_name != 'pull_request' && '--accurate' || '' }} --verbose --dump-logs ${{inputs.test_args || github.event.inputs.test_args || ''}} - name: module api test - if: true && !contains(github.event.inputs.skiptests, 'modules') - run: CFLAGS='-Werror' ./runtest-moduleapi --verbose --dump-logs ${{github.event.inputs.test_args}} + if: true && !contains(inputs.skiptests || github.event.inputs.skiptests, 'modules') + run: CFLAGS='-Werror' ./runtest-moduleapi --verbose --dump-logs ${{inputs.test_args || github.event.inputs.test_args || ''}} - name: sentinel tests - if: true && !contains(github.event.inputs.skiptests, 'sentinel') - run: ./runtest-sentinel ${{github.event.inputs.cluster_test_args}} + if: true && !contains(inputs.skiptests || github.event.inputs.skiptests, 'sentinel') + run: ./runtest-sentinel ${{inputs.cluster_test_args || github.event.inputs.cluster_test_args || ''}} - name: cluster tests - if: true && !contains(github.event.inputs.skiptests, 'cluster') - run: ./runtest-cluster ${{github.event.inputs.cluster_test_args}} + if: true && !contains(inputs.skiptests || github.event.inputs.skiptests, 'cluster') + run: ./runtest-cluster ${{inputs.cluster_test_args || github.event.inputs.cluster_test_args || ''}} test-rpm-distros-jemalloc: if: | (github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call' || + github.event_name == 'merge_group' || (github.event_name == 'schedule' && github.repository == 'valkey-io/valkey') || (github.event_name == 'pull_request' && (contains(github.event.pull_request.labels.*.name, 'run-extra-tests') || github.event.pull_request.base.ref != 'unstable'))) && - !contains(github.event.inputs.skipjobs, 'rpm-distros') + !contains(inputs.skipjobs || github.event.inputs.skipjobs, 'rpm-distros') strategy: fail-fast: false matrix: @@ -960,14 +991,14 @@ jobs: steps: - name: prep - if: github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call' - run: | - echo "GITHUB_REPOSITORY=${{github.event.inputs.use_repo}}" >> $GITHUB_ENV - echo "GITHUB_HEAD_REF=${{github.event.inputs.use_git_ref}}" >> $GITHUB_ENV - echo "skipjobs: ${{github.event.inputs.skipjobs}}" - echo "skiptests: ${{github.event.inputs.skiptests}}" - echo "test_args: ${{github.event.inputs.test_args}}" - echo "cluster_test_args: ${{github.event.inputs.cluster_test_args}}" + if: github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call' || github.event_name == 'merge_group' + run: | + echo "GITHUB_REPOSITORY=${{inputs.use_repo || github.event.inputs.use_repo}}" >> $GITHUB_ENV + echo "GITHUB_HEAD_REF=${{inputs.use_git_ref || github.event.inputs.use_git_ref}}" >> $GITHUB_ENV + echo "skipjobs: ${{inputs.skipjobs || github.event.inputs.skipjobs}}" + echo "skiptests: ${{inputs.skiptests || github.event.inputs.skiptests}}" + echo "test_args: ${{inputs.test_args || github.event.inputs.test_args}}" + echo "cluster_test_args: ${{inputs.cluster_test_args || github.event.inputs.cluster_test_args}}" - uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1 with: repository: ${{ env.GITHUB_REPOSITORY }} @@ -982,25 +1013,26 @@ jobs: - name: testprep run: dnf -y install tcl tcltls - name: test - if: true && !contains(github.event.inputs.skiptests, 'valkey') - run: ./runtest ${{ github.event_name != 'pull_request' && '--accurate' || '' }} --verbose --dump-logs ${{github.event.inputs.test_args}} + if: true && !contains(inputs.skiptests || github.event.inputs.skiptests, 'valkey') + run: ./runtest ${{ github.event_name != 'pull_request' && '--accurate' || '' }} --verbose --dump-logs ${{inputs.test_args || github.event.inputs.test_args || ''}} - name: module api test - if: true && !contains(github.event.inputs.skiptests, 'modules') - run: CFLAGS='-Werror' ./runtest-moduleapi --verbose --dump-logs ${{github.event.inputs.test_args}} + if: true && !contains(inputs.skiptests || github.event.inputs.skiptests, 'modules') + run: CFLAGS='-Werror' ./runtest-moduleapi --verbose --dump-logs ${{inputs.test_args || github.event.inputs.test_args || ''}} - name: sentinel tests - if: true && !contains(github.event.inputs.skiptests, 'sentinel') - run: ./runtest-sentinel ${{github.event.inputs.cluster_test_args}} + if: true && !contains(inputs.skiptests || github.event.inputs.skiptests, 'sentinel') + run: ./runtest-sentinel ${{inputs.cluster_test_args || github.event.inputs.cluster_test_args || ''}} - name: cluster tests - if: true && !contains(github.event.inputs.skiptests, 'cluster') - run: ./runtest-cluster ${{github.event.inputs.cluster_test_args}} + if: true && !contains(inputs.skiptests || github.event.inputs.skiptests, 'cluster') + run: ./runtest-cluster ${{inputs.cluster_test_args || github.event.inputs.cluster_test_args || ''}} test-rpm-distros-tls-module: if: | (github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call' || + github.event_name == 'merge_group' || (github.event_name == 'schedule' && github.repository == 'valkey-io/valkey') || (github.event_name == 'pull_request' && (contains(github.event.pull_request.labels.*.name, 'run-extra-tests') || github.event.pull_request.base.ref != 'unstable'))) && - !contains(github.event.inputs.skipjobs, 'tls') + !contains(inputs.skipjobs || github.event.inputs.skipjobs, 'tls') strategy: fail-fast: false matrix: @@ -1027,14 +1059,14 @@ jobs: steps: - name: prep - if: github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call' - run: | - echo "GITHUB_REPOSITORY=${{github.event.inputs.use_repo}}" >> $GITHUB_ENV - echo "GITHUB_HEAD_REF=${{github.event.inputs.use_git_ref}}" >> $GITHUB_ENV - echo "skipjobs: ${{github.event.inputs.skipjobs}}" - echo "skiptests: ${{github.event.inputs.skiptests}}" - echo "test_args: ${{github.event.inputs.test_args}}" - echo "cluster_test_args: ${{github.event.inputs.cluster_test_args}}" + if: github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call' || github.event_name == 'merge_group' + run: | + echo "GITHUB_REPOSITORY=${{inputs.use_repo || github.event.inputs.use_repo}}" >> $GITHUB_ENV + echo "GITHUB_HEAD_REF=${{inputs.use_git_ref || github.event.inputs.use_git_ref}}" >> $GITHUB_ENV + echo "skipjobs: ${{inputs.skipjobs || github.event.inputs.skipjobs}}" + echo "skiptests: ${{inputs.skiptests || github.event.inputs.skiptests}}" + echo "test_args: ${{inputs.test_args || github.event.inputs.test_args}}" + echo "cluster_test_args: ${{inputs.cluster_test_args || github.event.inputs.cluster_test_args}}" - uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1 with: repository: ${{ env.GITHUB_REPOSITORY }} @@ -1051,29 +1083,30 @@ jobs: dnf -y install tcl tcltls ./utils/gen-test-certs.sh - name: test - if: true && !contains(github.event.inputs.skiptests, 'valkey') + if: true && !contains(inputs.skiptests || github.event.inputs.skiptests, 'valkey') run: | - ./runtest ${{ github.event_name != 'pull_request' && '--accurate' || '' }} --verbose --dump-logs --tls-module --dump-logs ${{github.event.inputs.test_args}} + ./runtest ${{ github.event_name != 'pull_request' && '--accurate' || '' }} --verbose --dump-logs --tls-module --dump-logs ${{inputs.test_args || github.event.inputs.test_args || ''}} - name: module api test - if: true && !contains(github.event.inputs.skiptests, 'modules') + if: true && !contains(inputs.skiptests || github.event.inputs.skiptests, 'modules') run: | - CFLAGS='-Werror' ./runtest-moduleapi --verbose --dump-logs --tls-module --dump-logs ${{github.event.inputs.test_args}} + CFLAGS='-Werror' ./runtest-moduleapi --verbose --dump-logs --tls-module --dump-logs ${{inputs.test_args || github.event.inputs.test_args || ''}} - name: sentinel tests - if: true && !contains(github.event.inputs.skiptests, 'sentinel') + if: true && !contains(inputs.skiptests || github.event.inputs.skiptests, 'sentinel') run: | - ./runtest-sentinel ${{github.event.inputs.cluster_test_args}} + ./runtest-sentinel ${{inputs.cluster_test_args || github.event.inputs.cluster_test_args || ''}} - name: cluster tests - if: true && !contains(github.event.inputs.skiptests, 'cluster') + if: true && !contains(inputs.skiptests || github.event.inputs.skiptests, 'cluster') run: | - ./runtest-cluster --tls-module ${{github.event.inputs.cluster_test_args}} + ./runtest-cluster --tls-module ${{inputs.cluster_test_args || github.event.inputs.cluster_test_args || ''}} test-rpm-distros-tls-module-no-tls: if: | (github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call' || + github.event_name == 'merge_group' || (github.event_name == 'schedule' && github.repository == 'valkey-io/valkey') || (github.event_name == 'pull_request' && github.event.pull_request.base.ref != 'unstable')) && - !contains(github.event.inputs.skipjobs, 'tls') + !contains(inputs.skipjobs || github.event.inputs.skipjobs, 'tls') strategy: fail-fast: false matrix: @@ -1100,14 +1133,14 @@ jobs: steps: - name: prep - if: github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call' - run: | - echo "GITHUB_REPOSITORY=${{github.event.inputs.use_repo}}" >> $GITHUB_ENV - echo "GITHUB_HEAD_REF=${{github.event.inputs.use_git_ref}}" >> $GITHUB_ENV - echo "skipjobs: ${{github.event.inputs.skipjobs}}" - echo "skiptests: ${{github.event.inputs.skiptests}}" - echo "test_args: ${{github.event.inputs.test_args}}" - echo "cluster_test_args: ${{github.event.inputs.cluster_test_args}}" + if: github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call' || github.event_name == 'merge_group' + run: | + echo "GITHUB_REPOSITORY=${{inputs.use_repo || github.event.inputs.use_repo}}" >> $GITHUB_ENV + echo "GITHUB_HEAD_REF=${{inputs.use_git_ref || github.event.inputs.use_git_ref}}" >> $GITHUB_ENV + echo "skipjobs: ${{inputs.skipjobs || github.event.inputs.skipjobs}}" + echo "skiptests: ${{inputs.skiptests || github.event.inputs.skiptests}}" + echo "test_args: ${{inputs.test_args || github.event.inputs.test_args}}" + echo "cluster_test_args: ${{inputs.cluster_test_args || github.event.inputs.cluster_test_args}}" - uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1 with: repository: ${{ env.GITHUB_REPOSITORY }} @@ -1124,41 +1157,43 @@ jobs: dnf -y install tcl tcltls ./utils/gen-test-certs.sh - name: test - if: true && !contains(github.event.inputs.skiptests, 'valkey') + if: true && !contains(inputs.skiptests || github.event.inputs.skiptests, 'valkey') run: | - ./runtest --accurate --verbose --dump-logs ${{github.event.inputs.test_args}} + ./runtest --accurate --verbose --dump-logs ${{inputs.test_args || github.event.inputs.test_args || ''}} - name: module api test - if: true && !contains(github.event.inputs.skiptests, 'modules') + if: true && !contains(inputs.skiptests || github.event.inputs.skiptests, 'modules') run: | - CFLAGS='-Werror' ./runtest-moduleapi --verbose --dump-logs ${{github.event.inputs.test_args}} + CFLAGS='-Werror' ./runtest-moduleapi --verbose --dump-logs ${{inputs.test_args || github.event.inputs.test_args || ''}} - name: sentinel tests - if: true && !contains(github.event.inputs.skiptests, 'sentinel') + if: true && !contains(inputs.skiptests || github.event.inputs.skiptests, 'sentinel') run: | - ./runtest-sentinel ${{github.event.inputs.cluster_test_args}} + ./runtest-sentinel ${{inputs.cluster_test_args || github.event.inputs.cluster_test_args || ''}} - name: cluster tests - if: true && !contains(github.event.inputs.skiptests, 'cluster') + if: true && !contains(inputs.skiptests || github.event.inputs.skiptests, 'cluster') run: | - ./runtest-cluster ${{github.event.inputs.cluster_test_args}} + ./runtest-cluster ${{inputs.cluster_test_args || github.event.inputs.cluster_test_args || ''}} test-macos-latest: runs-on: macos-latest if: | (github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call' || + github.event_name == 'merge_group' || (github.event_name == 'schedule' && github.repository == 'valkey-io/valkey') || (github.event_name == 'pull_request' && (contains(github.event.pull_request.labels.*.name, 'run-extra-tests') || github.event.pull_request.base.ref != 'unstable'))) && - !contains(github.event.inputs.skipjobs, 'macos') && !(contains(github.event.inputs.skiptests, 'valkey') && contains(github.event.inputs.skiptests, 'modules')) + !contains(inputs.skipjobs || github.event.inputs.skipjobs, 'macos') && !(contains(inputs.skiptests || github.event.inputs.skiptests, 'valkey') && contains(inputs.skiptests || github.event.inputs.skiptests, 'modules')) + timeout-minutes: 1440 steps: - name: prep - if: github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call' - run: | - echo "GITHUB_REPOSITORY=${{github.event.inputs.use_repo}}" >> $GITHUB_ENV - echo "GITHUB_HEAD_REF=${{github.event.inputs.use_git_ref}}" >> $GITHUB_ENV - echo "skipjobs: ${{github.event.inputs.skipjobs}}" - echo "skiptests: ${{github.event.inputs.skiptests}}" - echo "test_args: ${{github.event.inputs.test_args}}" - echo "cluster_test_args: ${{github.event.inputs.cluster_test_args}}" + if: github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call' || github.event_name == 'merge_group' + run: | + echo "GITHUB_REPOSITORY=${{inputs.use_repo || github.event.inputs.use_repo}}" >> $GITHUB_ENV + echo "GITHUB_HEAD_REF=${{inputs.use_git_ref || github.event.inputs.use_git_ref}}" >> $GITHUB_ENV + echo "skipjobs: ${{inputs.skipjobs || github.event.inputs.skipjobs}}" + echo "skiptests: ${{inputs.skiptests || github.event.inputs.skiptests}}" + echo "test_args: ${{inputs.test_args || github.event.inputs.test_args}}" + echo "cluster_test_args: ${{inputs.cluster_test_args || github.event.inputs.cluster_test_args}}" - uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1 with: repository: ${{ env.GITHUB_REPOSITORY }} @@ -1166,31 +1201,32 @@ jobs: - name: make run: make SERVER_CFLAGS='-Werror' - name: test - if: true && !contains(github.event.inputs.skiptests, 'valkey') - run: ./runtest ${{ github.event_name != 'pull_request' && '--accurate' || '' }} --verbose --clients 1 --no-latency --dump-logs ${{github.event.inputs.test_args}} + if: true && !contains(inputs.skiptests || github.event.inputs.skiptests, 'valkey') + run: ./runtest ${{ github.event_name != 'pull_request' && '--accurate' || '' }} --verbose --clients 1 --no-latency --dump-logs ${{inputs.test_args || github.event.inputs.test_args || ''}} - name: module api test - if: true && !contains(github.event.inputs.skiptests, 'modules') - run: CFLAGS='-Werror' ./runtest-moduleapi --verbose --clients 1 --no-latency --dump-logs ${{github.event.inputs.test_args}} + if: true && !contains(inputs.skiptests || github.event.inputs.skiptests, 'modules') + run: CFLAGS='-Werror' ./runtest-moduleapi --verbose --clients 1 --no-latency --dump-logs ${{inputs.test_args || github.event.inputs.test_args || ''}} test-macos-latest-sentinel: runs-on: macos-latest if: | (github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call' || + github.event_name == 'merge_group' || (github.event_name == 'schedule' && github.repository == 'valkey-io/valkey') || (github.event_name == 'pull_request' && (contains(github.event.pull_request.labels.*.name, 'run-extra-tests') || github.event.pull_request.base.ref != 'unstable'))) && - !contains(github.event.inputs.skipjobs, 'macos') && !contains(github.event.inputs.skiptests, 'sentinel') + !contains(inputs.skipjobs || github.event.inputs.skipjobs, 'macos') && !contains(inputs.skiptests || github.event.inputs.skiptests, 'sentinel') timeout-minutes: 1440 steps: - name: prep - if: github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call' - run: | - echo "GITHUB_REPOSITORY=${{github.event.inputs.use_repo}}" >> $GITHUB_ENV - echo "GITHUB_HEAD_REF=${{github.event.inputs.use_git_ref}}" >> $GITHUB_ENV - echo "skipjobs: ${{github.event.inputs.skipjobs}}" - echo "skiptests: ${{github.event.inputs.skiptests}}" - echo "test_args: ${{github.event.inputs.test_args}}" - echo "cluster_test_args: ${{github.event.inputs.cluster_test_args}}" + if: github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call' || github.event_name == 'merge_group' + run: | + echo "GITHUB_REPOSITORY=${{inputs.use_repo || github.event.inputs.use_repo}}" >> $GITHUB_ENV + echo "GITHUB_HEAD_REF=${{inputs.use_git_ref || github.event.inputs.use_git_ref}}" >> $GITHUB_ENV + echo "skipjobs: ${{inputs.skipjobs || github.event.inputs.skipjobs}}" + echo "skiptests: ${{inputs.skiptests || github.event.inputs.skiptests}}" + echo "test_args: ${{inputs.test_args || github.event.inputs.test_args}}" + echo "cluster_test_args: ${{inputs.cluster_test_args || github.event.inputs.cluster_test_args}}" - uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1 with: repository: ${{ env.GITHUB_REPOSITORY }} @@ -1198,28 +1234,29 @@ jobs: - name: make run: make SERVER_CFLAGS='-Werror' - name: sentinel tests - if: true && !contains(github.event.inputs.skiptests, 'sentinel') - run: ./runtest-sentinel ${{github.event.inputs.cluster_test_args}} + if: true && !contains(inputs.skiptests || github.event.inputs.skiptests, 'sentinel') + run: ./runtest-sentinel ${{inputs.cluster_test_args || github.event.inputs.cluster_test_args || ''}} test-macos-latest-cluster: runs-on: macos-latest if: | (github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call' || + github.event_name == 'merge_group' || (github.event_name == 'schedule' && github.repository == 'valkey-io/valkey') || (github.event_name == 'pull_request' && (contains(github.event.pull_request.labels.*.name, 'run-extra-tests') || github.event.pull_request.base.ref != 'unstable'))) && - !contains(github.event.inputs.skipjobs, 'macos') && !contains(github.event.inputs.skiptests, 'cluster') + !contains(inputs.skipjobs || github.event.inputs.skipjobs, 'macos') && !contains(inputs.skiptests || github.event.inputs.skiptests, 'cluster') timeout-minutes: 1440 steps: - name: prep - if: github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call' - run: | - echo "GITHUB_REPOSITORY=${{github.event.inputs.use_repo}}" >> $GITHUB_ENV - echo "GITHUB_HEAD_REF=${{github.event.inputs.use_git_ref}}" >> $GITHUB_ENV - echo "skipjobs: ${{github.event.inputs.skipjobs}}" - echo "skiptests: ${{github.event.inputs.skiptests}}" - echo "test_args: ${{github.event.inputs.test_args}}" - echo "cluster_test_args: ${{github.event.inputs.cluster_test_args}}" + if: github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call' || github.event_name == 'merge_group' + run: | + echo "GITHUB_REPOSITORY=${{inputs.use_repo || github.event.inputs.use_repo}}" >> $GITHUB_ENV + echo "GITHUB_HEAD_REF=${{inputs.use_git_ref || github.event.inputs.use_git_ref}}" >> $GITHUB_ENV + echo "skipjobs: ${{inputs.skipjobs || github.event.inputs.skipjobs}}" + echo "skiptests: ${{inputs.skiptests || github.event.inputs.skiptests}}" + echo "test_args: ${{inputs.test_args || github.event.inputs.test_args}}" + echo "cluster_test_args: ${{inputs.cluster_test_args || github.event.inputs.cluster_test_args}}" - uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1 with: repository: ${{ env.GITHUB_REPOSITORY }} @@ -1227,8 +1264,8 @@ jobs: - name: make run: make SERVER_CFLAGS='-Werror' - name: cluster tests - if: true && !contains(github.event.inputs.skiptests, 'cluster') - run: ./runtest-cluster ${{github.event.inputs.cluster_test_args}} + if: true && !contains(inputs.skiptests || github.event.inputs.skiptests, 'cluster') + run: ./runtest-cluster ${{inputs.cluster_test_args || github.event.inputs.cluster_test_args || ''}} build-old-macos-versions: strategy: @@ -1239,23 +1276,24 @@ jobs: if: | (github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call' || + github.event_name == 'merge_group' || (github.event_name == 'schedule' && github.repository == 'valkey-io/valkey') || (github.event_name == 'pull_request' && (contains(github.event.pull_request.labels.*.name, 'run-extra-tests') || github.event.pull_request.base.ref != 'unstable'))) && - !contains(github.event.inputs.skipjobs, 'macos') + !contains(inputs.skipjobs || github.event.inputs.skipjobs, 'macos') timeout-minutes: 1440 steps: - uses: maxim-lobanov/setup-xcode@60606e260d2fc5762a71e64e74b2174e8ea3c8bd # v1.6.0 with: xcode-version: latest - name: prep - if: github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call' - run: | - echo "GITHUB_REPOSITORY=${{github.event.inputs.use_repo}}" >> $GITHUB_ENV - echo "GITHUB_HEAD_REF=${{github.event.inputs.use_git_ref}}" >> $GITHUB_ENV - echo "skipjobs: ${{github.event.inputs.skipjobs}}" - echo "skiptests: ${{github.event.inputs.skiptests}}" - echo "test_args: ${{github.event.inputs.test_args}}" - echo "cluster_test_args: ${{github.event.inputs.cluster_test_args}}" + if: github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call' || github.event_name == 'merge_group' + run: | + echo "GITHUB_REPOSITORY=${{inputs.use_repo || github.event.inputs.use_repo}}" >> $GITHUB_ENV + echo "GITHUB_HEAD_REF=${{inputs.use_git_ref || github.event.inputs.use_git_ref}}" >> $GITHUB_ENV + echo "skipjobs: ${{inputs.skipjobs || github.event.inputs.skipjobs}}" + echo "skiptests: ${{inputs.skiptests || github.event.inputs.skiptests}}" + echo "test_args: ${{inputs.test_args || github.event.inputs.test_args}}" + echo "cluster_test_args: ${{inputs.cluster_test_args || github.event.inputs.cluster_test_args}}" - uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1 with: repository: ${{ env.GITHUB_REPOSITORY }} @@ -1268,16 +1306,17 @@ jobs: if: | (github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call' || + github.event_name == 'merge_group' || (github.event_name == 'schedule' && github.repository == 'valkey-io/valkey') || (github.event_name == 'pull_request' && (contains(github.event.pull_request.labels.*.name, 'run-extra-tests') || github.event.pull_request.base.ref != 'unstable'))) && - !contains(github.event.inputs.skipjobs, 'freebsd') + !contains(inputs.skipjobs || github.event.inputs.skipjobs, 'freebsd') timeout-minutes: 1440 steps: - name: prep - if: github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call' + if: github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call' || github.event_name == 'merge_group' run: | - echo "GITHUB_REPOSITORY=${{github.event.inputs.use_repo}}" >> $GITHUB_ENV - echo "GITHUB_HEAD_REF=${{github.event.inputs.use_git_ref}}" >> $GITHUB_ENV + echo "GITHUB_REPOSITORY=${{inputs.use_repo || github.event.inputs.use_repo}}" >> $GITHUB_ENV + echo "GITHUB_HEAD_REF=${{inputs.use_git_ref || github.event.inputs.use_git_ref}}" >> $GITHUB_ENV - uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1 with: repository: ${{ env.GITHUB_REPOSITORY }} @@ -1299,20 +1338,21 @@ jobs: if: | (github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call' || + github.event_name == 'merge_group' || (github.event_name == 'schedule' && github.repository == 'valkey-io/valkey') || (github.event_name == 'pull_request' && (contains(github.event.pull_request.labels.*.name, 'run-extra-tests') || github.event.pull_request.base.ref != 'unstable'))) && - !contains(github.event.inputs.skipjobs, 'alpine') + !contains(inputs.skipjobs || github.event.inputs.skipjobs, 'alpine') container: alpine:latest steps: - name: prep - if: github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call' - run: | - echo "GITHUB_REPOSITORY=${{github.event.inputs.use_repo}}" >> $GITHUB_ENV - echo "GITHUB_HEAD_REF=${{github.event.inputs.use_git_ref}}" >> $GITHUB_ENV - echo "skipjobs: ${{github.event.inputs.skipjobs}}" - echo "skiptests: ${{github.event.inputs.skiptests}}" - echo "test_args: ${{github.event.inputs.test_args}}" - echo "cluster_test_args: ${{github.event.inputs.cluster_test_args}}" + if: github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call' || github.event_name == 'merge_group' + run: | + echo "GITHUB_REPOSITORY=${{inputs.use_repo || github.event.inputs.use_repo}}" >> $GITHUB_ENV + echo "GITHUB_HEAD_REF=${{inputs.use_git_ref || github.event.inputs.use_git_ref}}" >> $GITHUB_ENV + echo "skipjobs: ${{inputs.skipjobs || github.event.inputs.skipjobs}}" + echo "skiptests: ${{inputs.skiptests || github.event.inputs.skiptests}}" + echo "test_args: ${{inputs.test_args || github.event.inputs.test_args}}" + echo "cluster_test_args: ${{inputs.cluster_test_args || github.event.inputs.cluster_test_args}}" - uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1 with: repository: ${{ env.GITHUB_REPOSITORY }} @@ -1324,37 +1364,38 @@ jobs: - name: testprep run: apk add tcl procps tclx - name: test - if: true && !contains(github.event.inputs.skiptests, 'valkey') - run: ./runtest ${{ github.event_name != 'pull_request' && '--accurate' || '' }} --verbose --dump-logs ${{github.event.inputs.test_args}} + if: true && !contains(inputs.skiptests || github.event.inputs.skiptests, 'valkey') + run: ./runtest ${{ github.event_name != 'pull_request' && '--accurate' || '' }} --verbose --dump-logs ${{inputs.test_args || github.event.inputs.test_args || ''}} - name: module api test - if: true && !contains(github.event.inputs.skiptests, 'modules') - run: CFLAGS='-Werror' ./runtest-moduleapi --verbose --dump-logs ${{github.event.inputs.test_args}} + if: true && !contains(inputs.skiptests || github.event.inputs.skiptests, 'modules') + run: CFLAGS='-Werror' ./runtest-moduleapi --verbose --dump-logs ${{inputs.test_args || github.event.inputs.test_args || ''}} - name: sentinel tests - if: true && !contains(github.event.inputs.skiptests, 'sentinel') - run: ./runtest-sentinel ${{github.event.inputs.cluster_test_args}} + if: true && !contains(inputs.skiptests || github.event.inputs.skiptests, 'sentinel') + run: ./runtest-sentinel ${{inputs.cluster_test_args || github.event.inputs.cluster_test_args || ''}} - name: cluster tests - if: true && !contains(github.event.inputs.skiptests, 'cluster') - run: ./runtest-cluster ${{github.event.inputs.cluster_test_args}} + if: true && !contains(inputs.skiptests || github.event.inputs.skiptests, 'cluster') + run: ./runtest-cluster ${{inputs.cluster_test_args || github.event.inputs.cluster_test_args || ''}} test-alpine-libc-malloc: runs-on: ubuntu-latest if: | (github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call' || + github.event_name == 'merge_group' || (github.event_name == 'schedule' && github.repository == 'valkey-io/valkey') || (github.event_name == 'pull_request' && (contains(github.event.pull_request.labels.*.name, 'run-extra-tests') || github.event.pull_request.base.ref != 'unstable'))) && - !contains(github.event.inputs.skipjobs, 'alpine') + !contains(inputs.skipjobs || github.event.inputs.skipjobs, 'alpine') container: alpine:latest steps: - name: prep - if: github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call' - run: | - echo "GITHUB_REPOSITORY=${{github.event.inputs.use_repo}}" >> $GITHUB_ENV - echo "GITHUB_HEAD_REF=${{github.event.inputs.use_git_ref}}" >> $GITHUB_ENV - echo "skipjobs: ${{github.event.inputs.skipjobs}}" - echo "skiptests: ${{github.event.inputs.skiptests}}" - echo "test_args: ${{github.event.inputs.test_args}}" - echo "cluster_test_args: ${{github.event.inputs.cluster_test_args}}" + if: github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call' || github.event_name == 'merge_group' + run: | + echo "GITHUB_REPOSITORY=${{inputs.use_repo || github.event.inputs.use_repo}}" >> $GITHUB_ENV + echo "GITHUB_HEAD_REF=${{inputs.use_git_ref || github.event.inputs.use_git_ref}}" >> $GITHUB_ENV + echo "skipjobs: ${{inputs.skipjobs || github.event.inputs.skipjobs}}" + echo "skiptests: ${{inputs.skiptests || github.event.inputs.skiptests}}" + echo "test_args: ${{inputs.test_args || github.event.inputs.test_args}}" + echo "cluster_test_args: ${{inputs.cluster_test_args || github.event.inputs.cluster_test_args}}" - uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1 with: repository: ${{ env.GITHUB_REPOSITORY }} @@ -1366,17 +1407,17 @@ jobs: - name: testprep run: apk add tcl procps tclx - name: test - if: true && !contains(github.event.inputs.skiptests, 'valkey') - run: ./runtest ${{ github.event_name != 'pull_request' && '--accurate' || '' }} --verbose --dump-logs ${{github.event.inputs.test_args}} + if: true && !contains(inputs.skiptests || github.event.inputs.skiptests, 'valkey') + run: ./runtest ${{ github.event_name != 'pull_request' && '--accurate' || '' }} --verbose --dump-logs ${{inputs.test_args || github.event.inputs.test_args || ''}} - name: module api test - if: true && !contains(github.event.inputs.skiptests, 'modules') - run: CFLAGS='-Werror' ./runtest-moduleapi --verbose --dump-logs ${{github.event.inputs.test_args}} + if: true && !contains(inputs.skiptests || github.event.inputs.skiptests, 'modules') + run: CFLAGS='-Werror' ./runtest-moduleapi --verbose --dump-logs ${{inputs.test_args || github.event.inputs.test_args || ''}} - name: sentinel tests - if: true && !contains(github.event.inputs.skiptests, 'sentinel') - run: ./runtest-sentinel ${{github.event.inputs.cluster_test_args}} + if: true && !contains(inputs.skiptests || github.event.inputs.skiptests, 'sentinel') + run: ./runtest-sentinel ${{inputs.cluster_test_args || github.event.inputs.cluster_test_args || ''}} - name: cluster tests - if: true && !contains(github.event.inputs.skiptests, 'cluster') - run: ./runtest-cluster ${{github.event.inputs.cluster_test_args}} + if: true && !contains(inputs.skiptests || github.event.inputs.skiptests, 'cluster') + run: ./runtest-cluster ${{inputs.cluster_test_args || github.event.inputs.cluster_test_args || ''}} reply-schemas-validator: runs-on: ubuntu-latest @@ -1384,19 +1425,20 @@ jobs: if: | (github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call' || + github.event_name == 'merge_group' || (github.event_name == 'schedule' && github.repository == 'valkey-io/valkey') || (github.event_name == 'pull_request' && (contains(github.event.pull_request.labels.*.name, 'run-extra-tests') || github.event.pull_request.base.ref != 'unstable'))) && - !contains(github.event.inputs.skipjobs, 'reply-schema') + !contains(inputs.skipjobs || github.event.inputs.skipjobs, 'reply-schema') steps: - name: prep - if: github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call' - run: | - echo "GITHUB_REPOSITORY=${{github.event.inputs.use_repo}}" >> $GITHUB_ENV - echo "GITHUB_HEAD_REF=${{github.event.inputs.use_git_ref}}" >> $GITHUB_ENV - echo "skipjobs: ${{github.event.inputs.skipjobs}}" - echo "skiptests: ${{github.event.inputs.skiptests}}" - echo "test_args: ${{github.event.inputs.test_args}}" - echo "cluster_test_args: ${{github.event.inputs.cluster_test_args}}" + if: github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call' || github.event_name == 'merge_group' + run: | + echo "GITHUB_REPOSITORY=${{inputs.use_repo || github.event.inputs.use_repo}}" >> $GITHUB_ENV + echo "GITHUB_HEAD_REF=${{inputs.use_git_ref || github.event.inputs.use_git_ref}}" >> $GITHUB_ENV + echo "skipjobs: ${{inputs.skipjobs || github.event.inputs.skipjobs}}" + echo "skiptests: ${{inputs.skiptests || github.event.inputs.skiptests}}" + echo "test_args: ${{inputs.test_args || github.event.inputs.test_args}}" + echo "cluster_test_args: ${{inputs.cluster_test_args || github.event.inputs.cluster_test_args}}" - uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1 with: repository: ${{ env.GITHUB_REPOSITORY }} @@ -1406,23 +1448,24 @@ jobs: - name: testprep run: sudo apt-get install tcl8.6 tclx - name: test - if: true && !contains(github.event.inputs.skiptests, 'valkey') - run: ./runtest --log-req-res --no-latency --dont-clean --force-resp3 --tags -slow --verbose --dump-logs ${{github.event.inputs.test_args}} + if: true && !contains(inputs.skiptests || github.event.inputs.skiptests, 'valkey') + run: ./runtest --log-req-res --no-latency --dont-clean --force-resp3 --tags -slow --verbose --dump-logs ${{inputs.test_args || github.event.inputs.test_args || ''}} - name: module api test - if: true && !contains(github.event.inputs.skiptests, 'modules') - run: CFLAGS='-Werror' ./runtest-moduleapi --log-req-res --no-latency --dont-clean --force-resp3 --dont-pre-clean --verbose --dump-logs ${{github.event.inputs.test_args}} + if: true && !contains(inputs.skiptests || github.event.inputs.skiptests, 'modules') + run: CFLAGS='-Werror' ./runtest-moduleapi --log-req-res --no-latency --dont-clean --force-resp3 --dont-pre-clean --verbose --dump-logs ${{inputs.test_args || github.event.inputs.test_args || ''}} - name: sentinel tests - if: true && !contains(github.event.inputs.skiptests, 'sentinel') - run: ./runtest-sentinel --log-req-res --dont-clean --force-resp3 ${{github.event.inputs.cluster_test_args}} + if: true && !contains(inputs.skiptests || github.event.inputs.skiptests, 'sentinel') + run: ./runtest-sentinel --log-req-res --dont-clean --force-resp3 ${{inputs.cluster_test_args || github.event.inputs.cluster_test_args || ''}} - name: cluster tests - if: true && !contains(github.event.inputs.skiptests, 'cluster') - run: ./runtest-cluster --log-req-res --dont-clean --force-resp3 ${{github.event.inputs.cluster_test_args}} + if: true && !contains(inputs.skiptests || github.event.inputs.skiptests, 'cluster') + run: ./runtest-cluster --log-req-res --dont-clean --force-resp3 ${{inputs.cluster_test_args || github.event.inputs.cluster_test_args || ''}} - name: Install Python dependencies uses: py-actions/py-dependency-install@30aa0023464ed4b5b116bd9fbdab87acf01a484e # v4.1.0 with: path: "./utils/req-res-validator/requirements.txt" - name: validator - run: ./utils/req-res-log-validator.py --verbose --fail-missing-reply-schemas ${{ (!contains(github.event.inputs.skiptests, 'valkey') && !contains(github.event.inputs.skiptests, 'module') && !contains(github.event.inputs.sentinel, 'valkey') && !contains(github.event.inputs.skiptests, 'cluster')) && github.event.inputs.test_args == '' && github.event.inputs.cluster_test_args == '' && '--fail-commands-not-all-hit' || '' }} + run: ./utils/req-res-log-validator.py --verbose --fail-missing-reply-schemas ${{ (!contains(inputs.skiptests || github.event.inputs.skiptests, 'valkey') && !contains(inputs.skiptests || github.event.inputs.skiptests, 'module') && !contains(inputs.skiptests || github.event.inputs.skiptests, 'sentinel') + && !contains(inputs.skiptests || github.event.inputs.skiptests, 'cluster')) && (inputs.test_args || github.event.inputs.test_args || '') == '' && (inputs.cluster_test_args || github.event.inputs.cluster_test_args || '') == '' && '--fail-commands-not-all-hit' || '' }} notify-about-job-results: runs-on: ubuntu-latest diff --git a/.github/workflows/merge-queue.yml b/.github/workflows/merge-queue.yml index d7ffb052b0..0ccde6e0da 100644 --- a/.github/workflows/merge-queue.yml +++ b/.github/workflows/merge-queue.yml @@ -9,3 +9,7 @@ jobs: with: skipjobs: "valgrind,macos" skiptests: "" + test_args: "" + cluster_test_args: "" + use_repo: "valkey-io/valkey" + use_git_ref: "unstable"