openjd-cli
Command-line tool for Open Job Description (OpenJD) job templates —
validation, summary, and local execution. Part of the openjd-rs
workspace.
Installs an openjd binary that is drop-in compatible with the Python
openjd CLI.
Installation
From crates.io:
This places an openjd binary on your PATH.
Commands
| Command | Purpose |
|---|---|
openjd check FILE [--extensions EXT...] |
Validate a job or environment template. Exit code 0 on success, non-zero on validation error, with per-field error paths. |
openjd summary FILE [-p NAME=VALUE...] |
Print a human-readable summary of a job: steps, parameters, dependency graph, estimated task count. |
openjd run FILE [-p NAME=VALUE...] [--step NAME] [--task-params ...] |
Instantiate and run a job template locally, streaming action output with timestamps. |
Run openjd --help for the full flag list, or openjd COMMAND --help
for a specific command.
Examples
# Validate a template
# Validate with an extension enabled
# Summarize a job (expanding parameters)
# Run a job locally, one task at a time
Conformance
Passes 100% of the upstream OpenJD conformance test suite (1,000+ tests) on Linux, macOS, and Windows.
Minimum supported Rust version
Rust 1.94.1. Enforced in CI.
Relationship to other crates
openjd-cli builds on top of the rest of the openjd-rs workspace:
openjd-model— template parsing, validation, job creation.openjd-sessions— local session runtime forrun.openjd-expr— expression evaluation and format-string interpolation.
If you are embedding OpenJD support in your own program, depend on those libraries directly rather than this CLI.
Versioning
This crate follows Semantic Versioning. While the
major version is 0.x, the public API may have breaking changes in minor
version bumps, in keeping with Cargo's
pre-1.0 semver rules. Each crate in the openjd-rs workspace
is versioned independently.
License
Licensed under either of
- Apache License, Version 2.0 (LICENSE-Apache-2.0 or http://www.apache.org/licenses/LICENSE-2.0)
- MIT License (LICENSE-MIT or http://opensource.org/licenses/MIT)
at your option.
Contribution
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.
Security
See https://aws.amazon.com/security/vulnerability-reporting/ or email AWS Security to report a potential security issue. Please do not create a public GitHub issue.