1- /* This file uses jenkins shared library `vivarium_build_utils`,
2- found at https://github.com/ihmeuw/vivarium_build_utils
3- Due to Jenkins convention, importable modules must be stored
1+ /* This Jenkinsfile simply loads the `reusable_pipeline` pipeline from the
2+ vivariu_build_utils repository (https://github.com/ihmeuw/vivarium_build_utils).
3+
4+ vivarium_build_utils is loaded as a Jenkins shared library
5+ (https://www.jenkins.io/doc/book/pipeline/shared-libraries/).
6+ Jenkins shared library convention dictates that importable modules must be stored
47in the 'vars' folder.
5- Jenkins needs to be configured globally to use the correct branch.
6- To configure the repo/branch go to :
8+
9+ Jenkins shared libraries can be configured in the Jenkins UI :
710* Manage Jenkins
811 * Configure System
912 * Global Pipeline Libraries section
@@ -14,10 +17,16 @@ To configure the repo/branch go to:
1417 * Project Repository: Url to the shared lib
1518 * Credentials: SSH key to access the repo
1619
17- Updating the shared repo will take affect on the next pipeline invocation.
18- The "_" denotes that all modules will be imported from the shared library.
20+ Note that updating the shared repo will take affect on the next pipeline invocation.
1921*/
20- @Library (" vivarium_build_utils" ) _
22+
23+ // Load the get_vbu_version function from vivarium_build_utils/bootstrap/
24+ // (the directory to load from is defined in the Jenkins shared library configuration)
25+ @Library (" get_vbu_version@main" ) _
26+
27+ // Load the full vivarium_build_utils library at the expected version
28+ library(" vivarium_build_utils@${ get_vbu_version()} " )
29+
2130reusable_pipeline(
2231 scheduled_branches : [
2332 " main" ,
0 commit comments