Skip to content

Commit 99f2ab7

Browse files
vicenteboleavicente.bolea@kitware.com
authored andcommitted
fixup! Merge branch 'upstream-nanobind' into migrate-to-nanobind
1 parent f44508d commit 99f2ab7

7 files changed

Lines changed: 111 additions & 64 deletions

File tree

.github/workflows/everything.yml

Lines changed: 32 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -429,53 +429,55 @@ jobs:
429429
strategy:
430430
fail-fast: false
431431
matrix:
432-
baseos: [ubuntu-bionic]
432+
baseos: [ubuntu-22.04]
433433

434434
steps:
435435
- uses: actions/checkout@08eba0b27e820071cde6df949e0beb9ba4906955 # v4
436436
with:
437437
ref: ${{ github.event.pull_request.head.sha }}
438438
path: ci-source
439-
- name: Re-configure docker daemon
439+
440+
- name: Install Podman
441+
if: ${{ matrix.base-img != 'self-hosted' }}
440442
run: |
441-
sudo systemctl stop docker
442-
echo $'{\n "experimental": true\n}' | \
443-
sudo tee /etc/docker/daemon.json
444-
sudo systemctl start docker
443+
sudo apt-get update
444+
sudo apt-get install -y podman
445+
446+
445447
- name: Build image
446448
run: |
447-
docker build \
448-
--rm --squash \
449+
podman build \
450+
--rm \
449451
-t ornladios/adios2:ci-tmp \
450-
--build-arg baseos=${{ matrix.baseos }} \
451452
--build-arg ci_source_dir=ci-source \
452-
-f ci-source/scripts/ci/images/spack/Dockerfile \
453+
-f ci-source/scripts/ci/images/spack/adios2-container-dist.dockerfile \
453454
.
455+
454456
- name: Save image as a tar file
455457
run: |
456-
docker save -o ci-docker.tar ornladios/adios2:ci-tmp
457-
ls -lah ci-docker.tar
458+
podman save -o ci-podman.tar ornladios/adios2:ci-tmp
459+
ls -lah ci-podman.tar
458460
- name: Upload
459461
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4
460462
with:
461463
retention-days: 1
462-
name: ci-docker ${{ matrix.baseos }} ${{ github.sha }}
463-
path: ci-docker.tar
464-
- name: Push image to Docker Hub
464+
name: ci-podman ${{ matrix.baseos }} ${{ github.sha }}
465+
path: ci-podman.tar
466+
467+
- name: Log in to GitHub Container Registry
468+
if: github.event_name == 'push'
469+
run: |
470+
echo "${{ secrets.GITHUB_TOKEN }}" | podman login ghcr.io -u ${{ github.repository_owner }} --password-stdin
471+
472+
- name: Push image to GitHub Container Registry
465473
if: github.event_name == 'push'
466-
env:
467-
DOCKERHUB_USERNAME: ${{ secrets.DOCKERHUB_USERNAME }}
468-
DOCKERHUB_PASSWORD: ${{ secrets.DOCKERHUB_PASSWORD }}
469474
run: |
470475
target_tag="${GITHUB_REF##refs/heads/}-${{ matrix.baseos }}"
471-
docker tag \
476+
podman tag \
472477
ornladios/adios2:ci-tmp \
473-
ornladios/adios2:${target_tag}
474-
docker login \
475-
--username="${DOCKERHUB_USERNAME}" \
476-
--password="${DOCKERHUB_PASSWORD}"
477-
docker push \
478-
ornladios/adios2:${target_tag}
478+
"ghcr.io/${{ github.repository }}/ornladios/adios2:${target_tag}"
479+
podman push \
480+
"ghcr.io/${{ github.repository }}/ornladios/adios2:${target_tag}"
479481
480482
#######################################
481483
# Contract testing jobs
@@ -506,7 +508,7 @@ jobs:
506508
- code: tau
507509
defaults:
508510
run:
509-
shell: bash -c "docker exec adios2-ci bash --login -e $(echo {0} | sed 's|/home/runner/work|/__w|g')"
511+
shell: bash -c "podman exec adios2-ci bash --login -e $(echo {0} | sed 's|/home/runner/work|/__w|g')"
510512

511513
steps:
512514
- uses: actions/checkout@08eba0b27e820071cde6df949e0beb9ba4906955 # v4
@@ -518,18 +520,18 @@ jobs:
518520
- name: Download CI docker image
519521
uses: actions/download-artifact@d3f86a106a0bac45b974a628896c90dbdf5c8093 # v4
520522
with:
521-
name: ci-docker ubuntu-bionic ${{ github.sha }}
523+
name: ci-podman ubuntu-22.04 ${{ github.sha }}
522524
- name: Initialize containers
523525
shell: bash -e {0}
524526
run: |
525527
sudo chown 1000:1000 .
526-
docker load -i ci-docker.tar
527-
docker create \
528+
podman load -i ci-podman.tar
529+
podman create \
528530
--name adios2-ci --workdir /__w/ADIOS2/ADIOS2 \
529531
-v "/home/runner/work":"/__w" \
530532
--entrypoint "tail" ornladios/adios2:ci-tmp \
531533
"-f" "/dev/null"
532-
docker start adios2-ci
534+
podman start adios2-ci
533535
- name: Dependencies
534536
run: /opt/adios2/source/testing/contract/${{ matrix.code }}/depends.sh
535537
- name: Configure

.github/workflows/external.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ permissions:
88

99
jobs:
1010
generate_statuses:
11-
runs-on: ubuntu-latest
11+
runs-on: ubuntu-slim
1212
permissions:
1313
contents: read
1414
statuses: write

scripts/ci/images/build-ubuntu.sh

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@ TAG_PREFIX="${IMAGE_TAG_PREFIX:-ghcr.io/ornladios/adios2}"
1616
# Build the base image
1717
${BUILD_TOOL} build --progress=plain \
1818
--build-arg PATCH_VARIANT_XROOTD=ON \
19+
--build-arg EXTRA_SPECS="sz3 zstd" \
1920
--rm -f ./Dockerfile.ci-spack-ubuntu22.04-base \
2021
-t "${TAG_PREFIX}:ci-spack-ubuntu22.04-base" \
2122
.

scripts/ci/images/spack/Dockerfile

Lines changed: 0 additions & 33 deletions
This file was deleted.
Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
FROM ghcr.io/ornladios/adios2/adios2-deps
2+
3+
RUN echo ${ADIOS2_SPEC}
4+
5+
# Install from CI source
6+
ARG ci_source_dir=ci-source
7+
COPY ${ci_source_dir} /opt/adios2/source
8+
RUN spack dev-build \
9+
-j$(grep -c '^processor' /proc/cpuinfo) \
10+
-d /opt/adios2/source \
11+
--no-checksum \
12+
--skip-patch \
13+
--reuse \
14+
adios2@master ${ADIOS2_SPEC} ^cmake%gcc && \
15+
spack clean -a
16+
17+
RUN . /spack/share/spack/setup-env.sh && \
18+
spack config add "concretizer:unify:false" && \
19+
spack env create --without-view adios2 && \
20+
spack -e adios2 add $(spack find --format "/{hash}") && \
21+
spack -e adios2 install -v && \
22+
rm -rf /root/.spack && \
23+
spack env activate adios2 && \
24+
spack env deactivate && \
25+
echo "source /spack/share/spack/setup-env.sh" >> ~/.bash_profile && \
26+
echo "spack load adios2" >> ~/.bash_profile
27+
28+
ENTRYPOINT []
29+
CMD ["bash", "--login"]
Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
FROM ghcr.io/spack/spack/ubuntu22.04-runner-amd64-gcc-11.4:2024.03.01
2+
3+
ARG SPACK_VERSION=v1.0.2
4+
ARG SPACK_MIRROR="https://binaries.spack.io/v2025.07.0"
5+
ARG ADIOS2_SPEC="~mpi~mgard~libcatalyst~bzip2~png"
6+
7+
# Clone and patch spack
8+
WORKDIR /
9+
RUN if ! [ -d /spack ]; then \
10+
git clone --depth 1 --single-branch --branch ${SPACK_VERSION} https://github.com/spack/spack; \
11+
else \
12+
git fetch --all && git checkout -t origin/${SPACK_VERSION}; \
13+
fi && \
14+
mkdir -p /root/.spack
15+
16+
COPY packages.yaml /root/.spack/packages.yaml
17+
18+
# Install base specs
19+
RUN . /spack/share/spack/setup-env.sh && \
20+
spack repo update --branch "releases/v2025.07" builtin && \
21+
spack external find && \
22+
spack mirror add binaries "${SPACK_MIRROR}" && \
23+
spack config add "packages:all:target:[haswell]" && \
24+
spack config add "config:checksum:false" && \
25+
spack config add "config:build_jobs:$(nproc)" && \
26+
spack config add "concretizer:reuse:true"
27+
28+
RUN . /spack/share/spack/setup-env.sh && \
29+
spack install \
30+
-j$(nproc) \
31+
--include-build-deps \
32+
--no-check-signature \
33+
--fail-fast \
34+
--only dependencies \
35+
adios2@master ${ADIOS2_SPEC} ^gcc@11.4.0 && \
36+
spack clean -a && \
37+
echo "source /spack/share/spack/setup-env.sh" >> ~/.bash_profile
38+
39+
ENV ADIOS2_SPEC="${ADIOS2_SPEC}"
40+
41+
ENTRYPOINT []
42+
CMD ["bash", "--login"]
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
packages:
2+
gcc-runtime:
3+
externals:
4+
- spec: gcc-runtime@11.4.0
5+
prefix: /usr
6+
buildable: false

0 commit comments

Comments
 (0)