Skip to content

Commit a72505f

Browse files
committed
ORC-2092: Add ubuntu26 to docker tests and GitHub Action
### What changes were proposed in this pull request? This PR aims to add `ubuntu26` to docker tests and GitHub Action. ### Why are the changes needed? `Ubuntu 26.04` is coming soon. This aims to be ready for this in advance as a test coverage. ### How was this patch tested? Pass the CIs. ### Was this patch authored or co-authored using generative AI tooling? No. Closes #2531 from dongjoon-hyun/ORC-2092. Authored-by: Dongjoon Hyun <dongjoon@apache.org> Signed-off-by: Dongjoon Hyun <dongjoon@apache.org>
1 parent 301b2c5 commit a72505f

File tree

5 files changed

+70
-2
lines changed

5 files changed

+70
-2
lines changed

.github/workflows/build_and_test.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -50,6 +50,7 @@ jobs:
5050
- debian12
5151
- debian13
5252
- ubuntu24
53+
- ubuntu26
5354
- oraclelinux9
5455
- oraclelinux10
5556
- amazonlinux23

docker/README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44

55
* Debian 12, and 13
66
* Fedora 37
7-
* Ubuntu 22 and 24
7+
* Ubuntu 22, 24 and 26
88
* Oracle Linux 9 and 10
99
* Amazon Linux 2023
1010

docker/os-list.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ debian12
22
debian13
33
ubuntu22
44
ubuntu24
5+
ubuntu26
56
oraclelinux9
67
oraclelinux10
78
amazonlinux23

docker/ubuntu26/Dockerfile

Lines changed: 65 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,65 @@
1+
# Licensed to the Apache Software Foundation (ASF) under one
2+
# or more contributor license agreements. See the NOTICE file
3+
# distributed with this work for additional information
4+
# regarding copyright ownership. The ASF licenses this file
5+
# to you under the Apache License, Version 2.0 (the
6+
# "License"); you may not use this file except in compliance
7+
# with the License. You may obtain a copy of the License at
8+
#
9+
# http://www.apache.org/licenses/LICENSE-2.0
10+
#
11+
# Unless required by applicable law or agreed to in writing, software
12+
# distributed under the License is distributed on an "AS IS" BASIS,
13+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14+
# See the License for the specific language governing permissions and
15+
# limitations under the License.
16+
17+
# ORC compile for Ubuntu 26
18+
#
19+
20+
FROM ubuntu:26.04
21+
LABEL org.opencontainers.image.authors="Apache ORC project <dev@orc.apache.org>"
22+
LABEL org.opencontainers.image.licenses="Apache-2.0"
23+
LABEL org.opencontainers.image.ref.name="Apache ORC on Ubuntu 26"
24+
LABEL org.opencontainers.image.version=""
25+
ARG jdk=21
26+
ARG cc=gcc
27+
28+
RUN apt-get update
29+
RUN apt-get install -y \
30+
cmake \
31+
git \
32+
make \
33+
curl \
34+
maven \
35+
openjdk-${jdk}-jdk \
36+
tzdata; \
37+
if [ "${cc}" = "gcc" ] ; then \
38+
apt-get install -y \
39+
gcc \
40+
g++ \
41+
; else \
42+
apt-get install -y \
43+
clang \
44+
&& \
45+
update-alternatives --set cc /usr/bin/clang && \
46+
update-alternatives --set c++ /usr/bin/clang++ \
47+
; fi
48+
RUN update-alternatives --set java $(update-alternatives --list java | grep ${jdk}) && \
49+
update-alternatives --set javac $(update-alternatives --list javac | grep ${jdk})
50+
51+
ENV CC=cc
52+
ENV CXX=c++
53+
54+
WORKDIR /root
55+
VOLUME /root/.m2/repository
56+
57+
CMD if [ ! -d orc ]; then \
58+
echo "No volume provided, building from apache main."; \
59+
echo "Pass '-v`pwd`:/root/orc' to docker run to build local source."; \
60+
git clone https://github.com/apache/orc.git -b main; \
61+
fi && \
62+
mkdir build && \
63+
cd build && \
64+
cmake ../orc && \
65+
make package test-out

site/_docs/building.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ The C++ library is supported on the following operating systems:
1111

1212
* MacOS 15 to 26
1313
* Debian 12 to 13
14-
* Ubuntu 22.04 to 24.04
14+
* Ubuntu 22.04 to 26.04
1515
* Oracle Linux 9 to 10
1616
* Amazon Linux 2023
1717

@@ -30,6 +30,7 @@ is in the docker subdirectory, for the list of packages required to build ORC:
3030
* [Debian 13]({{ page.dockerUrl }}/debian13/Dockerfile)
3131
* [Ubuntu 22]({{ page.dockerUrl }}/ubuntu22/Dockerfile)
3232
* [Ubuntu 24]({{ page.dockerUrl }}/ubuntu24/Dockerfile)
33+
* [Ubuntu 26]({{ page.dockerUrl }}/ubuntu26/Dockerfile)
3334
* [Oracle Linux 9]({{ page.dockerUrl }}/oraclelinux9/Dockerfile)
3435
* [Oracle Linux 10]({{ page.dockerUrl }}/oraclelinux10/Dockerfile)
3536
* [Amazon Linux 2023]({{ page.dockerUrl }}/amazonlinux23/Dockerfile)

0 commit comments

Comments
 (0)