octl

command module
v0.0.30 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 17, 2026 License: BSD-3-Clause Imports: 5 Imported by: 0

README ΒΆ

OCTL

Project Stage



πŸ“„ Table of Contents


🧭 Overview

octl is a modern CLI for the Outscale APIs, written in Go.

It supports:

  • installation via a single static binary,
  • direct flags to all request fields (no JSON required),
  • autocompletion support for all API calls, flags, and flag values,
  • jq-style output filters,
  • command chaining,
  • syntax highlighting of output,
  • auto-update to the latest version.

It manages:

  • IaaS resources (nets, vms, ...),
  • OOS storage (buckets, objects),
  • local metadata (when running on a VM).

And includes a preliminary support for OKS Kubernetes clusters.


βœ… Requirements

  • Access to the OUTSCALE API (with appropriate credentials)

βš™ Installation

Download the latest binary from the Releases page.

Linux

On an amd64 platform:

curl -L -o octl https://github.com/outscale/octl/releases/latest/download/octl_Linux_x86_64
chmod +x octl
sudo mv octl /usr/local/bin

Autocompletion setup is documented here:

MacOS

Using Homebrew:

brew tap outscale/tap
brew install outscale/tap/octl

Docker

A outscale/octl Docker image is available.


πŸ›  Configuration

Configuration can be provided either via environment variables or a profile file:

Quick example (env vars):

export OSC_ACCESS_KEY="..."
export OSC_SECRET_KEY="..."
export OSC_REGION="eu-west-2"

πŸš€ Quickstart

List volumes using the high-level command:

octl iaas volume list

Many shortcuts are also available, the following also works:

octl iaas vol ls

Call an API operation directly:

octl iaas api ReadVms --Filters.VmStateNames running

More examples:

🐳 Quickstart (Docker)

With environment variables:

docker run --env OSC_ACCESS_KEY=$OSC_ACCESS_KEY --env OSC_SECRET_KEY=$OSC_SECRET_KEY --env OSC_REGION=$OSC_REGION -ti outscale/octl:latest iaas volume list

With a profile file:

docker run --mount type=bind,src=$HOME/.osc,dst=/root/.osc -ti outscale/octl:latest iaas volume list

πŸ“š Documentation

πŸ“œ License

octl is released under the BSD 3-Clause license.

Β© 2026 Outscale SAS

See LICENSE for full details.

🀝 Contributing

We welcome contributions!

Please read our Contributing Guidelines and Code of Conduct before submitting a pull request.

Documentation ΒΆ

Overview ΒΆ

SPDX-FileCopyrightText: 2026 Outscale SAS <opensource@outscale.com>

SPDX-License-Identifier: BSD-3-Clause

Directories ΒΆ

Path Synopsis
cmd
SPDX-FileCopyrightText: 2026 Outscale SAS <opensource@outscale.com>
SPDX-FileCopyrightText: 2026 Outscale SAS <opensource@outscale.com>
doc command
SPDX-FileCopyrightText: 2026 Outscale SAS <opensource@outscale.com>
SPDX-FileCopyrightText: 2026 Outscale SAS <opensource@outscale.com>
pkg
alias
SPDX-FileCopyrightText: 2026 Outscale SAS <opensource@outscale.com>
SPDX-FileCopyrightText: 2026 Outscale SAS <opensource@outscale.com>
builder
SPDX-FileCopyrightText: 2026 Outscale SAS <opensource@outscale.com>
SPDX-FileCopyrightText: 2026 Outscale SAS <opensource@outscale.com>
builder/flags
SPDX-FileCopyrightText: 2026 Outscale SAS <opensource@outscale.com>
SPDX-FileCopyrightText: 2026 Outscale SAS <opensource@outscale.com>
config
SPDX-FileCopyrightText: 2026 Outscale SAS <opensource@outscale.com>
SPDX-FileCopyrightText: 2026 Outscale SAS <opensource@outscale.com>
config/generate/iaas command
SPDX-FileCopyrightText: 2026 Outscale SAS <opensource@outscale.com>
SPDX-FileCopyrightText: 2026 Outscale SAS <opensource@outscale.com>
config/generate/kube command
SPDX-FileCopyrightText: 2026 Outscale SAS <opensource@outscale.com>
SPDX-FileCopyrightText: 2026 Outscale SAS <opensource@outscale.com>
config/generate/kubeclient command
SPDX-FileCopyrightText: 2026 Outscale SAS <opensource@outscale.com>
SPDX-FileCopyrightText: 2026 Outscale SAS <opensource@outscale.com>
debug
SPDX-FileCopyrightText: 2026 Outscale SAS <opensource@outscale.com>
SPDX-FileCopyrightText: 2026 Outscale SAS <opensource@outscale.com>
messages
SPDX-FileCopyrightText: 2026 Outscale SAS <opensource@outscale.com>
SPDX-FileCopyrightText: 2026 Outscale SAS <opensource@outscale.com>
output
SPDX-FileCopyrightText: 2026 Outscale SAS <opensource@outscale.com> SPDX-License-Identifier: BSD-3-Clause
SPDX-FileCopyrightText: 2026 Outscale SAS <opensource@outscale.com> SPDX-License-Identifier: BSD-3-Clause
output/filter
SPDX-FileCopyrightText: 2026 Outscale SAS <opensource@outscale.com> SPDX-License-Identifier: BSD-3-Clause
SPDX-FileCopyrightText: 2026 Outscale SAS <opensource@outscale.com> SPDX-License-Identifier: BSD-3-Clause
output/format
SPDX-FileCopyrightText: 2026 Outscale SAS <opensource@outscale.com> SPDX-License-Identifier: BSD-3-Clause
SPDX-FileCopyrightText: 2026 Outscale SAS <opensource@outscale.com> SPDX-License-Identifier: BSD-3-Clause
output/read
SPDX-FileCopyrightText: 2026 Outscale SAS <opensource@outscale.com> SPDX-License-Identifier: BSD-3-Clause
SPDX-FileCopyrightText: 2026 Outscale SAS <opensource@outscale.com> SPDX-License-Identifier: BSD-3-Clause
runner
SPDX-FileCopyrightText: 2026 Outscale SAS <opensource@outscale.com>
SPDX-FileCopyrightText: 2026 Outscale SAS <opensource@outscale.com>
sdk
SPDX-FileCopyrightText: 2026 Outscale SAS <opensource@outscale.com>
SPDX-FileCopyrightText: 2026 Outscale SAS <opensource@outscale.com>
style
SPDX-FileCopyrightText: 2026 Outscale SAS <opensource@outscale.com> SPDX-License-Identifier: BSD-3-Clause
SPDX-FileCopyrightText: 2026 Outscale SAS <opensource@outscale.com> SPDX-License-Identifier: BSD-3-Clause
update
SPDX-FileCopyrightText: 2026 Outscale SAS <opensource@outscale.com>
SPDX-FileCopyrightText: 2026 Outscale SAS <opensource@outscale.com>

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL