From 5a13f88df2d98b1dd712cfdcd8661221a2151ddc Mon Sep 17 00:00:00 2001 From: Ralph Castain Date: Wed, 8 Jan 2025 09:09:39 -0700 Subject: [PATCH] Add v4 news file and adjust CI workflows Signed-off-by: Ralph Castain (cherry picked from commit f8b7b9ce8a841b0ff9b925dfdb27cf2c9764326c) --- .github/workflows/builds-older.yaml | 96 +++++++++++++++++++++++++++++ .github/workflows/run-special.yml | 33 ---------- docs/news/index.rst | 1 + docs/news/news-v4.x.rst | 29 +++++++++ 4 files changed, 126 insertions(+), 33 deletions(-) create mode 100644 .github/workflows/builds-older.yaml delete mode 100644 .github/workflows/run-special.yml create mode 100644 docs/news/news-v4.x.rst diff --git a/.github/workflows/builds-older.yaml b/.github/workflows/builds-older.yaml new file mode 100644 index 0000000000..7bd81517ec --- /dev/null +++ b/.github/workflows/builds-older.yaml @@ -0,0 +1,96 @@ +name: Build with PMIx v5 + +on: [pull_request] + +jobs: + ubuntu: + runs-on: ubuntu-latest + steps: + - name: Install dependencies + run: | + sudo apt-get update + sudo apt-get install -y --no-install-recommends software-properties-common libhwloc-dev libevent-dev + - name: Git clone OpenPMIx + uses: actions/checkout@v3 + with: + submodules: recursive + repository: openpmix/openpmix + path: openpmix/v5 + ref: v5.0 + - name: Build OpenPMIx + run: | + cd openpmix/v5 + ./autogen.pl + ./configure --prefix=$RUNNER_TEMP/pmixinstall + make -j + make install + cp examples/.libs/hello $RUNNER_TEMP/pmixinstall/bin + - name: Git clone PRRTE + uses: actions/checkout@v3 + with: + submodules: recursive + clean: false + - name: Build PRRTE + run: | + ./autogen.pl + ./configure --prefix=$RUNNER_TEMP/prteinstall --with-pmix=$RUNNER_TEMP/pmixinstall + make -j + make install + - name: Tweak PRRTE + run: | + # Tweak PRRTE + mca_params="$HOME/.prte/mca-params.conf" + mkdir -p "$(dirname "$mca_params")" + echo rmaps_default_mapping_policy = :oversubscribe >> "$mca_params" + - name: Run simple test + run: | + export PATH=$RUNNER_TEMP/prteinstall/bin:${PATH} + export LD_LIBRARY_PATH=$RUNNER_TEMP/prteinstall/lib:${LD_LIBRARY_PATH} + prterun -n 4 $RUNNER_TEMP/pmixinstall/bin/hello + + ubuntuClang: + runs-on: ubuntu-latest + steps: + - name: Install dependencies + run: | + sudo apt-get update + sudo apt-get install -y --no-install-recommends software-properties-common libhwloc-dev libevent-dev clang + - name: Git clone OpenPMIx + uses: actions/checkout@v3 + with: + submodules: recursive + repository: openpmix/openpmix + path: openpmix/v5 + ref: v5.0 + - name: Build OpenPMIx + run: | + cd openpmix/v5 + ./autogen.pl + CC=clang ./configure --prefix=$RUNNER_TEMP/pmixinstall + make -j + make install + cp examples/.libs/hello $RUNNER_TEMP/pmixinstall/bin + - name: Git clone PRRTE + uses: actions/checkout@v3 + with: + submodules: recursive + clean: false + - name: Build PRRTE + run: | + ./autogen.pl + + pip3 install -r docs/requirements.txt + CC=clang ./configure --prefix=$RUNNER_TEMP/prteinstall --with-pmix=$RUNNER_TEMP/pmixinstall $sphinx + make -j + make install + - name: Tweak PRRTE + run: | + # Tweak PRRTE + mca_params="$HOME/.prte/mca-params.conf" + mkdir -p "$(dirname "$mca_params")" + echo rmaps_default_mapping_policy = :oversubscribe >> "$mca_params" + - name: Run simple test + run: | + export PATH=$RUNNER_TEMP/prteinstall/bin:${PATH} + export LD_LIBRARY_PATH=$RUNNER_TEMP/prteinstall/lib:${LD_LIBRARY_PATH} + prterun -n 4 $RUNNER_TEMP/pmixinstall/bin/hello diff --git a/.github/workflows/run-special.yml b/.github/workflows/run-special.yml deleted file mode 100644 index 01e77c8c39..0000000000 --- a/.github/workflows/run-special.yml +++ /dev/null @@ -1,33 +0,0 @@ -name: PRRTE Special Builds Testing - -on: - pull_request: - # We don't need this to be run on all types of PR behavior - # See - # - https://docs.github.com/en/actions/reference/events-that-trigger-workflows#pull_request - # - https://frontside.com/blog/2020-05-26-github-actions-pull_request - types: - - opened - - synchronize - - edited - - reopened - -env: - # Use docker.io for Docker Hub if empty - REGISTRY: docker.io - # github.repository as / - IMAGE_NAME: jjhursey/pmix-xver-tester - -jobs: - special-builds: - runs-on: ubuntu-latest - steps: - # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it - - name: Check out the code - uses: actions/checkout@v3 - with: - submodules: recursive - # Run the container tester - - name: Special Builds - run: docker run --rm -v ${GITHUB_WORKSPACE}:/home/pmixer/prrte --env PR_TARGET_BRANCH=${GITHUB_BASE_REF} -w /home/pmixer/pmix-tests/ci-builds ${{ env.IMAGE_NAME }}:latest /bin/bash -c 'git pull && ./run-all-prrte.sh && echo SUCCESS' - shell: bash diff --git a/docs/news/index.rst b/docs/news/index.rst index c1f748f890..52fc85a7f3 100644 --- a/docs/news/index.rst +++ b/docs/news/index.rst @@ -35,6 +35,7 @@ included in the vX.Y.Z section and be denoted as: .. toctree:: :maxdepth: 1 + news-v4.x news-v3.x news-v2.x news-v1.x diff --git a/docs/news/news-v4.x.rst b/docs/news/news-v4.x.rst new file mode 100644 index 0000000000..ebab60260d --- /dev/null +++ b/docs/news/news-v4.x.rst @@ -0,0 +1,29 @@ +PRRTE v4.x series +================= + +This file contains all the NEWS updates for the PRRTE v4.x +series, in reverse chronological order. + +4.0.0 -- TBD +------------ +.. important:: This is the first release in the v4 family. The intent + for this series is to provide regular "reference tags", + effectively serving as milestones for any development + that might occur after the project achieved a stable + landing zone at the conclusion of the v3 series. It + is expected, therefore, that releases shall be infrequent + and rare occurrences, primarily driven by the completion + of some significant feature or some particularly + critical bug fix. + + For this initial release, that feature is completion of + support for the Group family of PMIx APIs. This includes + support for all three of the group construction modes, + including the new "bootstrap" method. + + Note that while PRRTE v4 will build and execute against + PMIx v5, proper execution of the various group construction + modes requires that your application use PMIx v6 or above. + +A full list of individual changes will not be provided here, +but will commence with the v4.0.1 release.