[server] avoid deserialization of PubSubPosition #8710
Workflow file for this run
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# GitHub Actions workflow for running compatibility tests: Avro and Pulsar Venice integration tests | |
name: TestsDeCompatibilite | |
on: [push, pull_request, workflow_dispatch] | |
jobs: | |
AvroCompatibilityTests: | |
strategy: | |
fail-fast: false | |
matrix: | |
jdk: [17] | |
runs-on: ubuntu-latest | |
timeout-minutes: 30 | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
fetch-depth: 0 | |
- name: Set up JDK | |
uses: actions/setup-java@v4 | |
with: | |
java-version: ${{ matrix.jdk }} | |
distribution: 'temurin' | |
cache: 'gradle' | |
- shell: bash | |
run: | | |
git remote set-head origin --auto | |
git remote add upstream https://github.com/linkedin/venice | |
git fetch upstream | |
- name: Setup Gradle | |
uses: gradle/actions/setup-gradle@v4 | |
with: | |
add-job-summary: never | |
- name: Free up disk space in the background | |
run: | | |
bash scripts/ci/util_free_space.sh > background_cleanup.log 2>&1 & | |
- name: Run Avro Compatibility Tests | |
run: ./gradlew -DmaxParallelForks=2 --parallel :internal:venice-avro-compatibility-test:test --continue | |
- name: Package Build Artifacts | |
if: success() || failure() | |
shell: bash | |
run: | | |
mkdir ${{ github.job }}-artifacts | |
find . -path "**/build/reports/*" -or -path "**/build/test-results/*" > artifacts.list | |
rsync -R --files-from=artifacts.list . ${{ github.job }}-artifacts | |
tar -zcvf ${{ github.job }}-jdk${{ matrix.jdk }}-logs.tar.gz ${{ github.job }}-artifacts | |
- name: Upload Build Artifacts | |
if: success() || failure() | |
uses: actions/upload-artifact@v4 | |
with: | |
name: ${{ github.job }} | |
path: ${{ github.job }}-jdk${{ matrix.jdk }}-logs.tar.gz | |
retention-days: 30 | |
DuckVinciIntegrationTests: | |
strategy: | |
fail-fast: false | |
matrix: | |
jdk: [17] | |
runs-on: ubuntu-latest | |
timeout-minutes: 30 | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
fetch-depth: 0 | |
- name: Set up JDK | |
uses: actions/setup-java@v4 | |
with: | |
java-version: ${{ matrix.jdk }} | |
distribution: 'temurin' | |
cache: 'gradle' | |
- shell: bash | |
run: | | |
git remote set-head origin --auto | |
git remote add upstream https://github.com/linkedin/venice | |
git fetch upstream | |
- name: Setup Gradle | |
uses: gradle/actions/setup-gradle@v4 | |
with: | |
add-job-summary: never | |
- name: Free up disk space in the background | |
run: | | |
bash scripts/ci/util_free_space.sh > background_cleanup.log 2>&1 & | |
- name: Run DuckDB Integration Tests | |
run: ./gradlew -DforkEvery=1 -DmaxParallelForks=1 :integrations:venice-duckdb:integrationTest --continue | |
- name: Package Build Artifacts | |
if: success() || failure() | |
shell: bash | |
run: | | |
mkdir ${{ github.job }}-artifacts | |
find . -path "**/build/reports/*" -or -path "**/build/test-results/*" > artifacts.list | |
rsync -R --files-from=artifacts.list . ${{ github.job }}-artifacts | |
tar -zcvf ${{ github.job }}-jdk${{ matrix.jdk }}-logs.tar.gz ${{ github.job }}-artifacts | |
- name: Upload Build Artifacts | |
if: success() || failure() | |
uses: actions/upload-artifact@v4 | |
with: | |
name: ${{ github.job }} | |
path: ${{ github.job }}-jdk${{ matrix.jdk }}-logs.tar.gz | |
retention-days: 30 | |
PulsarVeniceIntegrationTests: | |
strategy: | |
fail-fast: false | |
matrix: | |
jdk: [17] | |
runs-on: ubuntu-latest | |
timeout-minutes: 30 | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
fetch-depth: 0 | |
- name: Set up JDK | |
uses: actions/setup-java@v4 | |
with: | |
java-version: ${{ matrix.jdk }} | |
distribution: 'temurin' | |
cache: 'gradle' | |
- shell: bash | |
run: | | |
git remote set-head origin --auto | |
git remote add upstream https://github.com/linkedin/venice | |
git fetch upstream | |
- name: Setup Gradle | |
uses: gradle/actions/setup-gradle@v4 | |
with: | |
add-job-summary: never | |
- name: Free up disk space in the background | |
run: | | |
bash scripts/ci/util_free_space.sh > background_cleanup.log 2>&1 & | |
- name: Build with gradle | |
run: ./gradlew assemble --continue --no-daemon -DforkEvery=1 -DmaxParallelForks=1 | |
- name: Build docker images for Venice (latest-dev tag) | |
shell: bash | |
run: | | |
cd ${{ github.workspace }}/docker | |
./build-venice-docker-images.sh | |
cd ${{ github.workspace }} | |
- name: Build docker images for Pulsar test (latest-dev tag) | |
shell: bash | |
run: | | |
cd ${{ github.workspace }}/tests/docker-images/pulsar-sink | |
docker build --tag=pulsar/venice-test:latest-dev ${{ github.workspace }} -f ./Dockerfile | |
cd ${{ github.workspace }} | |
- name: Run the test | |
shell: bash | |
run: | | |
./gradlew :tests:venice-pulsar-test:pulsarIntegrationTest -i | |
- name: Package Build Artifacts | |
if: success() || failure() | |
shell: bash | |
run: | | |
mkdir ${{ github.job }}-artifacts | |
find . -path "**/build/reports/*" -or -path "**/build/test-results/*" > artifacts.list | |
rsync -R --files-from=artifacts.list . ${{ github.job }}-artifacts | |
tar -zcvf ${{ github.job }}-artifacts.tar.gz ${{ github.job }}-artifacts | |
- name: Upload Build Artifacts | |
if: success() || failure() | |
uses: actions/upload-artifact@v4 | |
with: | |
name: ${{ github.job }} | |
path: ${{ github.job }}-artifacts.tar.gz | |
retention-days: 30 | |
# This workflow gets skipped if all upstream jobs succeeded, but it runs (and fails) if any upstream failed. | |
# This is what we want since GitHub required actions do not block merging when skipped, but can block it when failed. | |
CompatibilityTestsFailureAlert: | |
strategy: | |
fail-fast: false | |
runs-on: ubuntu-latest | |
needs: [AvroCompatibilityTests, DuckVinciIntegrationTests, PulsarVeniceIntegrationTests] | |
timeout-minutes: 30 | |
if: ${{ cancelled() || contains(needs.*.result, 'cancelled') || contains(needs.*.result, 'failure') }} | |
steps: | |
- name: NoGood | |
shell: bash | |
run: | | |
echo "Some workflows have failed!" | |
exit 1 |