| # Licensed to the Apache Software Foundation (ASF) under one | |
| # or more contributor license agreements. See the NOTICE file | |
| # distributed with this work for additional information | |
| # regarding copyright ownership. The ASF licenses this file | |
| # to you under the Apache License, Version 2.0 (the | |
| # "License"); you may not use this file except in compliance | |
| # with the License. You may obtain a copy of the License at | |
| # | |
| # http://www.apache.org/licenses/LICENSE-2.0 | |
| # | |
| # Unless required by applicable law or agreed to in writing, | |
| # software distributed under the License is distributed on an | |
| # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY | |
| # KIND, either express or implied. See the License for the | |
| # specific language governing permissions and limitations | |
| # under the License. | |
| name: Vector-plugins | |
| on: | |
| push: | |
| branches: | |
| - master | |
| - parquet-* | |
| pull_request: | |
| jobs: | |
| build: | |
| runs-on: ubuntu-latest | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| java: [ '17', '21', '25' ] | |
| codes: [ 'uncompressed' ] | |
| name: Build Parquet with JDK ${{ matrix.java }} and ${{ matrix.codes }} | |
| steps: | |
| - uses: actions/checkout@master | |
| - name: Set up JDK ${{ matrix.java }} | |
| uses: actions/setup-java@v5.6.0 | |
| with: | |
| distribution: temurin | |
| java-version: ${{ matrix.java }} | |
| - name: before_install | |
| env: | |
| CI_TARGET_BRANCH: $GITHUB_HEAD_REF | |
| run: | | |
| bash dev/ci-before_install.sh | |
| - name: install | |
| run: | | |
| # Spotless check uses palantir-java-format which relies on internal javac APIs | |
| # that are not available on all JDK versions (e.g. JDK 25+). Since the formatting | |
| # result is JDK-independent, running the check on JDK 17 alone is sufficient. | |
| SPOTLESS_ARGS="" | |
| if [ "${{ matrix.java }}" != "17" ]; then | |
| SPOTLESS_ARGS="-Dspotless.check.skip=true" | |
| fi | |
| ./mvnw install --batch-mode -Pvector-plugins -DskipTests=true -Dmaven.javadoc.skip=true -Dsource.skip=true -Dmaven.buildNumber.skip=true $SPOTLESS_ARGS -Djava.version=${{ matrix.java }} -pl parquet-plugins/parquet-encoding-vector,parquet-plugins/parquet-plugins-benchmarks -am | |
| - name: verify | |
| env: | |
| TEST_CODECS: ${{ matrix.codes }} | |
| JAVA_VERSION: ${{ matrix.java }} | |
| run: | | |
| # Spotless check uses palantir-java-format which relies on internal javac APIs | |
| # that are not available on all JDK versions (e.g. JDK 25+). Since the formatting | |
| # result is JDK-independent, running the check on JDK 17 alone is sufficient. | |
| SPOTLESS_ARGS="" | |
| if [ "${{ matrix.java }}" != "17" ]; then | |
| SPOTLESS_ARGS="-Dspotless.check.skip=true" | |
| fi | |
| ./mvnw verify --batch-mode -Pvector-plugins javadoc:javadoc $SPOTLESS_ARGS -pl parquet-plugins/parquet-encoding-vector,parquet-plugins/parquet-plugins-benchmarks -am |