Skip to content

Commit

Permalink
Fix Jenkins CI build and ccache use (celeritas-project#1036)
Browse files Browse the repository at this point in the history
* Line wrap pull request
* Build local on 'develop' as well for ccache reasons
* Reset jenkins: use newer presets from workflow
* Update git-describe when buliding a branch
* Rename build-local to build-fast
  • Loading branch information
sethrj committed Nov 28, 2023
1 parent 94391ef commit c2ef342
Show file tree
Hide file tree
Showing 5 changed files with 30 additions and 74 deletions.
9 changes: 3 additions & 6 deletions .github/pull_request_template.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,7 @@

# Title

Should be an imperative statement (title-cased first word,
no trailing punctuation) summarizing its effect on the user. For example:
Should be an imperative statement (title-cased first word, no trailing punctuation) summarizing its effect on the user. For example:
- Implement the FooBar model *[enhancement, physics]*
- Handle errors in track initialization *[enhancement, orange]*
- Fix sampling of low-energy Celeritons *[bug, physics]*
Expand All @@ -12,15 +11,13 @@ no trailing punctuation) summarizing its effect on the user. For example:

# Description

The description should summarize or enumerate the main changes in the pull
request. Illustrative images are recommended if possible!
The description should summarize or enumerate the main changes in the pull request. Illustrative images are recommended if possible!

# Labels

If you're a core developer, add one of each label:

- Change type: {bug, documentation, enhancement, minor}
- Category: {app, core, external, field, orange, performance, physics,
user}
- Category: {app, core, external, field, orange, performance, physics, user}

See [https://github.com/celeritas-project/celeritas/blob/develop/doc/appendices/administration.rst#review-process](review process) for descriptions of the labels and requirements.
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
# Build directly on the GitHub runner
name: build-local
# Build directly on the GitHub runner with caching
name: build-fast
on:
workflow_dispatch:
workflow_call:

concurrency:
group: build-local-${{github.ref}}-${{github.event.pull_request.number || github.run_number}}-${{github.workflow}}
group: build-fast-${{github.ref}}-${{github.event.pull_request.number || github.run_number}}-${{github.workflow}}
cancel-in-progress: true

jobs:
Expand Down Expand Up @@ -64,7 +64,9 @@ jobs:
run: |
mkdir build && cd build
cmake -GNinja \
-DCeleritas_GIT_DESCRIBE=";-pr.${{github.event.pull_request.number}};" \
-DCeleritas_GIT_DESCRIBE="${{github.event.pull_request
&& format(';-pr.{0};', github.event.pull_request.number)
|| format(';-{0};', github.ref_name)}}" \
-DCELERITAS_BUILD_DEMOS:BOOL=ON \
-DCELERITAS_BUILD_TESTS:BOOL=ON \
-DCELERITAS_USE_SWIG=OFF \
Expand Down
6 changes: 3 additions & 3 deletions .github/workflows/pr.yml
Original file line number Diff line number Diff line change
Expand Up @@ -18,10 +18,10 @@ concurrency:
cancel-in-progress: true

jobs:
build-local:
uses: ./.github/workflows/build-local.yml
build-fast:
uses: ./.github/workflows/build-fast.yml
all-prechecks:
needs: [build-local]
needs: [build-fast]
runs-on: ubuntu-latest
steps:
- name: Success
Expand Down
6 changes: 4 additions & 2 deletions .github/workflows/push.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,12 +16,14 @@ concurrency:
cancel-in-progress: true

jobs:
build:
build-fast:
uses: ./.github/workflows/build-fast.yml
build-full:
uses: ./.github/workflows/build-full.yml
doc:
uses: ./.github/workflows/doc.yml
all:
needs: [build, doc]
needs: [build-fast, build-full, doc]
runs-on: ubuntu-latest
steps:
- name: Success
Expand Down
73 changes: 14 additions & 59 deletions .jenkins
Original file line number Diff line number Diff line change
Expand Up @@ -9,53 +9,24 @@ pipeline {
stages {
stage('Build') {
parallel {
stage('clang-minimal') {
agent {
docker {
image 'celeritas/ci-centos7-rocm5:2022-12-14.2'
// Note: this image does not require CUDA or HIP
}
}
steps {
sh 'entrypoint-shell ./scripts/ci/run-ci.sh centos-rocm debug-orange'
}
post {
always {
xunit reduceLog: false, tools:[CTest(deleteOutputFiles: true, failIfNotNew: true, pattern: 'build/Testing/**/*.xml', skipNoTestFiles: false, stopProcessingIfError: true)]
}
}
}
stage('clang-asan') {
agent {
docker {
image 'celeritas/ci-centos7-rocm5:2022-12-14.2'
}
}
steps {
sh 'entrypoint-shell ./scripts/ci/run-ci.sh centos-rocm asan-orange'
}
post {
always {
xunit reduceLog: false, tools:[CTest(deleteOutputFiles: true, failIfNotNew: true, pattern: 'build/Testing/**/*.xml', skipNoTestFiles: false, stopProcessingIfError: true)]
}
}
}
stage('clang-float') {
stage('rocm-ndebug-orange') {
agent {
docker {
image 'celeritas/ci-centos7-rocm5:2022-12-14.2'
label 'AMD_Radeon_Instinct_MI100 && rocm-docker'
args '--device=/dev/kfd --device=/dev/dri --security-opt seccomp=unconfined'
}
}
steps {
sh 'entrypoint-shell ./scripts/ci/run-ci.sh centos-rocm debug-orange-float'
sh 'entrypoint-shell ./scripts/ci/run-ci.sh centos-rocm ndebug-orange'
}
post {
always {
xunit reduceLog: false, tools:[CTest(deleteOutputFiles: true, failIfNotNew: true, pattern: 'build/Testing/**/*.xml', skipNoTestFiles: false, stopProcessingIfError: true)]
}
}
}
stage('hip-ndebug') {
stage('rocm-ndebug-orange-float') {
agent {
docker {
image 'celeritas/ci-centos7-rocm5:2022-12-14.2'
Expand All @@ -64,15 +35,15 @@ pipeline {
}
}
steps {
sh 'entrypoint-shell ./scripts/ci/run-ci.sh centos-rocm ndebug-orange'
sh 'entrypoint-shell ./scripts/ci/run-ci.sh centos-rocm ndebug-orange-float'
}
post {
always {
xunit reduceLog: false, tools:[CTest(deleteOutputFiles: true, failIfNotNew: true, pattern: 'build/Testing/**/*.xml', skipNoTestFiles: false, stopProcessingIfError: true)]
}
}
}
stage('full-novg') {
stage('cuda-debug-orange') {
agent {
docker {
image 'celeritas/ci-jammy-cuda11:2023-08-02'
Expand All @@ -88,7 +59,7 @@ pipeline {
}
}
}
stage('full-novg-ndebug') {
stage('cuda-ndebug-orange') {
agent {
docker {
image 'celeritas/ci-jammy-cuda11:2023-08-02'
Expand All @@ -104,70 +75,54 @@ pipeline {
}
}
}
stage('vecgeom-reldeb') {
stage('cuda-debug-vecgeom') {
agent {
docker {
image 'celeritas/ci-jammy-cuda11:2023-08-02'
label 'NVIDIA_Tesla_V100-PCIE-32GB && nvidia-docker && large_images'
}
}
steps {
sh 'entrypoint-shell ./scripts/ci/run-ci.sh ubuntu-cuda reldeb-vecgeom'
sh 'entrypoint-shell ./scripts/ci/run-ci.sh ubuntu-cuda debug-vecgeom'
}
post {
always {
xunit reduceLog: false, tools:[CTest(deleteOutputFiles: true, failIfNotNew: true, pattern: 'build/Testing/**/Test.xml', skipNoTestFiles: false, stopProcessingIfError: true)]
}
}
}
stage('vecgeom-demos') {
stage('cuda-reldeb-vecgeom') {
agent {
docker {
image 'celeritas/ci-jammy-cuda11:2023-08-02'
label 'NVIDIA_Tesla_V100-PCIE-32GB && nvidia-docker && large_images'
}
}
steps {
sh 'entrypoint-shell ./scripts/ci/run-ci.sh ubuntu-cuda ndebug-vecgeom'
sh 'entrypoint-shell ./scripts/ci/run-ci.sh ubuntu-cuda reldeb-vecgeom'
}
post {
always {
xunit reduceLog: false, tools:[CTest(deleteOutputFiles: true, failIfNotNew: true, pattern: 'build/Testing/**/Test.xml', skipNoTestFiles: false, stopProcessingIfError: true)]
}
}
}
stage('vecgeom-tests') {
stage('cuda-ndebug-vecgeom') {
agent {
docker {
image 'celeritas/ci-jammy-cuda11:2023-08-02'
label 'NVIDIA_Tesla_V100-PCIE-32GB && nvidia-docker && large_images'
}
}
steps {
sh 'entrypoint-shell ./scripts/ci/run-ci.sh ubuntu-cuda debug-vecgeom'
sh 'entrypoint-shell ./scripts/ci/run-ci.sh ubuntu-cuda ndebug-vecgeom'
}
post {
always {
xunit reduceLog: false, tools:[CTest(deleteOutputFiles: true, failIfNotNew: true, pattern: 'build/Testing/**/Test.xml', skipNoTestFiles: false, stopProcessingIfError: true)]
}
}
}
stage('clang-geant4') {
agent {
docker {
image 'celeritas/ci-centos7-rocm5:2022-12-14.2'
// Note: this image does not require CUDA or HIP
}
}
steps {
sh 'entrypoint-shell ./scripts/ci/run-ci.sh centos-rocm reldeb-geant4'
}
post {
always {
xunit reduceLog: false, tools:[CTest(deleteOutputFiles: true, failIfNotNew: true, pattern: 'build/Testing/**/*.xml', skipNoTestFiles: false, stopProcessingIfError: true)]
}
}
}
}
}
}
Expand Down

0 comments on commit c2ef342

Please sign in to comment.