Skip to main content

Bare Metal

Installation

opctl is distributed as a self-contained executable, so installation generally consists of:

  1. Downloading the OS specific binary
  2. Adding it to your path

Dependencies

Opctl currently supports multiple container runtimes. Dependencies vary based on whichever you choose:

container runtimedependencies
dockerdocker
k8sopctl 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:

  1. Kill any running node:
    opctl node kill
  2. 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
  3. Delete your data dir:
    sudo rm -rf /path/to/opctl/data/dir
  4. Follow Installation instructions

IDE Plugins

VSCode

  1. install vscode-yaml plugin

  2. add to your user or workspace settings

    "yaml.schemas": {
    "https://raw.githubusercontent.com/opctl/opctl/main/opspec/opfile/jsonschema.json": "/op.yml"
    }
  3. edit or create an op.yml w/ your fancy intellisense.