Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 3 additions & 3 deletions .github/workflows/build-env.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ jobs:
- name: Set up Docker
uses: docker/setup-buildx-action@v1
- name: Login to registry
uses: docker/login-action@v1
uses: docker/login-action@v1
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
Expand All @@ -24,5 +24,5 @@ jobs:
with:
push: true
context: .
file: spack/ci-spack-pyprecice-deps-2204.dockerfile
tags: precice/ci-spack-pyprecice-deps-2204
file: spack/ci-spack-pyprecice-deps-2404.dockerfile
tags: precice/ci-spack-pyprecice-deps-2404
70 changes: 35 additions & 35 deletions .github/workflows/build-spack.yml
Original file line number Diff line number Diff line change
@@ -1,35 +1,35 @@
# name: Build Spack
# on:
# push:
# branches:
# - "*"
# pull_request:
# branches:
# - "*"
# schedule:
# - cron: '0 4 * * 1' # Schedule it every Sunday
#
# jobs:
# build_spack:
# name: build_spack
# runs-on: ubuntu-latest
# timeout-minutes: 15
# container: precice/ci-spack-pyprecice-deps-2204
# defaults:
# run:
# shell: "bash --login -eo pipefail {0}"
# steps:
# - name: Checkout Repository
# uses: actions/checkout@v2
# - name: Move Package Script
# run: |
# cp -r spack/repo/packages/py-pyprecice/ /py-pyprecice-repo/packages/
# - name: Try to build py-pyprecice with spack and test it
# run: |
# . /opt/spack/share/spack/setup-env.sh
# spack env activate ci && spack arch
# spack remove py-pyprecice
# spack add pyprecice.test.py-pyprecice@develop && spack develop pyprecice.test.py-pyprecice@develop
# spack install && spack find
# spack load py-pyprecice
# BINDINGS_VERSION=$(python3 -c "import precice; print(precice.__version__)") && echo "Installed version of bindings is ${BINDINGS_VERSION}"
name: Build Spack
on:
push:
branches:
- "*"
pull_request:
branches:
- "*"
schedule:
- cron: '0 4 * * 1' # Schedule it every Sunday

jobs:
build_spack:
name: build_spack
runs-on: ubuntu-latest
timeout-minutes: 15
container: precice/ci-spack-pyprecice-deps-2404
defaults:
run:
shell: "bash --login -eo pipefail {0}"
steps:
- name: Checkout Repository
uses: actions/checkout@v2
- name: Move Package Script
run: |
cp -r spack/repo/packages/py-pyprecice/ /py-pyprecice-repo/packages/
- name: Try to build py-pyprecice@develop with spack and test it
run: |
. /opt/spack/share/spack/setup-env.sh
spack env activate ci && spack arch
spack remove py-pyprecice
spack add pyprecice.test.py-pyprecice@develop && spack develop pyprecice.test.py-pyprecice@develop
spack install && spack find
spack load py-pyprecice
BINDINGS_VERSION=$(python3 -c "import precice; print(precice.__version__)") && echo "Installed version of bindings is ${BINDINGS_VERSION}"
6 changes: 3 additions & 3 deletions spack/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,11 +2,11 @@

The Spack package `py-pyprecice` provides the python bindings via Spack and was submitted via [pull request 19558](https://github.com/spack/spack/pull/19558) in the Spack repository. This folder contains the Spack package script that can be used for testing whether the Spack installation works.

## Docker image `precice/ci-spack-pyprecice-deps-2204`
## Docker image `precice/ci-spack-pyprecice-deps-2404`

The workflow `build-spack-pyprecice-deps` in `.github/workflows/build-env.yml` creates the image `precice/ci-spack-pyprecice-deps-2204`. This image contains all dependencies of `py-pyprecice@develop`.
The workflow `build-spack-pyprecice-deps` in `.github/workflows/build-env.yml` creates the image `precice/ci-spack-pyprecice-deps-2404`. This image contains all dependencies of `py-pyprecice@develop`.

The workflow `build_spack` in `.github/workflows/build-spack.yml` uses the image `precice/ci-spack-pyprecice-deps-2204` to reduce build time. The workflow uses the `package.py` from this repository to build the latest version of the bindings and run a small test on this version.
The workflow `build_spack` in `.github/workflows/build-spack.yml` uses the image `precice/ci-spack-pyprecice-deps-2404` to reduce build time. The workflow uses the `package.py` from this repository to build the latest version of the bindings and run a small test on this version.

## When a new Spack release is necessary

Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
# Build stage with Spack pre-installed and ready to be used
FROM spack/ubuntu-jammy:latest
FROM spack/ubuntu-noble:latest

# Mount the current sources into the build container
# and build the default environment
Expand Down
11 changes: 9 additions & 2 deletions spack/repo/packages/py-pyprecice/package.py
Original file line number Diff line number Diff line change
Expand Up @@ -14,13 +14,18 @@ class PyPyprecice(PythonPackage):

homepage = "https://precice.org"
git = "https://github.com/precice/python-bindings.git"
url = "https://github.com/precice/python-bindings/archive/v2.4.0.0.tar.gz"
url = "https://github.com/precice/python-bindings/archive/v3.1.1.tar.gz"
maintainers("ajaust", "BenjaminRodenberg", "IshaanDesai")

# Always prefer final version of release candidate
version("develop", branch="develop")
version("3.1.1", sha256="50a0f1cbdb8fc362c22d316151c0e757958ff136a094e63b9b82d045d01d19c7")
version("3.1.0", sha256="8d9bd9e28859001ab503a1e2f90e54b3c000079f04c14dc7c0c04c61c5666641")
version("3.0.0.0", sha256="7e2c4b106a231b0df2a430d86d4a7b295f85adbe3478c425f863d1a4bebee9f7")
version("2.5.0.4", sha256="7f9449573eb52ce48ca3f0ab35529ea0064942487842515ae0a2c9299aa0f0db")
version("2.5.0.3", sha256="b983229b9fdf6bd4605ae8710985eb681025f6fb28ad8d7736cdf92593eef6df")
version("2.5.0.2", sha256="6d7b78da830db6c5133b44617196ee90be8c7d6c8e14c8994a4800b3d4856416")
version("2.5.0.1", sha256="e2602f828d4f907ea93e34f7d4adb8db086044a75a446592a4099423d56ed62c")
version("2.5.0.1", sha256="d7c666e6ebff9e007c3703d8e3c3fcdf0f45289e36c2c17223b3aedc3259ab6c")
Comment on lines -23 to +28
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

There is a post tag bump (0d28cf0) matching that version. It is possible that the original checksum above was created before pushing 0d28cf0, but I cannot verify this.

version("2.5.0.0", sha256="9f55a22594bb602cde8a5987217728569f16d9576ea53ed00497e9046a2e1794")
version("2.4.0.0", sha256="e80d16417b8ce1fdac80c988cb18ae1e16f785c5eb1035934d8b37ac18945242")
version("2.3.0.1", sha256="ed4e48729b662680beaa4ee2a9aff724a79e760534c6c58181be739988da2789")
Expand All @@ -37,6 +42,8 @@ class PyPyprecice(PythonPackage):

for ver in [
"develop",
"3.1", # only consider major.minor from 3.1.0. See https://github.com/precice/python-bindings/pull/199
"3.0.0",
"2.5.0",
"2.4.0",
"2.3.0",
Expand Down