test workflow

eag/mvtests-mixed-setup
eaydingol 2025-11-25 10:12:56 +03:00
parent 243dcb5993
commit b4a4d89854
2 changed files with 72 additions and 1 deletions

View File

@ -131,6 +131,19 @@ jobs:
path: |-
./build-${{ env.PG_MAJOR }}/*
./install-${{ env.PG_MAJOR }}.tar
test-citus-new:
uses: ./.github/workflows/run_tests.yml
needs:
- params
- build
with:
pg_versions: '[${{ needs.params.outputs.pg16_version }}, ${{ needs.params.outputs.pg17_version }}]'
make_targets: '["check-split", "check-multi"]'
image_suffix: ${{ needs.params.outputs.image_suffix }}
image_name: ${{ needs.params.outputs.test_image_name }}
secrets:
codecov_token: ${{ secrets.CODECOV_TOKEN }}
test-citus:
name: PG${{ fromJson(matrix.pg_version).major }} - ${{ matrix.make }} - ${{ matrix.citus_version}}
strategy:
@ -163,7 +176,6 @@ jobs:
- check-enterprise-isolation-logicalrep-3
citus_version:
-
- 13.2-1
include:
- make: check-failure
pg_version: ${{ needs.params.outputs.pg15_version }}

59
.github/workflows/run_tests.yml vendored Normal file
View File

@ -0,0 +1,59 @@
name: Run Tests
on:
workflow_call:
inputs:
pg_versions:
required: true
type: string
make_targets:
required: true
type: string
image_suffix:
required: true
type: string
image_name:
required: true
type: string
suite:
required: false
type: string
default: "regress"
citus_version:
required: false
type: string
default: ""
secrets:
codecov_token:
required: false
jobs:
test:
name: PG${{ fromJson(matrix.pg_version).major }} - ${{ matrix.make }}${{ inputs.citus_version && format(' - {0}', inputs.citus_version) || '' }}
strategy:
fail-fast: false
matrix:
pg_version: ${{ fromJson(inputs.pg_versions) }}
make: ${{ fromJson(inputs.make_targets) }}
runs-on: ubuntu-latest
container:
image: "${{ inputs.image_name }}:${{ fromJson(matrix.pg_version).full }}${{ inputs.image_suffix }}"
options: >-
--user root
--dns=8.8.8.8
--cap-add=SYS_NICE
--security-opt seccomp=unconfined
steps:
- uses: actions/checkout@v4
- uses: "./.github/actions/setup_extension"
- name: Run Test
run: CITUSVERSION=${{ inputs.citus_version }} gosu circleci make -C src/test/${{ inputs.suite }} ${{ matrix.make }}
timeout-minutes: 20
- uses: "./.github/actions/save_logs_and_results"
if: always()
with:
folder: ${{ fromJson(matrix.pg_version).major }}_${{ matrix.make }}${{ inputs.citus_version && format('_{0}', inputs.citus_version) || '' }}
- uses: "./.github/actions/upload_coverage"
if: always()
with:
flags: ${{ env.PG_MAJOR }}_${{ inputs.suite }}_${{ matrix.make }}
codecov_token: ${{ secrets.codecov_token }}