Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Re-work of mucoll-spack to enable build of releases fully on github #17

Open
wants to merge 82 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
82 commits
Select commit Hold shift + click to select a range
3ff0427
updates for 2.10
Nov 14, 2024
c3ccf9c
update spack commit
Nov 20, 2024
bb4d864
updating cherry picks
Nov 21, 2024
c77399b
split build towards 2.10
Nov 21, 2024
28bfada
specifying root version
Nov 21, 2024
11a3282
got rid of hardcoded hashes
Nov 21, 2024
07196b0
integrating docker image building
Nov 21, 2024
4e0f004
update dockerfile spack
Nov 21, 2024
be16f1f
change workflow name
Nov 21, 2024
1436eaf
test latest commit
Nov 21, 2024
640eb53
trigger full rebuild
Nov 21, 2024
6edfea8
removed image sourcew
Nov 21, 2024
3098716
update key4hep-spack commit
Nov 21, 2024
4348ab0
fix minimal workflow
Nov 21, 2024
71da3e7
update minimal wf
Nov 21, 2024
4182997
free even more disk space
Nov 21, 2024
6a29650
updating workflows to self-trigger
Nov 21, 2024
7369075
checkout correct branch
Nov 21, 2024
775cd13
Merge branch 'MuonColliderSoft:master' into master
madbaron Nov 21, 2024
a1c1405
whitespace
Nov 21, 2024
79d2f1f
version
Nov 21, 2024
58f2f53
removing specific podio from debug rel
Nov 21, 2024
987065e
synch debug with rel
Nov 21, 2024
4a0c69a
capital C
Nov 21, 2024
7a1a62c
checking out master
Nov 21, 2024
1e3bd6b
checking out correct branch
Nov 21, 2024
8bc827d
updating github actions
Nov 21, 2024
8ddca00
fix spec list
Nov 21, 2024
602855e
passing git hash
Nov 21, 2024
e4acb5d
passing git hash
Nov 21, 2024
2c8a205
checking out hash
Nov 21, 2024
a71824d
back to branch
Nov 21, 2024
287a818
back to master
Nov 21, 2024
50ce10f
fix line return
Nov 22, 2024
26a13de
py-onnx fix
Nov 22, 2024
f667a0f
py-onnx fix for real
Nov 22, 2024
1784298
fixing labels
Nov 22, 2024
fc2db5a
trying to checkout correct branch
Nov 22, 2024
aac46d0
fix to pick up the right version of fmt
Nov 22, 2024
96240e5
build with gcc14
Nov 23, 2024
acaba83
removed separate concretisation test
Nov 23, 2024
ba1d001
starting from more recent image
Nov 23, 2024
34b778c
specifying gaudi options
Nov 24, 2024
e8773fd
trying pick up gcc14
Nov 24, 2024
3d7b495
trying pick up gcc14
Nov 24, 2024
57bacb3
adding compilers?
Nov 24, 2024
f03a421
adding compilers
Nov 24, 2024
f1afb7b
picking up fixed gaudi
Nov 24, 2024
8eb7d6d
picking up fixed gaudi
Nov 24, 2024
ad3f1c7
adding gaudi 39
Nov 24, 2024
648754f
null
Nov 24, 2024
9ba7288
mini cleanup
Nov 24, 2024
34bbe52
revert patch
Nov 25, 2024
6a008c8
make workflow aware of cherry pick
Nov 25, 2024
e744855
debug printout
Nov 25, 2024
c227631
fix debug printout
Nov 25, 2024
c1dbecc
removing explicit gaudi version
Nov 25, 2024
071a7e9
trying just gaudi@39
Nov 25, 2024
04f656a
got rid of rogue gaudi folder
Nov 25, 2024
e1b21dc
back to gcc11.4.1
Nov 25, 2024
ba6c5f9
removing gaudi spec
Nov 25, 2024
73c5de5
pick up CVXD master
Nov 25, 2024
9965d8c
removing gaudi spec
Nov 25, 2024
ae12a5a
redo without gcc14
Nov 25, 2024
3a04dbd
more recent packages
Nov 25, 2024
a9a089c
shortcut for debug
Nov 25, 2024
05cd383
removing compilers from mucoll-common
Nov 25, 2024
3d15e51
removing hardcoded labels
Nov 25, 2024
1c4ba29
moving py-onnx* to +ml
Nov 25, 2024
cbcab97
removed hardcoded madbaron
Nov 25, 2024
c31f482
fix for repo name
Nov 25, 2024
9f1ccdc
cleanup of images
Nov 25, 2024
3b80f7d
added back concretization workflow to run on PRs
Nov 26, 2024
555ae52
removed full rebuild from PR
Nov 26, 2024
ce95a50
tentative cleanup of paths
Nov 26, 2024
7a64454
requing LCIO support for dd4hep
Nov 26, 2024
81a7e51
turning off view without changing the setup script wasn't smart
Nov 27, 2024
1db732d
picking up marlintrackprocessors master
Nov 27, 2024
b81145f
updating ACTSTracking package
Nov 29, 2024
ae2691c
building with new actstracking
Nov 29, 2024
9cfa2fa
fixing checksum
Nov 29, 2024
db7e349
Merge branch 'master' into master
madbaron Dec 10, 2024
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
13 changes: 4 additions & 9 deletions .cherry-pick
Original file line number Diff line number Diff line change
@@ -1,10 +1,5 @@
# root: fix for +opengl, remove when https://github.com/spack/spack/pull/45057 is merged
curl -s https://patch-diff.githubusercontent.com/raw/spack/spack/pull/4505742844.diff | patch -p1
# py-onnx: add a patch for the standard, remove after 1.15.0
git cherry-pick bbd205543b09139f2f57f21099eb366c9f183d76 -X theirs --no-commit

# protobuf: updated patch path, remove when https://github.com/spack/spack/pull/44210
# and https://github.com/spack/spack/pull/44443 are merged
curl -s https://patch-diff.githubusercontent.com/raw/spack/spack/pull/44210.diff | patch -p1
curl -s https://patch-diff.githubusercontent.com/raw/spack/spack/pull/44443.diff | patch -p1

# dd4hep: update to version 1.29, remove when https://github.com/spack/spack/pull/44652 is merged
curl -s https://patch-diff.githubusercontent.com/raw/spack/spack/pull/44652.diff | patch -p1
# add gaudi 39
git cherry-pick 5ebf45861f688337dddcdee2242d4f479a832d06 -X theirs --no-commit
10 changes: 5 additions & 5 deletions .github/workflows/concretize-template.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -13,19 +13,19 @@ jobs:
fail-fast: false
steps:
- name: Checkout Spack
uses: actions/checkout@v3
uses: actions/checkout@v4
with:
repository: spack/spack
path: spack

- name: Checkout Key4hep
uses: actions/checkout@v3
uses: actions/checkout@v4
with:
repository: key4hep/key4hep-spack
path: key4hep-spack

- name: Checkout this repo
uses: actions/checkout@v3
uses: actions/checkout@v4
with:
path: mucoll-spack

Expand All @@ -42,7 +42,7 @@ jobs:
spack spec -Nt > ${GITHUB_WORKSPACE}/spec-${{ inputs.target }}.log

- name: Store artifacts
uses: actions/upload-artifact@v3
uses: actions/upload-artifact@v4
with:
name: spec-list
path: ${GITHUB_WORKSPACE}/spec-${{ inputs.target }}.log
path: ${GITHUB_WORKSPACE}/spec-${{ inputs.target }}.log
5 changes: 2 additions & 3 deletions .github/workflows/concretize.yaml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
name: concretize-ubuntu

on: [push, pull_request]
on: [pull_request]

jobs:
concretize:
Expand All @@ -10,5 +10,4 @@ jobs:
target: [common, release, release-debug]
uses: ./.github/workflows/concretize-template.yaml
with:
target: ${{ matrix.target }}

target: ${{ matrix.target }}
169 changes: 169 additions & 0 deletions .github/workflows/full-rebuild.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,169 @@
name: Re-build and publish All
on:
push:
paths:
- .github/workflows/full-rebuild.yml
- 'AlmaLinux9/Dockerfile-spack'
workflow_dispatch:

env:
REGISTRY: ghcr.io

permissions:
contents: read
packages: write
id-token: write
attestations: write

jobs:
build-spack:
runs-on: ubuntu-latest
strategy:
matrix:
os: [{dir: AlmaLinux9,suffix: alma9}]
env:
IMAGE_NAME: mucoll-spack
steps:
- name: Checkout
uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Set up Docker buildx
uses: docker/setup-buildx-action@v3
- name: Login to container registry
uses: docker/login-action@v3
with:
registry: ${{ env.REGISTRY }}
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
- name: Make owner name lowercase
run: |
echo "OWNER_LC=${OWNER,,}" >>${GITHUB_ENV}
env:
OWNER: '${{ github.repository_owner }}'
- name: Extract metadata for Docker
id: meta
uses: docker/metadata-action@v5
with:
images: ${{ env.REGISTRY }}/${{env.OWNER_LC}}/mucoll-dummy
- name: Build and Push
id: docker_build
uses: docker/build-push-action@v6
with:
context: ./${{matrix.os.dir}}
file: ./${{matrix.os.dir}}/Dockerfile-spack
push: true
build-args: |
VERSION=${{ steps.meta.outputs.version }}
REPOSITORY=${{ env.REGISTRY }}/${{env.OWNER_LC}}
tags: ${{ env.REGISTRY }}/${{env.OWNER_LC}}/${{ env.IMAGE_NAME}}:${{steps.meta.outputs.version}}-${{matrix.os.suffix}}
labels: ${{ steps.meta.outputs.labels }}
build-minimal:
runs-on: ubuntu-latest
needs: build-spack
strategy:
matrix:
os: [{dir: AlmaLinux9,suffix: alma9}]
env:
IMAGE_NAME: mucoll-minimal
steps:
- name: Free Disk Space (Ubuntu)
uses: endersonmenezes/free-disk-space@v2
with:
remove_android: true
remove_dotnet: true
remove_haskell: true
remove_tool_cache: true
remove_swap: true
remove_packages: "azure-cli google-cloud-cli microsoft-edge-stable google-chrome-stable firefox postgresql* temurin-* *llvm* mysql* dotnet-sdk-*"
remove_packages_one_command: true
remove_folders: "/usr/share/swift /usr/share/miniconda /usr/share/az* /usr/share/glade* /usr/local/lib/node_modules /usr/local/share/chromium /usr/local/share/powershell"
testing: false
- name: Checkout
uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
- name: Login to DockerHub
uses: docker/login-action@v3
with:
registry: ${{ env.REGISTRY }}
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
- name: lowercase owner name
run: |
echo "OWNER_LC=${OWNER,,}" >>${GITHUB_ENV}
env:
OWNER: '${{ github.repository_owner }}'
- name: Docker Meta
id: meta
uses: docker/metadata-action@v5
with:
images: ${{ env.REGISTRY }}/${{env.OWNER_LC}}/mucoll-dummy
- name: Build and Push
id: docker_build
uses: docker/build-push-action@v6
with:
push: true
context: ./${{matrix.os.dir}}
file: ./${{matrix.os.dir}}/Dockerfile-minimal
build-args: |
VERSION=${{ steps.meta.outputs.version }}
REPOSITORY=${{ env.REGISTRY }}/${{env.OWNER_LC}}
tags: ${{ env.REGISTRY }}/${{env.OWNER_LC}}/${{ env.IMAGE_NAME}}:${{steps.meta.outputs.version}}-${{matrix.os.suffix}}
labels: ${{ steps.meta.outputs.labels }}
build-sim:
runs-on: ubuntu-latest
needs: build-minimal
strategy:
matrix:
os: [{dir: AlmaLinux9,suffix: alma9}]
steps:
- name: Free Disk Space (Ubuntu)
uses: endersonmenezes/free-disk-space@v2
with:
remove_android: true
remove_dotnet: true
remove_haskell: true
remove_tool_cache: true
remove_swap: true
remove_packages: "azure-cli google-cloud-cli microsoft-edge-stable google-chrome-stable firefox postgresql* temurin-* *llvm* mysql* dotnet-sdk-*"
remove_packages_one_command: true
remove_folders: "/usr/share/swift /usr/share/miniconda /usr/share/az* /usr/share/glade* /usr/local/lib/node_modules /usr/local/share/chromium /usr/local/share/powershell"
testing: false
- name: Checkout
uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
- name: Login to DockerHub
uses: docker/login-action@v3
with:
registry: ${{ env.REGISTRY }}
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
- name: lowercase owner name
run: |
echo "OWNER_LC=${OWNER,,}" >>${GITHUB_ENV}
env:
OWNER: '${{ github.repository_owner }}'
- name: Docker Meta
id: meta
uses: docker/metadata-action@v5
with:
images: ${{ env.REGISTRY }}/${{env.OWNER_LC}}/mucoll-dummy
- name: Build and Push
id: docker_build
uses: docker/build-push-action@v6
with:
push: true
context: ./${{matrix.os.dir}}
file: ./${{matrix.os.dir}}/Dockerfile-sim
build-args: |
VERSION=${{ steps.meta.outputs.version }}
IMAGE=${{ env.REGISTRY }}/${{env.OWNER_LC}}
REPOSITORY=${{ github.repository }}
MUCOLL_SHA=${{ github.sha }}
tags: ${{ env.REGISTRY }}/${{env.OWNER_LC}}/mucoll-sim:${{steps.meta.outputs.version}}-${{matrix.os.suffix}}
127 changes: 127 additions & 0 deletions .github/workflows/minimal-rebuild.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,127 @@
name: Re-build and publish Minimal

on:
push:
paths:
- '.github/workflows/minimal-rebuild.yml'
- 'AlmaLinux9/Dockerfile-minimal'
workflow_dispatch:

env:
REGISTRY: ghcr.io

permissions:
contents: read
packages: write
id-token: write
attestations: write

jobs:
build-minimal:
runs-on: ubuntu-latest
strategy:
matrix:
os: [{dir: AlmaLinux9,suffix: alma9}]
env:
IMAGE_NAME: mucoll-minimal
steps:
- name: Free Disk Space (Ubuntu)
uses: endersonmenezes/free-disk-space@v2
with:
remove_android: true
remove_dotnet: true
remove_haskell: true
remove_tool_cache: true
remove_swap: true
remove_packages: "azure-cli google-cloud-cli microsoft-edge-stable google-chrome-stable firefox postgresql* temurin-* *llvm* mysql* dotnet-sdk-*"
remove_packages_one_command: true
remove_folders: "/usr/share/swift /usr/share/miniconda /usr/share/az* /usr/share/glade* /usr/local/lib/node_modules /usr/local/share/chromium /usr/local/share/powershell"
testing: false
- name: Checkout
uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
- name: Login to DockerHub
uses: docker/login-action@v3
with:
registry: ${{ env.REGISTRY }}
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
- name: lowercase owner name
run: |
echo "OWNER_LC=${OWNER,,}" >>${GITHUB_ENV}
env:
OWNER: '${{ github.repository_owner }}'
- name: Docker Meta
id: meta
uses: docker/metadata-action@v5
with:
images: ${{ env.REGISTRY }}/${{env.OWNER_LC}}/mucoll-dummy
- name: Build and Push
id: docker_build
uses: docker/build-push-action@v6
with:
push: true
context: ./${{matrix.os.dir}}
file: ./${{matrix.os.dir}}/Dockerfile-minimal
build-args: |
VERSION=${{ steps.meta.outputs.version }}
REPOSITORY=${{ env.REGISTRY }}/${{env.OWNER_LC}}
tags: ${{ env.REGISTRY }}/${{env.OWNER_LC}}/${{ env.IMAGE_NAME}}:${{steps.meta.outputs.version}}-${{matrix.os.suffix}}
labels: ${{ steps.meta.outputs.labels }}
build-sim:
runs-on: ubuntu-latest
needs: build-minimal
strategy:
matrix:
os: [{dir: AlmaLinux9,suffix: alma9}]
steps:
- name: Free Disk Space (Ubuntu)
uses: endersonmenezes/free-disk-space@v2
with:
remove_android: true
remove_dotnet: true
remove_haskell: true
remove_tool_cache: true
remove_swap: true
remove_packages: "azure-cli google-cloud-cli microsoft-edge-stable google-chrome-stable firefox postgresql* temurin-* *llvm* mysql* dotnet-sdk-*"
remove_packages_one_command: true
remove_folders: "/usr/share/swift /usr/share/miniconda /usr/share/az* /usr/share/glade* /usr/local/lib/node_modules /usr/local/share/chromium /usr/local/share/powershell"
testing: false
- name: Checkout
uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
- name: Login to DockerHub
uses: docker/login-action@v3
with:
registry: ${{ env.REGISTRY }}
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
- name: lowercase owner name
run: |
echo "OWNER_LC=${OWNER,,}" >>${GITHUB_ENV}
env:
OWNER: '${{ github.repository_owner }}'
- name: Docker Meta
id: meta
uses: docker/metadata-action@v5
with:
images: ${{ env.REGISTRY }}/${{env.OWNER_LC}}/mucoll-dummy
- name: Build and Push
id: docker_build
uses: docker/build-push-action@v6
with:
push: true
context: ./${{matrix.os.dir}}
file: ./${{matrix.os.dir}}/Dockerfile-sim
build-args: |
VERSION=${{ steps.meta.outputs.version }}
IMAGE=${{ env.REGISTRY }}/${{env.OWNER_LC}}
REPOSITORY=${{ github.repository }}
MUCOLL_SHA=${{ github.sha }}
tags: ${{ env.REGISTRY }}/${{env.OWNER_LC}}/mucoll-sim:${{steps.meta.outputs.version}}-${{matrix.os.suffix}}
Loading
Loading