Bare Metal
Installation
opctl is distributed as a self-contained executable, so installation generally consists of:
- Downloading the OS specific binary
- Adding it to your path
Dependencies
Opctl currently supports multiple container runtimes. Dependencies vary based on whichever you choose:
container runtime | dependencies |
---|---|
docker | docker |
k8s | opctl must be running inside k8s (uses the downward API) |
qemu (experimental) | lima |
OSX - M1
curl -L https://github.com/opctl/opctl/releases/latest/download/opctl-darwin-arm64.tgz | sudo tar -xzv -C /usr/local/bin
OSX - Intel
curl -L https://github.com/opctl/opctl/releases/latest/download/opctl-darwin-amd64.tgz | sudo tar -xzv -C /usr/local/bin
Linux
curl -L https://github.com/opctl/opctl/releases/latest/download/opctl-linux-amd64.tgz | sudo tar -xzv -C /usr/local/bin
Windows
Use Windows Subsystem for Linux (WSL) and the linux install.
Upgrading from version 0.1.48 or newer
If you're updating from version 0.1.48 or newer:
# update to latest release from https://github.com/opctl/opctl/releases
opctl self-update
Upgrading from version 0.1.47 or older
In 2021 our previous artifact hosting provider shut down. If using version 0.1.47 or older, this results in self-update
finding no updates and mistakenly thinking you're up to date.
To update you must uninstall and reinstall:
- Kill any running node:
opctl node kill
- Locate your data dir:
# result should include default data dir such as:
# --data-dir Path of dir used to store opctl data (env $OPCTL_DATA_DIR) (default "/Users/myusername/Library/Application Support/opctl")
opctl - Delete your data dir:
sudo rm -rf /path/to/opctl/data/dir
- Follow Installation instructions
IDE Plugins
VSCode
install vscode-yaml plugin
add to your user or workspace settings
"yaml.schemas": {
"https://raw.githubusercontent.com/opctl/opctl/main/opspec/opfile/jsonschema.json": "/op.yml"
}edit or create an op.yml w/ your fancy intellisense.