This document provides detailed instructions on how to build, install and use the kci
command line interface (CLI) program, an internal tool developed in Go. The kci
is a critical tool for managing our kitchen collective infrastructure and this document will guide you on the most efficient ways to leverage its functionalities.
kci
is a CLI tool that simplifies the management of the Kinetic Commerce infrastructure. It allows for easy interaction with the system, providing a series of commands designed to facilitate tasks like querying installed services, system diagnostics, and routine maintenance.
note: While this tools is in daily use, it is also under constant development. It should be considered extremely rough around the edges and somewhat volatile.
Before you can install and use kci
, you must have the following installed on your system:
- Go 1.16 or higher
- Git
To view the documentation of all packages (including KineticCommerce) in the
application, you can use godoc
.
godoc --http :8082
Visiting http://localhost:8082
will display the documentation.
- Clone the repository:
git clone https://github.com/KineticCommerce/kci.git
- Navigate into the
kci
directory:
cd kci
- Build the program:
go build
- Move the compiled binary to a directory within your
$PATH
:
sudo mv ./kci /usr/local/bin/
Are not yet available.
You can invoke kci
from the command line by typing kci
followed by the command you want to execute.
Here are some common commands that you may find useful:
kci instance list
: list all instanceskci instance list --filter bastion
: list all instances with a name includeing "bastion"kci ssm list
: list all instances managed with ssmkci ssm session --instanace i-123456
: launch an ssm session for instance i-123456kci help
: get help on all commands
Contributions to the kci
project are welcome. To get started with development, please speak to the operations team.
To run the tests for kci
, navigate into the project's root directory and run:
go test ./...
For support or to report bugs, please file an issue on our issues page AND speak to someone on the operations team.