diff --git a/.github/changes-filter.yaml b/.github/changes-filter.yaml new file mode 100644 index 0000000000000..6b8f7435b9143 --- /dev/null +++ b/.github/changes-filter.yaml @@ -0,0 +1,10 @@ +# contains pattern definitions used in workflows "changes" step +# pattern syntax: https://github.com/micromatch/picomatch +all: + - '**' +docs: + - 'site2/**' + - 'deployment/**' + - '.asf.yaml' + - '*.md' + - '**/*.md' diff --git a/.github/workflows/ci-build-macos.yaml b/.github/workflows/ci-build-macos.yaml index 4a35687fb9028..e33ade12be65a 100644 --- a/.github/workflows/ci-build-macos.yaml +++ b/.github/workflows/ci-build-macos.yaml @@ -22,11 +22,9 @@ on: pull_request: branches: - master - paths-ignore: ['site2/**', 'deployment/**'] push: branches: - branch-* - paths-ignore: ['site2/**', 'deployment/**'] env: MAVEN_OPTS: -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.http.retryHandler.class=standard -Dmaven.wagon.http.retryHandler.count=3 @@ -45,7 +43,18 @@ jobs: - name: Tune Runner VM uses: ./.github/actions/tune-runner-vm + - name: Detect changed files + id: changes + uses: apache/pulsar-test-infra/paths-filter@master + with: + filters: .github/changes-filter.yaml + + - name: Check changed files + id: check_changes + run: echo "::set-output name=docs_only::${{ fromJSON(steps.changes.outputs.all_count) == fromJSON(steps.changes.outputs.docs_count) && fromJSON(steps.changes.outputs.docs_count) > 0 }}" + - name: Cache Maven dependencies + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} uses: actions/cache@v2 with: path: | @@ -56,12 +65,15 @@ jobs: ${{ runner.os }}-m2-dependencies-all- - name: Set up JDK 1.8 + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} uses: actions/setup-java@v1 with: java-version: 1.8 - name: Replace maven's wagon-http version + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: sudo ./build/replace_maven-wagon-http-version.sh - name: build package + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: mvn -B clean install -DskipTests diff --git a/.github/workflows/ci-cpp-build-centos7.yaml b/.github/workflows/ci-cpp-build-centos7.yaml index 028bcc5425495..55151ba1cdd5c 100644 --- a/.github/workflows/ci-cpp-build-centos7.yaml +++ b/.github/workflows/ci-cpp-build-centos7.yaml @@ -22,10 +22,15 @@ on: pull_request: branches: - master + paths: + - '.github/workflows/**' + - 'pulsar-client-cpp/**' push: branches: - branch-* - + paths: + - '.github/workflows/**' + - 'pulsar-client-cpp/**' jobs: cpp-build-centos7: @@ -40,23 +45,18 @@ jobs: - name: Tune Runner VM uses: ./.github/actions/tune-runner-vm - - name: Changed files check + - name: Detect changed files id: changes uses: apache/pulsar-test-infra/paths-filter@master with: - filters: | - # pattern syntax: https://github.com/micromatch/picomatch - all: - - 'pulsar-client-cpp/**' - docs: - - 'site2/**' - - 'deployment/**' - - '.asf.yaml' - - '*.md' - - '**/*.md' + filters: .github/changes-filter.yaml + + - name: Check changed files + id: check_changes + run: echo "::set-output name=docs_only::${{ fromJSON(steps.changes.outputs.all_count) == fromJSON(steps.changes.outputs.docs_count) && fromJSON(steps.changes.outputs.docs_count) > 0 }}" - name: build cpp client on centos 7 - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: | echo "Build C++ client library on CentOS 7" - pulsar-client-cpp/docker-build-centos7.sh + pulsar-client-cpp/docker-build-centos7.sh \ No newline at end of file diff --git a/.github/workflows/ci-cpp-build-windows.yaml b/.github/workflows/ci-cpp-build-windows.yaml index 87de9936e7aa9..a0449491e471e 100644 --- a/.github/workflows/ci-cpp-build-windows.yaml +++ b/.github/workflows/ci-cpp-build-windows.yaml @@ -22,9 +22,15 @@ on: pull_request: branches: - master + paths: + - '.github/workflows/**' + - 'pulsar-client-cpp/**' push: branches: - branch-* + paths: + - '.github/workflows/**' + - 'pulsar-client-cpp/**' env: VCPKG_FEATURE_FLAGS: manifests @@ -51,12 +57,24 @@ jobs: - name: checkout uses: actions/checkout@v2 + - name: Detect changed files + id: changes + uses: apache/pulsar-test-infra/paths-filter@master + with: + filters: .github/changes-filter.yaml + + - name: Check changed files + id: check_changes + run: echo "::set-output name=docs_only::${{ fromJSON(steps.changes.outputs.all_count) == fromJSON(steps.changes.outputs.docs_count) && fromJSON(steps.changes.outputs.docs_count) > 0 }}" + - name: Install vcpkg packages + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} shell: bash run: | cd pulsar-client-cpp && vcpkg install --triplet ${{ matrix.triplet }} - name: Configure + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} shell: bash run: | if [ "$RUNNER_OS" == "Windows" ]; then @@ -71,9 +89,10 @@ jobs: fi - name: Compile + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} shell: bash run: | if [ "$RUNNER_OS" == "Windows" ]; then cd pulsar-client-cpp && \ cmake --build ./build - fi + fi \ No newline at end of file diff --git a/.github/workflows/ci-cpp.yaml b/.github/workflows/ci-cpp.yaml index 371a465ace514..f33fb17cf3df3 100644 --- a/.github/workflows/ci-cpp.yaml +++ b/.github/workflows/ci-cpp.yaml @@ -43,23 +43,18 @@ jobs: - name: Tune Runner VM uses: ./.github/actions/tune-runner-vm - - name: Changed files check + - name: Detect changed files id: changes uses: apache/pulsar-test-infra/paths-filter@master with: - filters: | - # pattern syntax: https://github.com/micromatch/picomatch - all: - - '**' - docs: - - 'site2/**' - - 'deployment/**' - - '.asf.yaml' - - '*.md' - - '**/*.md' + filters: .github/changes-filter.yaml + + - name: Check changed files + id: check_changes + run: echo "::set-output name=docs_only::${{ fromJSON(steps.changes.outputs.all_count) == fromJSON(steps.changes.outputs.docs_count) && fromJSON(steps.changes.outputs.docs_count) > 0 }}" - name: Cache local Maven repository - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} uses: actions/cache@v2 with: path: | @@ -71,12 +66,12 @@ jobs: - name: Set up JDK 1.8 uses: actions/setup-java@v1 - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} with: java-version: 1.8 - name: clean disk - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: | sudo swapoff -a sudo rm -f /swapfile @@ -85,22 +80,22 @@ jobs: df -h - name: Replace maven's wagon-http version - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: sudo ./build/replace_maven-wagon-http-version.sh - name: build package - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: mvn -B -ntp -q install -Pcore-modules,-main -DskipTests - name: build cpp artifacts - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: | echo "Build C++ client library" export CMAKE_ARGS="-DCMAKE_BUILD_TYPE=Debug -DBUILD_DYNAMIC_LIB=OFF -DPYTHON_INCLUDE_DIR=/usr/include/python2.7 -DPYTHON_LIBRARY=/usr/lib/x86_64-linux-gnu/libpython2.7.so" pulsar-client-cpp/docker-build.sh - name: run c++ tests - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: pulsar-client-cpp/docker-tests.sh - name: Upload test-logs diff --git a/.github/workflows/ci-go-functions-style.yaml b/.github/workflows/ci-go-functions-style.yaml index 652754c13402c..4c77cf2bf47b8 100644 --- a/.github/workflows/ci-go-functions-style.yaml +++ b/.github/workflows/ci-go-functions-style.yaml @@ -51,43 +51,38 @@ jobs: - name: Tune Runner VM uses: ./.github/actions/tune-runner-vm - - name: Changed files check + - name: Detect changed files id: changes uses: apache/pulsar-test-infra/paths-filter@master with: - filters: | - # pattern syntax: https://github.com/micromatch/picomatch - all: - - '**' - docs: - - 'site2/**' - - 'deployment/**' - - '.asf.yaml' - - '*.md' - - '**/*.md' + filters: .github/changes-filter.yaml + + - name: Check changed files + id: check_changes + run: echo "::set-output name=docs_only::${{ fromJSON(steps.changes.outputs.all_count) == fromJSON(steps.changes.outputs.docs_count) && fromJSON(steps.changes.outputs.docs_count) > 0 }}" - name: Set up Go uses: actions/setup-go@v2 - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} with: go-version: ${{ matrix.go-version }} id: go - name: InstallTool - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: | cd pulsar-function-go wget -O - -q https://raw.githubusercontent.com/golangci/golangci-lint/master/install.sh| sh -s v1.18.0 ./bin/golangci-lint --version - name: Build - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: | cd pulsar-function-go go build ./... - name: CheckStyle - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: | cd pulsar-function-go ./bin/golangci-lint run -c ./golangci.yml ./pf diff --git a/.github/workflows/ci-go-functions-test.yaml b/.github/workflows/ci-go-functions-test.yaml index c37f103467417..37e8b81729efa 100644 --- a/.github/workflows/ci-go-functions-test.yaml +++ b/.github/workflows/ci-go-functions-test.yaml @@ -53,30 +53,25 @@ jobs: - name: Tune Runner VM uses: ./.github/actions/tune-runner-vm - - name: Changed files check + - name: Detect changed files id: changes uses: apache/pulsar-test-infra/paths-filter@master with: - filters: | - # pattern syntax: https://github.com/micromatch/picomatch - all: - - '**' - docs: - - 'site2/**' - - 'deployment/**' - - '.asf.yaml' - - '*.md' - - '**/*.md' + filters: .github/changes-filter.yaml + + - name: Check changed files + id: check_changes + run: echo "::set-output name=docs_only::${{ fromJSON(steps.changes.outputs.all_count) == fromJSON(steps.changes.outputs.docs_count) && fromJSON(steps.changes.outputs.docs_count) > 0 }}" - name: Set up Go uses: actions/setup-go@v2 - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} with: go-version: ${{ matrix.go-version }} id: go - name: Run tests - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: | cd pulsar-function-go go test -v $(go list ./... | grep -v examples) diff --git a/.github/workflows/ci-integration-backwards-compatibility.yaml b/.github/workflows/ci-integration-backwards-compatibility.yaml index 2da4598b11d88..54e17777de32c 100644 --- a/.github/workflows/ci-integration-backwards-compatibility.yaml +++ b/.github/workflows/ci-integration-backwards-compatibility.yaml @@ -43,23 +43,18 @@ jobs: - name: Tune Runner VM uses: ./.github/actions/tune-runner-vm - - name: Changed files check + - name: Detect changed files id: changes uses: apache/pulsar-test-infra/paths-filter@master with: - filters: | - # pattern syntax: https://github.com/micromatch/picomatch - all: - - '**' - docs: - - 'site2/**' - - 'deployment/**' - - '.asf.yaml' - - '*.md' - - '**/*.md' + filters: .github/changes-filter.yaml + + - name: Check changed files + id: check_changes + run: echo "::set-output name=docs_only::${{ fromJSON(steps.changes.outputs.all_count) == fromJSON(steps.changes.outputs.docs_count) && fromJSON(steps.changes.outputs.docs_count) > 0 }}" - name: Cache local Maven repository - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} uses: actions/cache@v2 with: path: | @@ -71,17 +66,17 @@ jobs: ${{ runner.os }}-m2-dependencies-core-modules- - name: Set up JDK 1.8 - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} uses: actions/setup-java@v1 with: java-version: 1.8 - name: Replace maven's wagon-http version - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: sudo ./build/replace_maven-wagon-http-version.sh - name: clean disk - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: | sudo swapoff -a sudo rm -rf /swapfile /usr/share/dotnet /usr/local/lib/android /opt/ghc @@ -90,23 +85,23 @@ jobs: df -h - name: run install by skip tests - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: mvn -q -B -ntp clean install -DskipTests - name: build pulsar image - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: mvn -B -f docker/pulsar/pom.xml install -am -Pdocker,-main -DskipTests -Ddocker.nocache=true - name: build pulsar-all image - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: mvn -B -f docker/pulsar-all/pom.xml install -am -Pdocker,-main -DskipTests -Ddocker.nocache=true - name: build artifacts and docker image - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: mvn -B -f tests/docker-images/pom.xml install -am -Pdocker,-main -DskipTests - name: run integration tests - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: ./build/run_integration_group.sh BACKWARDS_COMPAT - name: Upload container logs diff --git a/.github/workflows/ci-integration-cli.yaml b/.github/workflows/ci-integration-cli.yaml index b1f5088dc03bc..76f6c760d8f9c 100644 --- a/.github/workflows/ci-integration-cli.yaml +++ b/.github/workflows/ci-integration-cli.yaml @@ -43,23 +43,18 @@ jobs: - name: Tune Runner VM uses: ./.github/actions/tune-runner-vm - - name: Changed files check + - name: Detect changed files id: changes uses: apache/pulsar-test-infra/paths-filter@master with: - filters: | - # pattern syntax: https://github.com/micromatch/picomatch - all: - - '**' - docs: - - 'site2/**' - - 'deployment/**' - - '.asf.yaml' - - '*.md' - - '**/*.md' + filters: .github/changes-filter.yaml + + - name: Check changed files + id: check_changes + run: echo "::set-output name=docs_only::${{ fromJSON(steps.changes.outputs.all_count) == fromJSON(steps.changes.outputs.docs_count) && fromJSON(steps.changes.outputs.docs_count) > 0 }}" - name: Cache local Maven repository - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} uses: actions/cache@v2 with: path: | @@ -72,16 +67,16 @@ jobs: - name: Set up JDK 1.8 uses: actions/setup-java@v1 - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} with: java-version: 1.8 - name: Replace maven's wagon-http version - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: sudo ./build/replace_maven-wagon-http-version.sh - name: clean disk - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: | sudo swapoff -a sudo rm -rf /swapfile /usr/share/dotnet /usr/local/lib/android /opt/ghc @@ -90,23 +85,23 @@ jobs: df -h - name: run install by skip tests - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: mvn -q -B -ntp clean install -DskipTests - name: build pulsar image - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: mvn -B -f docker/pulsar/pom.xml install -am -Pdocker,-main -DskipTests -Ddocker.nocache=true - name: build pulsar-all image - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: mvn -B -f docker/pulsar-all/pom.xml install -am -Pdocker,-main -DskipTests -Ddocker.nocache=true - name: build artifacts and docker image - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: mvn -B -f tests/docker-images/pom.xml install -am -Pdocker,-main -DskipTests - name: run integration tests - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: ./build/run_integration_group.sh CLI - name: Upload container logs diff --git a/.github/workflows/ci-integration-function.yaml b/.github/workflows/ci-integration-function.yaml index d35c6a89f4cb1..dcf473e07d86d 100644 --- a/.github/workflows/ci-integration-function.yaml +++ b/.github/workflows/ci-integration-function.yaml @@ -43,23 +43,18 @@ jobs: - name: Tune Runner VM uses: ./.github/actions/tune-runner-vm - - name: Changed files check + - name: Detect changed files id: changes uses: apache/pulsar-test-infra/paths-filter@master with: - filters: | - # pattern syntax: https://github.com/micromatch/picomatch - all: - - '**' - docs: - - 'site2/**' - - 'deployment/**' - - '.asf.yaml' - - '*.md' - - '**/*.md' + filters: .github/changes-filter.yaml + + - name: Check changed files + id: check_changes + run: echo "::set-output name=docs_only::${{ fromJSON(steps.changes.outputs.all_count) == fromJSON(steps.changes.outputs.docs_count) && fromJSON(steps.changes.outputs.docs_count) > 0 }}" - name: Cache local Maven repository - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} uses: actions/cache@v2 with: path: | @@ -72,16 +67,16 @@ jobs: - name: Set up JDK 1.8 uses: actions/setup-java@v1 - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} with: java-version: 1.8 - name: Replace maven's wagon-http version - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: sudo ./build/replace_maven-wagon-http-version.sh - name: clean disk - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: | sudo swapoff -a sudo rm -rf /swapfile /usr/share/dotnet /usr/local/lib/android /opt/ghc @@ -90,23 +85,23 @@ jobs: df -h - name: run install by skip tests - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: mvn -q -B -ntp clean install -DskipTests - name: build pulsar image - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: mvn -B -f docker/pulsar/pom.xml install -am -Pdocker,-main -DskipTests -Ddocker.nocache=true - name: build pulsar-all image - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: mvn -B -f docker/pulsar-all/pom.xml install -am -Pdocker,-main -DskipTests -Ddocker.nocache=true - name: build artifacts and docker image - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: mvn -B -f tests/docker-images/pom.xml install -am -Pdocker,-main -DskipTests - name: run integration tests - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: ./build/run_integration_group.sh FUNCTION - name: Upload container logs diff --git a/.github/workflows/ci-integration-messaging.yaml b/.github/workflows/ci-integration-messaging.yaml index 016982b3f424c..43944dede63ed 100644 --- a/.github/workflows/ci-integration-messaging.yaml +++ b/.github/workflows/ci-integration-messaging.yaml @@ -43,23 +43,18 @@ jobs: - name: Tune Runner VM uses: ./.github/actions/tune-runner-vm - - name: Changed files check + - name: Detect changed files id: changes uses: apache/pulsar-test-infra/paths-filter@master with: - filters: | - # pattern syntax: https://github.com/micromatch/picomatch - all: - - '**' - docs: - - 'site2/**' - - 'deployment/**' - - '.asf.yaml' - - '*.md' - - '**/*.md' + filters: .github/changes-filter.yaml + + - name: Check changed files + id: check_changes + run: echo "::set-output name=docs_only::${{ fromJSON(steps.changes.outputs.all_count) == fromJSON(steps.changes.outputs.docs_count) && fromJSON(steps.changes.outputs.docs_count) > 0 }}" - name: Cache local Maven repository - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} uses: actions/cache@v2 with: path: | @@ -72,16 +67,16 @@ jobs: - name: Set up JDK 1.8 uses: actions/setup-java@v1 - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} with: java-version: 1.8 - name: Replace maven's wagon-http version - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: sudo ./build/replace_maven-wagon-http-version.sh - name: clean disk - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: | sudo swapoff -a sudo rm -rf /swapfile /usr/share/dotnet /usr/local/lib/android /opt/ghc @@ -90,23 +85,23 @@ jobs: df -h - name: run install by skip tests - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: mvn -q -B -ntp clean install -DskipTests - name: build pulsar image - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: mvn -B -f docker/pulsar/pom.xml install -am -Pdocker,-main -DskipTests -Ddocker.nocache=true - name: build pulsar-all image - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: mvn -B -f docker/pulsar-all/pom.xml install -am -Pdocker,-main -DskipTests -Ddocker.nocache=true - name: build artifacts and docker image - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: mvn -B -f tests/docker-images/pom.xml install -am -Pdocker,-main -DskipTests -Ddocker.nocache=true - name: run integration tests - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: ./build/run_integration_group.sh MESSAGING - name: Upload container logs diff --git a/.github/workflows/ci-integration-process.yaml b/.github/workflows/ci-integration-process.yaml index 840488302e735..78abe9d5c4924 100644 --- a/.github/workflows/ci-integration-process.yaml +++ b/.github/workflows/ci-integration-process.yaml @@ -42,23 +42,18 @@ jobs: - name: Tune Runner VM uses: ./.github/actions/tune-runner-vm - - name: Changed files check + - name: Detect changed files id: changes uses: apache/pulsar-test-infra/paths-filter@master with: - filters: | - # pattern syntax: https://github.com/micromatch/picomatch - all: - - '**' - docs: - - 'site2/**' - - 'deployment/**' - - '.asf.yaml' - - '*.md' - - '**/*.md' + filters: .github/changes-filter.yaml + + - name: Check changed files + id: check_changes + run: echo "::set-output name=docs_only::${{ fromJSON(steps.changes.outputs.all_count) == fromJSON(steps.changes.outputs.docs_count) && fromJSON(steps.changes.outputs.docs_count) > 0 }}" - name: Cache local Maven repository - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} uses: actions/cache@v2 with: path: | @@ -71,16 +66,16 @@ jobs: - name: Set up JDK 1.8 uses: actions/setup-java@v1 - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} with: java-version: 1.8 - name: Replace maven's wagon-http version - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: sudo ./build/replace_maven-wagon-http-version.sh - name: clean disk - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: | sudo swapoff -a sudo rm -rf /swapfile /usr/share/dotnet /usr/local/lib/android /opt/ghc @@ -89,23 +84,23 @@ jobs: df -h - name: run install by skip tests - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: mvn -q -B -ntp clean install -DskipTests - name: build pulsar image - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: mvn -B -f docker/pulsar/pom.xml install -am -Pdocker,-main -DskipTests -Ddocker.nocache=true - name: build pulsar-all image - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: mvn -B -f docker/pulsar-all/pom.xml install -am -Pdocker,-main -DskipTests -Ddocker.nocache=true - name: build artifacts and docker image - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: mvn -B -f tests/docker-images/pom.xml install -am -Pdocker,-main -DskipTests - name: run integration tests - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: ./build/run_integration_group.sh PULSAR_CONNECTORS_PROCESS - name: Upload container logs diff --git a/.github/workflows/ci-integration-schema.yaml b/.github/workflows/ci-integration-schema.yaml index 99b4f646c0fc7..256a3b69ee548 100644 --- a/.github/workflows/ci-integration-schema.yaml +++ b/.github/workflows/ci-integration-schema.yaml @@ -42,23 +42,18 @@ jobs: - name: Tune Runner VM uses: ./.github/actions/tune-runner-vm - - name: Changed files check + - name: Detect changed files id: changes uses: apache/pulsar-test-infra/paths-filter@master with: - filters: | - # pattern syntax: https://github.com/micromatch/picomatch - all: - - '**' - docs: - - 'site2/**' - - 'deployment/**' - - '.asf.yaml' - - '*.md' - - '**/*.md' + filters: .github/changes-filter.yaml + + - name: Check changed files + id: check_changes + run: echo "::set-output name=docs_only::${{ fromJSON(steps.changes.outputs.all_count) == fromJSON(steps.changes.outputs.docs_count) && fromJSON(steps.changes.outputs.docs_count) > 0 }}" - name: Cache local Maven repository - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} uses: actions/cache@v2 with: path: | @@ -71,16 +66,16 @@ jobs: - name: Set up JDK 1.8 uses: actions/setup-java@v1 - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} with: java-version: 1.8 - name: Replace maven's wagon-http version - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: sudo ./build/replace_maven-wagon-http-version.sh - name: clean disk - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: | sudo swapoff -a sudo rm -rf /swapfile /usr/share/dotnet /usr/local/lib/android /opt/ghc @@ -89,20 +84,20 @@ jobs: df -h - name: run install by skip tests - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: mvn -q -B -ntp clean install -DskipTests - name: build pulsar image - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: mvn -B -f docker/pulsar/pom.xml install -am -Pdocker,-main -DskipTests -Ddocker.nocache=true - name: build pulsar-all image - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: mvn -B -f docker/pulsar-all/pom.xml install -am -Pdocker,-main -DskipTests -Ddocker.nocache=true - name: build artifacts and docker image - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: mvn -B -f tests/docker-images/pom.xml install -am -Pdocker,-main -DskipTests - name: run integration tests - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: ./build/run_integration_group.sh SCHEMA - name: Upload container logs diff --git a/.github/workflows/ci-integration-sql.yaml b/.github/workflows/ci-integration-sql.yaml index 576bbae0f269b..22082a5cdb45b 100644 --- a/.github/workflows/ci-integration-sql.yaml +++ b/.github/workflows/ci-integration-sql.yaml @@ -42,23 +42,18 @@ jobs: - name: Tune Runner VM uses: ./.github/actions/tune-runner-vm - - name: Changed files check + - name: Detect changed files id: changes uses: apache/pulsar-test-infra/paths-filter@master with: - filters: | - # pattern syntax: https://github.com/micromatch/picomatch - all: - - '**' - docs: - - 'site2/**' - - 'deployment/**' - - '.asf.yaml' - - '*.md' - - '**/*.md' + filters: .github/changes-filter.yaml + + - name: Check changed files + id: check_changes + run: echo "::set-output name=docs_only::${{ fromJSON(steps.changes.outputs.all_count) == fromJSON(steps.changes.outputs.docs_count) && fromJSON(steps.changes.outputs.docs_count) > 0 }}" - name: Cache local Maven repository - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} uses: actions/cache@v2 with: path: | @@ -71,16 +66,16 @@ jobs: - name: Set up JDK 1.8 uses: actions/setup-java@v1 - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} with: java-version: 1.8 - name: Replace maven's wagon-http version - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: sudo ./build/replace_maven-wagon-http-version.sh - name: clean disk - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: | sudo swapoff -a sudo rm -rf /swapfile /usr/share/dotnet /usr/local/lib/android /opt/ghc @@ -89,23 +84,23 @@ jobs: df -h - name: run install by skip tests - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: mvn -q -B -ntp clean install -DskipTests - name: build pulsar image - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: mvn -B -f docker/pulsar/pom.xml install -am -Pdocker,-main -DskipTests -Ddocker.nocache=true - name: build pulsar-all image - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: mvn -B -f docker/pulsar-all/pom.xml install -am -Pdocker,-main -DskipTests -Ddocker.nocache=true - name: build artifacts and docker pulsar latest test image - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: mvn -B -f tests/docker-images/pom.xml install -am -Pdocker,-main -DskipTests - name: run integration tests - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: ./build/run_integration_group.sh SQL - name: Upload container logs diff --git a/.github/workflows/ci-integration-standalone.yaml b/.github/workflows/ci-integration-standalone.yaml index 0404a09b1c13e..937b69210012d 100644 --- a/.github/workflows/ci-integration-standalone.yaml +++ b/.github/workflows/ci-integration-standalone.yaml @@ -42,23 +42,18 @@ jobs: - name: Tune Runner VM uses: ./.github/actions/tune-runner-vm - - name: Changed files check + - name: Detect changed files id: changes uses: apache/pulsar-test-infra/paths-filter@master with: - filters: | - # pattern syntax: https://github.com/micromatch/picomatch - all: - - '**' - docs: - - 'site2/**' - - 'deployment/**' - - '.asf.yaml' - - '*.md' - - '**/*.md' + filters: .github/changes-filter.yaml + + - name: Check changed files + id: check_changes + run: echo "::set-output name=docs_only::${{ fromJSON(steps.changes.outputs.all_count) == fromJSON(steps.changes.outputs.docs_count) && fromJSON(steps.changes.outputs.docs_count) > 0 }}" - name: Cache local Maven repository - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} uses: actions/cache@v2 with: path: | @@ -71,16 +66,16 @@ jobs: - name: Set up JDK 1.8 uses: actions/setup-java@v1 - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} with: java-version: 1.8 - name: Replace maven's wagon-http version - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: sudo ./build/replace_maven-wagon-http-version.sh - name: clean disk - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: | sudo swapoff -a sudo rm -rf /swapfile /usr/share/dotnet /usr/local/lib/android /opt/ghc @@ -89,23 +84,23 @@ jobs: df -h - name: run install by skip tests - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: mvn -q -B -ntp clean install -DskipTests - name: build pulsar image - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: mvn -B -f docker/pulsar/pom.xml install -am -Pdocker,-main -DskipTests -Ddocker.nocache=true - name: build pulsar-all image - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: mvn -B -f docker/pulsar-all/pom.xml install -am -Pdocker,-main -DskipTests -Ddocker.nocache=true - name: build artifacts and docker image - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: mvn -B -f tests/docker-images/pom.xml install -am -Pdocker,-main -DskipTests - name: run integration tests - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: ./build/run_integration_group.sh STANDALONE - name: Upload container logs diff --git a/.github/workflows/ci-integration-thread.yaml b/.github/workflows/ci-integration-thread.yaml index cf2a5e1c0b9cc..8e41fb5dcc9ed 100644 --- a/.github/workflows/ci-integration-thread.yaml +++ b/.github/workflows/ci-integration-thread.yaml @@ -42,23 +42,18 @@ jobs: - name: Tune Runner VM uses: ./.github/actions/tune-runner-vm - - name: Changed files check + - name: Detect changed files id: changes uses: apache/pulsar-test-infra/paths-filter@master with: - filters: | - # pattern syntax: https://github.com/micromatch/picomatch - all: - - '**' - docs: - - 'site2/**' - - 'deployment/**' - - '.asf.yaml' - - '*.md' - - '**/*.md' + filters: .github/changes-filter.yaml + + - name: Check changed files + id: check_changes + run: echo "::set-output name=docs_only::${{ fromJSON(steps.changes.outputs.all_count) == fromJSON(steps.changes.outputs.docs_count) && fromJSON(steps.changes.outputs.docs_count) > 0 }}" - name: Cache local Maven repository - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} uses: actions/cache@v2 with: path: | @@ -71,16 +66,16 @@ jobs: - name: Set up JDK 1.8 uses: actions/setup-java@v1 - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} with: java-version: 1.8 - name: Replace maven's wagon-http version - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: sudo ./build/replace_maven-wagon-http-version.sh - name: clean disk - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: | sudo swapoff -a sudo rm -rf /swapfile /usr/share/dotnet /usr/local/lib/android /opt/ghc @@ -89,23 +84,23 @@ jobs: df -h - name: run install by skip tests - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: mvn -q -B -ntp clean install -DskipTests - name: build pulsar image - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: mvn -B -f docker/pulsar/pom.xml install -am -Pdocker,-main -DskipTests -Ddocker.nocache=true - name: build pulsar-all image - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: mvn -B -f docker/pulsar-all/pom.xml install -am -Pdocker,-main -DskipTests -Ddocker.nocache=true - name: build artifacts and docker image - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: mvn -B -f tests/docker-images/pom.xml install -am -Pdocker,-main -DskipTests - name: run integration function - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: ./build/run_integration_group.sh PULSAR_CONNECTORS_THREAD - name: Upload container logs diff --git a/.github/workflows/ci-integration-tiered-filesystem.yaml b/.github/workflows/ci-integration-tiered-filesystem.yaml index 61f10be0cd673..673cd32938b91 100644 --- a/.github/workflows/ci-integration-tiered-filesystem.yaml +++ b/.github/workflows/ci-integration-tiered-filesystem.yaml @@ -42,23 +42,18 @@ jobs: - name: Tune Runner VM uses: ./.github/actions/tune-runner-vm - - name: Changed files check + - name: Detect changed files id: changes uses: apache/pulsar-test-infra/paths-filter@master with: - filters: | - # pattern syntax: https://github.com/micromatch/picomatch - all: - - '**' - docs: - - 'site2/**' - - 'deployment/**' - - '.asf.yaml' - - '*.md' - - '**/*.md' + filters: .github/changes-filter.yaml + + - name: Check changed files + id: check_changes + run: echo "::set-output name=docs_only::${{ fromJSON(steps.changes.outputs.all_count) == fromJSON(steps.changes.outputs.docs_count) && fromJSON(steps.changes.outputs.docs_count) > 0 }}" - name: Cache local Maven repository - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} uses: actions/cache@v2 with: path: | @@ -71,16 +66,16 @@ jobs: - name: Set up JDK 1.8 uses: actions/setup-java@v1 - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} with: java-version: 1.8 - name: Replace maven's wagon-http version - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: sudo ./build/replace_maven-wagon-http-version.sh - name: clean disk - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: | sudo swapoff -a sudo rm -rf /swapfile /usr/share/dotnet /usr/local/lib/android /opt/ghc @@ -89,23 +84,23 @@ jobs: df -h - name: run install by skip tests - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: mvn -q -B -ntp clean install -DskipTests - name: build pulsar image - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: mvn -B -f docker/pulsar/pom.xml install -am -Pdocker,-main -DskipTests -Ddocker.nocache=true - name: build pulsar-all image - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: mvn -B -f docker/pulsar-all/pom.xml install -am -Pdocker,-main -DskipTests -Ddocker.nocache=true - name: build artifacts and docker image - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: mvn -B -f tests/docker-images/pom.xml install -am -Pdocker,-main -DskipTests - name: run integration tests - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: ./build/run_integration_group.sh TIERED_FILESYSTEM - name: Upload container logs diff --git a/.github/workflows/ci-integration-tiered-jcloud.yaml b/.github/workflows/ci-integration-tiered-jcloud.yaml index 8445a35dbc82f..7e6de634ad5d7 100644 --- a/.github/workflows/ci-integration-tiered-jcloud.yaml +++ b/.github/workflows/ci-integration-tiered-jcloud.yaml @@ -42,23 +42,18 @@ jobs: - name: Tune Runner VM uses: ./.github/actions/tune-runner-vm - - name: Changed files check + - name: Detect changed files id: changes uses: apache/pulsar-test-infra/paths-filter@master with: - filters: | - # pattern syntax: https://github.com/micromatch/picomatch - all: - - '**' - docs: - - 'site2/**' - - 'deployment/**' - - '.asf.yaml' - - '*.md' - - '**/*.md' + filters: .github/changes-filter.yaml + + - name: Check changed files + id: check_changes + run: echo "::set-output name=docs_only::${{ fromJSON(steps.changes.outputs.all_count) == fromJSON(steps.changes.outputs.docs_count) && fromJSON(steps.changes.outputs.docs_count) > 0 }}" - name: Cache local Maven repository - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} uses: actions/cache@v2 with: path: | @@ -71,16 +66,16 @@ jobs: - name: Set up JDK 1.8 uses: actions/setup-java@v1 - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} with: java-version: 1.8 - name: Replace maven's wagon-http version - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: sudo ./build/replace_maven-wagon-http-version.sh - name: clean disk - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: | sudo swapoff -a sudo rm -rf /swapfile /usr/share/dotnet /usr/local/lib/android /opt/ghc @@ -89,23 +84,23 @@ jobs: df -h - name: run install by skip tests - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: mvn -q -B -ntp clean install -DskipTests - name: build pulsar image - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: mvn -B -f docker/pulsar/pom.xml install -am -Pdocker,-main -DskipTests -Ddocker.nocache=true - name: build pulsar-all image - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: mvn -B -f docker/pulsar-all/pom.xml install -am -Pdocker,-main -DskipTests -Ddocker.nocache=true - name: build artifacts and docker image - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: mvn -B -f tests/docker-images/pom.xml install -am -Pdocker,-main -DskipTests - name: run integration tests - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: ./build/run_integration_group.sh TIERED_JCLOUD - name: Upload container logs diff --git a/.github/workflows/ci-integration-transaction.yaml b/.github/workflows/ci-integration-transaction.yaml index 920a2dca4c33c..0d12ce27ddd85 100644 --- a/.github/workflows/ci-integration-transaction.yaml +++ b/.github/workflows/ci-integration-transaction.yaml @@ -42,23 +42,18 @@ jobs: - name: Tune Runner VM uses: ./.github/actions/tune-runner-vm - - name: Changed files check + - name: Detect changed files id: changes uses: apache/pulsar-test-infra/paths-filter@master with: - filters: | - # pattern syntax: https://github.com/micromatch/picomatch - all: - - '**' - docs: - - 'site2/**' - - 'deployment/**' - - '.asf.yaml' - - '*.md' - - '**/*.md' + filters: .github/changes-filter.yaml + + - name: Check changed files + id: check_changes + run: echo "::set-output name=docs_only::${{ fromJSON(steps.changes.outputs.all_count) == fromJSON(steps.changes.outputs.docs_count) && fromJSON(steps.changes.outputs.docs_count) > 0 }}" - name: Cache local Maven repository - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} uses: actions/cache@v2 with: path: | @@ -71,16 +66,16 @@ jobs: - name: Set up JDK 1.8 uses: actions/setup-java@v1 - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} with: java-version: 1.8 - name: Replace maven's wagon-http version - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: sudo ./build/replace_maven-wagon-http-version.sh - name: clean disk - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: | sudo swapoff -a sudo rm -rf /swapfile /usr/share/dotnet /usr/local/lib/android /opt/ghc @@ -89,20 +84,20 @@ jobs: df -h - name: run install by skip tests - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: mvn -q -B -ntp clean install -DskipTests - name: build pulsar image - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: mvn -B -f docker/pulsar/pom.xml install -am -Pdocker,-main -DskipTests -Ddocker.nocache=true - name: build pulsar-all image - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: mvn -B -f docker/pulsar-all/pom.xml install -am -Pdocker,-main -DskipTests -Ddocker.nocache=true - name: build artifacts and docker image - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: mvn -B -f tests/docker-images/pom.xml install -am -Pdocker,-main -DskipTests - name: run integration tests - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: ./build/run_integration_group.sh TRANSACTION - name: Upload container logs diff --git a/.github/workflows/ci-license.yaml b/.github/workflows/ci-license.yaml index 4a7386c50354e..e2e66f1f5c777 100644 --- a/.github/workflows/ci-license.yaml +++ b/.github/workflows/ci-license.yaml @@ -43,23 +43,18 @@ jobs: - name: Tune Runner VM uses: ./.github/actions/tune-runner-vm - - name: Changed files check + - name: Detect changed files id: changes uses: apache/pulsar-test-infra/paths-filter@master with: - filters: | - # pattern syntax: https://github.com/micromatch/picomatch - all: - - '**' - docs: - - 'site2/**' - - 'deployment/**' - - '.asf.yaml' - - '*.md' - - '**/*.md' + filters: .github/changes-filter.yaml + + - name: Check changed files + id: check_changes + run: echo "::set-output name=docs_only::${{ fromJSON(steps.changes.outputs.all_count) == fromJSON(steps.changes.outputs.docs_count) && fromJSON(steps.changes.outputs.docs_count) > 0 }}" - name: Cache local Maven repository - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} uses: actions/cache@v2 with: path: | @@ -71,26 +66,26 @@ jobs: ${{ runner.os }}-m2-dependencies-core-modules- - name: Set up JDK 1.8 - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} uses: actions/setup-java@v1 with: java-version: 1.8 - name: Replace maven's wagon-http version - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: sudo ./build/replace_maven-wagon-http-version.sh # license check fails with 3.6.2 so we have to downgrade - name: Set up Maven - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} uses: apache/pulsar-test-infra/setup-maven@master with: maven-version: 3.6.1 - name: build and check license - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: mvn -q -B -ntp -DskipTests apache-rat:check initialize license:check install - name: license check - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: src/check-binary-license ./distribution/server/target/apache-pulsar-*-bin.tar.gz diff --git a/.github/workflows/ci-maven-cache-update.yaml b/.github/workflows/ci-maven-cache-update.yaml index 99193148fe547..edcd4d660ac6f 100644 --- a/.github/workflows/ci-maven-cache-update.yaml +++ b/.github/workflows/ci-maven-cache-update.yaml @@ -75,7 +75,7 @@ jobs: - name: Tune Runner VM uses: ./.github/actions/tune-runner-vm - - name: Changed files check + - name: Detect changed files if: ${{ github.event_name != 'schedule' }} id: changes uses: apache/pulsar-test-infra/paths-filter@master diff --git a/.github/workflows/ci-shade-test.yaml b/.github/workflows/ci-shade-test.yaml index 315d8e33516d5..0fd7d5ff0b261 100644 --- a/.github/workflows/ci-shade-test.yaml +++ b/.github/workflows/ci-shade-test.yaml @@ -43,23 +43,18 @@ jobs: - name: Tune Runner VM uses: ./.github/actions/tune-runner-vm - - name: Changed files check + - name: Detect changed files id: changes uses: apache/pulsar-test-infra/paths-filter@master with: - filters: | - # pattern syntax: https://github.com/micromatch/picomatch - all: - - '**' - docs: - - 'site2/**' - - 'deployment/**' - - '.asf.yaml' - - '*.md' - - '**/*.md' + filters: .github/changes-filter.yaml + + - name: Check changed files + id: check_changes + run: echo "::set-output name=docs_only::${{ fromJSON(steps.changes.outputs.all_count) == fromJSON(steps.changes.outputs.docs_count) && fromJSON(steps.changes.outputs.docs_count) > 0 }}" - name: Cache local Maven repository - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} uses: actions/cache@v2 with: path: | @@ -72,16 +67,16 @@ jobs: - name: Set up JDK 1.8 uses: actions/setup-java@v1 - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} with: java-version: 1.8 - name: Replace maven's wagon-http version - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: sudo ./build/replace_maven-wagon-http-version.sh - name: clean disk - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: | sudo swapoff -a sudo rm -rf /swapfile /usr/share/dotnet /usr/local/lib/android /opt/ghc @@ -90,21 +85,21 @@ jobs: df -h - name: run install by skip tests - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: mvn -q -B -ntp clean install -DskipTests - name: build pulsar image - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: mvn -B -f docker/pulsar/pom.xml install -am -Pdocker,-main -DskipTests -Ddocker.nocache=true - name: build pulsar-all image - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: mvn -B -f docker/pulsar-all/pom.xml install -am -Pdocker,-main -DskipTests -Ddocker.nocache=true - name: build artifacts and docker pulsar latest test image - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: mvn -B -f tests/docker-images/pom.xml install -am -Pdocker,-main -DskipTests - name: run shade tests - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: ./build/run_integration_group.sh SHADE diff --git a/.github/workflows/ci-unit-broker-broker-gp1.yaml b/.github/workflows/ci-unit-broker-broker-gp1.yaml index d8d697e032104..384b299147aba 100644 --- a/.github/workflows/ci-unit-broker-broker-gp1.yaml +++ b/.github/workflows/ci-unit-broker-broker-gp1.yaml @@ -43,23 +43,18 @@ jobs: - name: Tune Runner VM uses: ./.github/actions/tune-runner-vm - - name: Changed files check + - name: Detect changed files id: changes uses: apache/pulsar-test-infra/paths-filter@master with: - filters: | - # pattern syntax: https://github.com/micromatch/picomatch - all: - - '**' - docs: - - 'site2/**' - - 'deployment/**' - - '.asf.yaml' - - '*.md' - - '**/*.md' + filters: .github/changes-filter.yaml + + - name: Check changed files + id: check_changes + run: echo "::set-output name=docs_only::${{ fromJSON(steps.changes.outputs.all_count) == fromJSON(steps.changes.outputs.docs_count) && fromJSON(steps.changes.outputs.docs_count) > 0 }}" - name: Cache local Maven repository - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} uses: actions/cache@v2 with: path: | @@ -71,20 +66,20 @@ jobs: - name: Set up JDK 1.8 uses: actions/setup-java@v1 - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} with: java-version: 1.8 - name: Replace maven's wagon-http version - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: sudo ./build/replace_maven-wagon-http-version.sh - name: build modules - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: mvn -B -ntp -q clean install -Pcore-modules,-main -DskipTests - name: run unit test 'BROKER_GROUP_1' - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: ./build/run_unit_group.sh BROKER_GROUP_1 - name: print JVM thread dumps when cancelled diff --git a/.github/workflows/ci-unit-broker-broker-gp2.yaml b/.github/workflows/ci-unit-broker-broker-gp2.yaml index 5c27a82921bc9..65a33f3ab0ecb 100644 --- a/.github/workflows/ci-unit-broker-broker-gp2.yaml +++ b/.github/workflows/ci-unit-broker-broker-gp2.yaml @@ -43,23 +43,18 @@ jobs: - name: Tune Runner VM uses: ./.github/actions/tune-runner-vm - - name: Changed files check + - name: Detect changed files id: changes uses: apache/pulsar-test-infra/paths-filter@master with: - filters: | - # pattern syntax: https://github.com/micromatch/picomatch - all: - - '**' - docs: - - 'site2/**' - - 'deployment/**' - - '.asf.yaml' - - '*.md' - - '**/*.md' + filters: .github/changes-filter.yaml + + - name: Check changed files + id: check_changes + run: echo "::set-output name=docs_only::${{ fromJSON(steps.changes.outputs.all_count) == fromJSON(steps.changes.outputs.docs_count) && fromJSON(steps.changes.outputs.docs_count) > 0 }}" - name: Cache local Maven repository - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} uses: actions/cache@v2 with: path: | @@ -71,20 +66,20 @@ jobs: - name: Set up JDK 1.8 uses: actions/setup-java@v1 - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} with: java-version: 1.8 - name: Replace maven's wagon-http version - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: sudo ./build/replace_maven-wagon-http-version.sh - name: build modules - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: mvn -B -ntp -q clean install -Pcore-modules,-main -DskipTests - name: run unit test 'BROKER_GROUP_2' - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: ./build/run_unit_group.sh BROKER_GROUP_2 - name: print JVM thread dumps when cancelled diff --git a/.github/workflows/ci-unit-broker-client-api.yaml b/.github/workflows/ci-unit-broker-client-api.yaml index 3acf4ebb0a07f..03919812227a2 100644 --- a/.github/workflows/ci-unit-broker-client-api.yaml +++ b/.github/workflows/ci-unit-broker-client-api.yaml @@ -43,23 +43,18 @@ jobs: - name: Tune Runner VM uses: ./.github/actions/tune-runner-vm - - name: Changed files check + - name: Detect changed files id: changes uses: apache/pulsar-test-infra/paths-filter@master with: - filters: | - # pattern syntax: https://github.com/micromatch/picomatch - all: - - '**' - docs: - - 'site2/**' - - 'deployment/**' - - '.asf.yaml' - - '*.md' - - '**/*.md' + filters: .github/changes-filter.yaml + + - name: Check changed files + id: check_changes + run: echo "::set-output name=docs_only::${{ fromJSON(steps.changes.outputs.all_count) == fromJSON(steps.changes.outputs.docs_count) && fromJSON(steps.changes.outputs.docs_count) > 0 }}" - name: Cache local Maven repository - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} uses: actions/cache@v2 with: path: | @@ -71,20 +66,20 @@ jobs: - name: Set up JDK 1.8 uses: actions/setup-java@v1 - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} with: java-version: 1.8 - name: Replace maven's wagon-http version - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: sudo ./build/replace_maven-wagon-http-version.sh - name: build modules - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: mvn -B -ntp -q install -Pcore-modules,-main -DskipTests - name: run unit test 'BROKER_CLIENT_API' - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: ./build/run_unit_group.sh BROKER_CLIENT_API - name: print JVM thread dumps when cancelled diff --git a/.github/workflows/ci-unit-broker-client-impl.yaml b/.github/workflows/ci-unit-broker-client-impl.yaml index 606f15e1634fb..8a1e0eb1b6632 100644 --- a/.github/workflows/ci-unit-broker-client-impl.yaml +++ b/.github/workflows/ci-unit-broker-client-impl.yaml @@ -43,23 +43,18 @@ jobs: - name: Tune Runner VM uses: ./.github/actions/tune-runner-vm - - name: Changed files check + - name: Detect changed files id: changes uses: apache/pulsar-test-infra/paths-filter@master with: - filters: | - # pattern syntax: https://github.com/micromatch/picomatch - all: - - '**' - docs: - - 'site2/**' - - 'deployment/**' - - '.asf.yaml' - - '*.md' - - '**/*.md' + filters: .github/changes-filter.yaml + + - name: Check changed files + id: check_changes + run: echo "::set-output name=docs_only::${{ fromJSON(steps.changes.outputs.all_count) == fromJSON(steps.changes.outputs.docs_count) && fromJSON(steps.changes.outputs.docs_count) > 0 }}" - name: Cache local Maven repository - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} uses: actions/cache@v2 with: path: | @@ -71,20 +66,20 @@ jobs: - name: Set up JDK 1.8 uses: actions/setup-java@v1 - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} with: java-version: 1.8 - name: Replace maven's wagon-http version - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: sudo ./build/replace_maven-wagon-http-version.sh - name: build modules - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: mvn -B -ntp -q install -Pcore-modules,-main -DskipTests - name: run unit test 'BROKER_CLIENT_IMPL' - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: ./build/run_unit_group.sh BROKER_CLIENT_IMPL - name: print JVM thread dumps when cancelled diff --git a/.github/workflows/ci-unit-broker-other.yaml b/.github/workflows/ci-unit-broker-other.yaml index b4b973a017971..d584f82068c79 100644 --- a/.github/workflows/ci-unit-broker-other.yaml +++ b/.github/workflows/ci-unit-broker-other.yaml @@ -43,23 +43,18 @@ jobs: - name: Tune Runner VM uses: ./.github/actions/tune-runner-vm - - name: Changed files check + - name: Detect changed files id: changes uses: apache/pulsar-test-infra/paths-filter@master with: - filters: | - # pattern syntax: https://github.com/micromatch/picomatch - all: - - '**' - docs: - - 'site2/**' - - 'deployment/**' - - '.asf.yaml' - - '*.md' - - '**/*.md' + filters: .github/changes-filter.yaml + + - name: Check changed files + id: check_changes + run: echo "::set-output name=docs_only::${{ fromJSON(steps.changes.outputs.all_count) == fromJSON(steps.changes.outputs.docs_count) && fromJSON(steps.changes.outputs.docs_count) > 0 }}" - name: Cache local Maven repository - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} uses: actions/cache@v2 with: path: | @@ -71,20 +66,20 @@ jobs: - name: Set up JDK 1.8 uses: actions/setup-java@v1 - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} with: java-version: 1.8 - name: Replace maven's wagon-http version - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: sudo ./build/replace_maven-wagon-http-version.sh - name: build modules - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: mvn -B -ntp -q clean install -Pcore-modules,-main -DskipTests - name: run unit test 'BROKER_FLAKY' - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: ./build/run_unit_group.sh BROKER_FLAKY - name: print JVM thread dumps when cancelled diff --git a/.github/workflows/ci-unit-proxy.yaml b/.github/workflows/ci-unit-proxy.yaml index 2ad88cad1dc33..d7e5287e0388a 100644 --- a/.github/workflows/ci-unit-proxy.yaml +++ b/.github/workflows/ci-unit-proxy.yaml @@ -43,23 +43,18 @@ jobs: - name: Tune Runner VM uses: ./.github/actions/tune-runner-vm - - name: Changed files check + - name: Detect changed files id: changes uses: apache/pulsar-test-infra/paths-filter@master with: - filters: | - # pattern syntax: https://github.com/micromatch/picomatch - all: - - '**' - docs: - - 'site2/**' - - 'deployment/**' - - '.asf.yaml' - - '*.md' - - '**/*.md' + filters: .github/changes-filter.yaml + + - name: Check changed files + id: check_changes + run: echo "::set-output name=docs_only::${{ fromJSON(steps.changes.outputs.all_count) == fromJSON(steps.changes.outputs.docs_count) && fromJSON(steps.changes.outputs.docs_count) > 0 }}" - name: Cache local Maven repository - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} uses: actions/cache@v2 with: path: | @@ -71,20 +66,20 @@ jobs: - name: Set up JDK 1.8 uses: actions/setup-java@v1 - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} with: java-version: 1.8 - name: Replace maven's wagon-http version - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: sudo ./build/replace_maven-wagon-http-version.sh - name: build modules pulsar-proxy - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: mvn -B -ntp -q install -Pcore-modules,-main -DskipTests - name: run unit test 'PROXY' - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: ./build/run_unit_group.sh PROXY - name: print JVM thread dumps when cancelled diff --git a/.github/workflows/ci-unit.yaml b/.github/workflows/ci-unit.yaml index b37018e171baf..50eda30202769 100644 --- a/.github/workflows/ci-unit.yaml +++ b/.github/workflows/ci-unit.yaml @@ -43,23 +43,18 @@ jobs: - name: Tune Runner VM uses: ./.github/actions/tune-runner-vm - - name: Changed files check + - name: Detect changed files id: changes uses: apache/pulsar-test-infra/paths-filter@master with: - filters: | - # pattern syntax: https://github.com/micromatch/picomatch - all: - - '**' - docs: - - 'site2/**' - - 'deployment/**' - - '.asf.yaml' - - '*.md' - - '**/*.md' + filters: .github/changes-filter.yaml + + - name: Check changed files + id: check_changes + run: echo "::set-output name=docs_only::${{ fromJSON(steps.changes.outputs.all_count) == fromJSON(steps.changes.outputs.docs_count) && fromJSON(steps.changes.outputs.docs_count) > 0 }}" - name: Cache local Maven repository - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} uses: actions/cache@v2 with: path: | @@ -71,16 +66,16 @@ jobs: - name: Set up JDK 1.8 uses: actions/setup-java@v1 - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} with: java-version: 1.8 - name: Replace maven's wagon-http version - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: sudo ./build/replace_maven-wagon-http-version.sh - name: run unit test 'OTHER' - if: ${{ steps.changes.outputs.all_count }} > ${{ steps.changes.outputs.docs_count }} + if: ${{ steps.check_changes.outputs.docs_only != 'true' }} run: ./build/run_unit_group.sh OTHER - name: print JVM thread dumps when cancelled