diff --git a/README.md b/README.md index b4768de5449380f394d16ce327f1496481e934a0..ecc6426d8f9a97d9ee4d814e5adf7afcb8ee4a65 100644 --- a/README.md +++ b/README.md @@ -53,9 +53,19 @@ The key collaboration/user code repositories are: - [Physics benchmarks](https://eicweb.phy.anl.gov/EIC/benchmarks/physics_benchmarks) - Analysis of reconstructed for physics performance. The goal is to provide metrics for optimizing detector design and reconstruction. +### Pipelines and Artifacts +The SWG leverages gitlab's CI/CD features heavily in our workflow. +Here are some simplified explanations of these. + +#### Pipeline + +A pipeline is an automated set of jobs/scripts that are triggered by certain actions, such as pushing a merge request or merging into the master/main branch of a repository. +Typically there is one pipeline per repository but there can multiple and a pipline can trigger downstream pipelines ("child" pipelines) or it can be triggered by an upstream pipeline. They can also be triggered manually. + +The graph below show some of the downstream pipeline triggers (arrows) between different repositories. ```mermaid -graph TD; +graph pipeline_triggers; ip[IP6<br>detectors/ip6] --> athena[ATHENA<br>detectors/athena] athena-->db[Detector Benchmarks<br>benchmarks/detector_benchmarks]; db-->rb[Reconstruct Benchmarks<br>benchmarks/reconstruction_benchmarks]; @@ -64,5 +74,17 @@ graph TD; juggler-->pb; ``` +Note that on any change to the detectors will cause all the benchmarks to be run. + +"OK, pipelines run automatically. What is the big deal? + +#### Artifacts + +All pipeline jobs have "artifacts" which are just selected files that are saved and can be downloaded individually or as a zip file. + +Note artifacts are not the output data which is far too big. Artifacts are small files such as images, plots, text files, reports, etc. + + +