Skip to content

Commit 4483b40

Browse files
committed
Test on AIX
1 parent 817dbb8 commit 4483b40

File tree

1 file changed

+79
-0
lines changed

1 file changed

+79
-0
lines changed

.github/workflows/aix.yml

Lines changed: 79 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,79 @@
1+
name: AIX CI
2+
3+
# Triggers the workflow on push or pull request or on demand
4+
on:
5+
workflow_dispatch:
6+
push:
7+
pull_request:
8+
branches: [ develop ]
9+
paths-ignore:
10+
- '.github/CODEOWNERS'
11+
- '.github/FUNDING.yml'
12+
- 'doc/**'
13+
- 'release_docs/**'
14+
- 'ACKNOWLEDGEMENTS'
15+
- 'LICENSE**'
16+
- '**.md'
17+
18+
# Using concurrency to cancel any in-progress job or run
19+
concurrency:
20+
group: ${{ github.workflow }}-${{ github.head_ref && github.ref || github.run_id }}
21+
cancel-in-progress: true
22+
23+
permissions:
24+
contents: read
25+
26+
jobs:
27+
aix-build-and-test:
28+
runs-on: ubuntu-latest
29+
name: AIX 7.3 Build and Test
30+
31+
# Don't run the action if the commit message says to skip CI
32+
if: "!contains(github.event.head_commit.message, 'skip-ci')"
33+
34+
steps:
35+
- name: Checkout repository
36+
uses: actions/checkout@v5
37+
38+
- name: Build and test on AIX
39+
uses: vmactions/aix-vm@v1
40+
with:
41+
release: '7.3'
42+
usesh: true
43+
prepare: |
44+
# Install required build tools
45+
# AIX uses yum for package management in some configurations
46+
yum install -y cmake gcc gcc-c++ make bash curl zlib-devel || \
47+
# Fallback to AIX toolbox if yum not available
48+
/opt/freeware/bin/rpm -Uvh http://www.oss4aix.org/download/RPMS/cmake/cmake-*.rpm || \
49+
run: |
50+
set -e
51+
52+
# Ensure we have the right shell
53+
export SHELL=/usr/bin/bash
54+
55+
# Configure the build
56+
mkdir build
57+
cd build
58+
cmake -C ../config/cmake/cacheinit.cmake \
59+
--log-level=VERBOSE \
60+
-DCMAKE_BUILD_TYPE=Release \
61+
-DBUILD_SHARED_LIBS:BOOL=ON \
62+
-DHDF5_ENABLE_ALL_WARNINGS:BOOL=ON \
63+
-DHDF5_ENABLE_PARALLEL:BOOL=OFF \
64+
-DHDF5_BUILD_CPP_LIB:BOOL=ON \
65+
-DHDF5_BUILD_FORTRAN:BOOL=OFF \
66+
-DHDF5_BUILD_JAVA:BOOL=OFF \
67+
-DHDF5_BUILD_DOC:BOOL=OFF \
68+
-DHDF5_ENABLE_ZLIB_SUPPORT:BOOL=ON \
69+
-DHDF5_ENABLE_SZIP_SUPPORT:BOOL=OFF \
70+
-DHDF5_TEST_API:BOOL=ON \
71+
-DHDF5_TEST_SHELL_SCRIPTS:BOOL=OFF \
72+
-DENABLE_EXTENDED_TESTS:BOOL=OFF \
73+
..
74+
75+
# Build
76+
cmake --build . --parallel 3 --config Release
77+
78+
# Run tests
79+
ctest . --parallel 2 -C Release -V

0 commit comments

Comments
 (0)