Skip to content

Commit

Permalink
Migrate from docker images to micromamba.
Browse files Browse the repository at this point in the history
  • Loading branch information
joaander committed Jun 19, 2024
1 parent bbcf0ee commit 546e9a2
Showing 1 changed file with 30 additions and 11 deletions.
41 changes: 30 additions & 11 deletions .github/workflows/unit-test.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -9,19 +9,21 @@ env:

#############################################################################################
# HOOMD-blue version to build.
HOOMD_BLUE_VERSION: 4.7.0
HOOMD_BLUE_VERSION: trunk-minor
# prevent deadlocked MPI tests from causing the job to cancel
MPIEXEC_TIMEOUT: 3000
# allow mpirun to execute as root in the tests
OMPI_ALLOW_RUN_AS_ROOT: 1
OMPI_ALLOW_RUN_AS_ROOT_CONFIRM: 1
# allow openmpi to oversubscribe cores
OMPI_MCA_rmaps_base_oversubscribe: 1
PRTE_MCA_rmaps_default_mapping_policy: ":oversubscribe"
OMPI_MCA_rmaps_base_oversubscribe: "true"
# prevent errors from mis-configured openib systems
OMPI_MCA_btl: "vader,self"
# import HOOMD out of the build directory
PYTHONPATH: ${{ github.workspace }}/install

# skip running the CPU tests in GPU builds
_HOOMD_SKIP_CPU_TESTS_WHEN_GPUS_PRESENT_: 1
# Require GPU tests in GPU builds.
_HOOMD_REQUIRE_GPU_TESTS_IN_GPU_BUILDS_: 1

concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
Expand All @@ -41,9 +43,9 @@ defaults:
jobs:
build_test:
name: Build and test [${{ matrix.name }}]
runs-on: ubuntu-latest
runs-on: ubuntu-24.04
container:
image: glotzerlab/ci:2023.11.27-cuda120_gcc11_py310
image: nvidia/cuda:12.5.0-devel-ubuntu22.04
strategy:
fail-fast: false
matrix:
Expand All @@ -67,15 +69,32 @@ jobs:
uses: actions/cache/restore@v4
with:
path: install
key: hoomd-blue-${{ env.HOOMD_BLUE_VERSION }}-2023.11.27-cuda120_gcc11_py310-mpi-${{ matrix.enable_mpi }}-gpu-${{ matrix.enable_gpu }}
key: hoomd-blue-${{ env.HOOMD_BLUE_VERSION }}-${{ matrix.enable_mpi }}-gpu-${{ matrix.enable_gpu }}
- name: Install git
run: |
apt-get update
apt-get install git --yes
- name: Checkout HOOMD-blue
if: steps.cache.outputs.cache-hit != 'true'
uses: actions/checkout@v4
with:
repository: glotzerlab/hoomd-blue
path: hoomd-blue
submodules: true
ref: v${{ env.HOOMD_BLUE_VERSION }}
ref: ${{ env.HOOMD_BLUE_VERSION }}
- name: Create Python Environment
uses: mamba-org/setup-micromamba@v1
with:
environment-name: test
environment-file: hoomd-blue/.github/workflows/environments/py312-conda-lock.yml
micromamba-root-path: ${{ github.workspace }}/micromamba

- name: Configure conda environment variables
run: |
echo "PYTHONPATH=$GITHUB_WORKSPACE/install" >> $GITHUB_ENV
echo "CONDA_PREFIX=$MAMBA_ROOT_PREFIX/envs/test" >> $GITHUB_ENV
echo "CMAKE_PREFIX_PATH=$MAMBA_ROOT_PREFIX/envs/test" >> $GITHUB_ENV
echo "$MAMBA_ROOT_PREFIX/envs/test/bin" >> $GITHUB_PATH
- name: Configure HOOMD-blue
if: steps.cache.outputs.cache-hit != 'true'
run: |
Expand All @@ -100,7 +119,7 @@ jobs:
uses: actions/cache/save@v4
with:
path: install
key: hoomd-blue-${{ env.HOOMD_BLUE_VERSION }}-2023.11.27-cuda120_gcc11_py310-mpi-${{ matrix.enable_mpi }}-gpu-${{ matrix.enable_gpu }}
key: hoomd-blue-${{ env.HOOMD_BLUE_VERSION }}-${{ job.container.image }}-${{ matrix.enable_mpi }}-gpu-${{ matrix.enable_gpu }}

- name: Checkout component
uses: actions/checkout@v4
Expand Down

0 comments on commit 546e9a2

Please sign in to comment.