The Orchestrator CLI is a standalone utility which offers command line commands to interact and manage various Orchestrator resources using the REST API endpoints.
Currently the orch-cli is supported for Infrastructure Management operations and
in beta for Application Orchestration and Cluster Orchestration.
Currently allows user to create, get, list, set and delete the following
Orchestrator entities:
- Hosts
- Operating System Profiles (OsProfiles)
- Sites
- Regions
- Custom Configs
- Clusters
- Application images registries
- Application artifacts
- Applications
- Application profiles
- Deployment packages (a.k.a bundles)
- Deployment profiles (a.k.a. bundle profiles)
- Application references of deployment packages
- Deployments
Additionally, the CLI supports advanced operations.
-
- Host registration in bulk via the upload of a CSV file.
- Validation of the CSV file for the host registration.
-
- Deployment packages can be created/updated by loading contents of a
directory structure via the
loadcommand.
- Deployment packages can be created/updated by loading contents of a
directory structure via the
Instructions on how to install and set up the CLI on your development machine.
Pull the orch-cli compressed artifact from the registry-rs.edgeorchestration.intel.com and unpack the archive. The archive contains the orch-cli binary.
oras pull registry-rs.edgeorchestration.intel.com/edge-orch/files/orch-cli:3.1
tar xf orch-cli-package.tar.gzFirstly, please verify that all dependencies have been installed. This code requires the following tools to be installed on your development machine:
- Go* programming language - check $GOVERSION_REQ
- golangci-lint - check $GOLINTVERSION_REQ
- go-junit-report - check $GOJUNITREPORTVERSION_REQ
- Python* programming language version 3.10 or later
- gocover-cobertura - check $GOCOBERTURAVERSION_REQ
- buf
- protoc-gen-doc
- protoc-gen-go-grpc
- protoc-gen-go
Build the project as follows:
# Build go binary
make buildThe orch-cli binary is created in the orch-cli/build/_output directory
To install the cli:
# Install go binary
make installBy default, the binary will be installed to /usr/local/bin,
the location can be overridden by setting the INSTALL_PATH environmental variable.
We welcome contributions from the community! To contribute, please open a pull
request to have your changes reviewed and merged into the main branch.
We encourage you to add appropriate unit tests and end-to-end tests if
your contribution introduces a new feature. See Contributor Guide for
information on how to contribute to the project.
The Orchestrator CLI is developed in the Go language and is built as a standalone executble for Linux, Mac, and Windows platforms. The CLI uses the industry standard viper and cobra libraries.
Below are some of the important make targets which developer should be aware about.
Build the component binary as follows:
# Build go binary
make buildUnit tests are run for each PR and the developer can run unit tests locally as follows:
# Run unit tests
make testLinter checks are run for each PR and the developer can run linter check locally as follows:
make lintLicense checks are run for each PR and the developer can run license check locally as follows:
make licenseTo learn more about the project, its community, and governance, visit the Edge Orchestrator Community.
For support, start with Troubleshooting or Contact us.
The Orchestrator CLI is licensed under Apache 2.0 License
Last Updated Date: June 16, 2025