JobMon is a Python package developed by IHME's Scientific Computing team, designed to simplify and standardize the process of job monitoring and workflow management in computational projects. It facilitates the tracking of job statuses, manages dependencies, and streamlines the execution of complex workflows across various computing environments.
The tool aims to enhance productivity and ensure computational tasks are efficiently managed and executed, offering a robust solution for handling large-scale, data-driven analyses in research and development projects.
To install JobMon, use the following pip command:
pip install jobmon_client[server]
Refer to the quickstart to get started with a sample workflow
For comprehensive documentation, visit readthedocs.
We encourage contributions from the community. If you're interested in improving JobMon or adding new features, please refer to our developer guide for python client contributions or the GUI README.md for visualization contributions.
This project utilizes a branching strategy that emphasizes release branches and semantic versioning, facilitating orderly development, feature addition, bug fixes, and updates.
main
branch maintains the latest stable release of the project. It represents the culmination of all development efforts into a stable version ready for production use.release/X.Y
, host development for upcoming minor or major releases. When starting a new major or minor version, it is branched off from the latest stable version in main
.release/X.Y
branches. Once development is complete, reviewed, and tested, these changes are merged back into their respective release/X.Y
branch.We adopt semantic versioning for organizing our releases:
release/X.Y
branch for developing new features or addressing bugs. Ensure your branch name clearly reflects the purpose of the changes.main
, it should first be applied to the most current release branch where relevant, before merging into the specific release/X.Y
branch.release/X.Y
branch from which you branched out. The PR must summarize the changes and include any pertinent information for the reviewers.X.Y.Z
format is created for the release/X.Y
branch.release/X.Y
branch is then merged into main
, signifying the release of a new version.For a detailed history of changes and version updates, please refer to the CHANGELOG.md file within this repository.
This project is licensed under the JobMon Non-commercial License, developed at the Institute for Health Metrics and Evaluation (IHME), University of Washington. The license allows for redistribution and use in source and binary forms, with or without modification, under the conditions that:
For commercial use rights, contact the University of Washington, CoMotion, at license@uw.edu or call 206-543-3970, and inquire about this project.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
For a full copy of the license, see the LICENSE file in this repository.