Skip to content

ORC-1819: [FOLLOWUP] Fix baseurl parameter and more links #4429

ORC-1819: [FOLLOWUP] Fix baseurl parameter and more links

ORC-1819: [FOLLOWUP] Fix baseurl parameter and more links #4429

# 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: Build and test
on:
push:
paths-ignore:
- 'site/**'
- 'conan/**'
branches:
- main
pull_request:
paths-ignore:
- 'site/**'
- 'conan/**'
branches:
- main
# Cancel previous PR build and test
concurrency:
group: ${{ github.workflow }}-${{ github.event_name == 'pull_request' && github.event.number || github.sha }}
cancel-in-progress: true
jobs:
docker:
name: "Docker ${{ matrix.os }}"
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
os:
- debian11
- debian12
- ubuntu24
- fedora37
- oraclelinux9
steps:
- name: Checkout
uses: actions/checkout@v2
- name: "Test"
run: |
cd docker
./run-one.sh local main ${{ matrix.os }}
build:
name: "Java ${{ matrix.java }} and ${{ matrix.cxx }} on ${{ matrix.os }}"
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
os:
- ubuntu-22.04
- ubuntu-24.04
- macos-13
- macos-14
- macos-15
java:
- 17
- 21
cxx:
- clang++
include:
- os: ubuntu-22.04
java: 17
cxx: g++
env:
MAVEN_OPTS: -Xmx2g
MAVEN_SKIP_RC: true
steps:
- name: Checkout
uses: actions/checkout@v2
- name: Install Java ${{ matrix.java }}
uses: actions/setup-java@v4
with:
distribution: zulu
java-version: ${{ matrix.java }}
cache: 'maven'
- name: "Test"
run: |
mkdir -p ~/.m2
mkdir build
cd build
cmake -DANALYZE_JAVA=ON -DOPENSSL_ROOT_DIR=`brew --prefix openssl@1.1` ..
make package test-out
- name: Step on failure
if: ${{ failure() }}
run: |
cat /home/runner/work/orc/orc/build/java/rat.txt
windows:
name: "C++ ${{ matrix.simd }} Test on Windows"
runs-on: windows-2019
strategy:
fail-fast: false
matrix:
simd:
- General
- AVX512
env:
ORC_USER_SIMD_LEVEL: AVX512
steps:
- name: Checkout
uses: actions/checkout@v2
- name: Add msbuild to PATH
uses: microsoft/setup-msbuild@v1.1
with:
msbuild-architecture: x64
- name: "Test"
shell: bash
run: |
mkdir build
cd build
if [ "${{ matrix.simd }}" = "General" ]; then
cmake .. -G "Visual Studio 16 2019" -DCMAKE_BUILD_TYPE=Debug -DBUILD_LIBHDFSPP=OFF -DBUILD_TOOLS=OFF -DBUILD_JAVA=OFF
else
cmake .. -G "Visual Studio 16 2019" -DCMAKE_BUILD_TYPE=Debug -DBUILD_LIBHDFSPP=OFF -DBUILD_TOOLS=OFF -DBUILD_JAVA=OFF -DBUILD_ENABLE_AVX512=ON
fi
cmake --build . --config Debug
ctest -C Debug --output-on-failure
simdUbuntu:
name: "SIMD programming using C++ intrinsic functions on ${{ matrix.os }}"
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
os:
- ubuntu-22.04
cxx:
- clang++
env:
ORC_USER_SIMD_LEVEL: AVX512
steps:
- name: Checkout
uses: actions/checkout@v2
- name: "Test"
run: |
mkdir -p ~/.m2
mkdir build
cd build
cmake -DBUILD_JAVA=OFF -DBUILD_ENABLE_AVX512=ON ..
make package test-out
doc:
name: "Javadoc generation"
runs-on: ubuntu-24.04
steps:
- name: Checkout
uses: actions/checkout@v2
- name: Install Java 17
uses: actions/setup-java@v4
with:
distribution: zulu
java-version: 17
cache: 'maven'
- name: "javadoc"
run: |
mkdir -p ~/.m2
cd java
./mvnw install -DskipTests
./mvnw javadoc:javadoc
cpp-linter:
runs-on: ubuntu-24.04
steps:
- uses: actions/checkout@v4
- uses: cpp-linter/cpp-linter-action@v2.13.3
id: linter
continue-on-error: true
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
style: file
tidy-checks: file
files-changed-only: true
lines-changed-only: true
thread-comments: true
ignore: 'build|cmake_modules|conan|dev|docker|examples|java|site'
database: build/compile_commands.json
extra-args: #-Wno-unused-parameter
- name: Fail fast?!
if: steps.linter.outputs.checks-failed != 0
run: |
echo "some linter checks failed. ${{ steps.linter.outputs.checks-failed }}"
exit 1
license-check:
name: "License Check"
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v3
- name: Check license header
uses: apache/skywalking-eyes@main
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
config: .github/.licenserc.yaml
macos-cpp-check:
name: "C++ Test on macOS"
strategy:
fail-fast: false
matrix:
version: [13, 14]
runs-on: macos-${{ matrix.version }}
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Install dependencies
run: |
brew update
brew install protobuf
- name: Test
run: |
CMAKE_PREFIX_PATH=$(brew --prefix protobuf)
mkdir -p build
cd build
cmake .. -DBUILD_JAVA=OFF -DPROTOBUF_HOME=${CMAKE_PREFIX_PATH}
make package test-out