/scaleway-cli

Command Line Interface for Scaleway

Primary LanguageGoApache License 2.0Apache-2.0

CircleCI GoReportCard

Scaleway CLI (v2)

Scaleway CLI is a tool to help you pilot your Scaleway infrastructure directly from your terminal.

Installation

With a Package Manager (Recommended)

A package manager installs and upgrades the Scaleway CLI with a single command. We recommend this installation mode for more simplicity and reliability:

Homebrew

Install the latest stable release on macOS using Homebrew:

brew install scw

Arch Linux

Install the latest stable release on Arch Linux from official repositories. For instance with pacman:

pacman -S scaleway-cli

Chocolatey

Install the latest stable release on Windows using Chocolatey (Package):

choco install scaleway-cli

Manually

Released Binaries

We provide static-compiled binaries for darwin (macOS), GNU/Linux, and Windows platforms. You just have to download the binary compatible with your platform to a directory available in your PATH:

Linux

# Check out the latest release available on github <https://github.com/scaleway/scaleway-cli/releases/latest>
VERSION="2.5.4"

# Download the release from github
sudo curl -o /usr/local/bin/scw -L "https://github.com/scaleway/scaleway-cli/releases/download/v${VERSION}/scaleway-cli_${VERSION}_linux_amd64"
# Naming changed lately, the url prior to 2.5.4 was https://github.com/scaleway/scaleway-cli/releases/download/v${VERSION}/scw-${VERSION}-linux-x86_64

# Allow executing file as program
sudo chmod +x /usr/local/bin/scw

# Init the CLI
scw init

Windows

You can download the last release here: https://github.com/scaleway/scaleway-cli/releases
This official guide explains how to add tools to your PATH.

Docker Image

You can use the CLI as you would run any Docker image:

docker run -i --rm scaleway/cli:latest

See more in-depth information about running the CLI in Docker here

Getting Started

Setup your configuration

After you installed the latest release just run the initialization command and let yourself be guided! 💃

scw init

It will set up your profile, the authentication, and the auto-completion.

Basic commands

# Create an instance server
scw instance server create type=DEV1-S image=ubuntu_focal zone=fr-par-1 tags.0="scw-cli"

# List your servers
scw instance server list

# Create a Kubernetes cluster named foo with cilium as CNI, in version 1.17.4 and with a pool named default composed of 3 DEV1-M and with 2 tags
scw k8s cluster create name=foo version=1.17.4 pools.0.size=3 pools.0.node-type=DEV1-M pools.0.name=default tags.0=tag1 tags.1=tag2

Environment

You can configure your config or enable functionalities with environment variables.

Variables to override config are describe in config documentation. To enable beta features, you can set SCW_ENABLE_BETA=1 in your environment.

Reference documentation

Namespace Description Documentation
account User related data CLI / API
applesilicon Apple silicon API CLI / API
autocomplete Autocomplete related commands CLI
baremetal Baremetal API CLI / API
billing Billing API CLI / API
cockpit Cockpit API CLI / API
config Config file management CLI
container Serverless Container API CLI / API
dns DNS API CLI / API
feedback Send feedback to the Scaleway CLI Team! CLI
flexibleip Flexible IP API CLI / API
function Serverless Function API CLI / API
iam IAM API CLI / API
info Get info about current settings CLI
init Initialize the config CLI
instance Instance API CLI / API
iot IoT API CLI / API
k8s Kapsule API CLI / API
lb Load Balancer API CLI / API
marketplace Marketplace API CLI
mnq Messaging and Queueing API CLI / API
object Object-storage utils CLI / API
rdb Database RDB API CLI / API
redis Redis API CLI / API
registry Container registry API CLI / API
secret Secret manager API CLI
shell Start Shell mode CLI
tem Transactional Email API CLI / API
vpc-gw VPC Gateway API CLI / API
vpc VPC API CLI / API

Build it yourself

Build Locally

If you have a >= Go 1.13 environment, you can install the HEAD version to test the latest features or to contribute. Note that this development version could include bugs, use tagged releases if you need stability.

go install github.com/scaleway/scaleway-cli/v2/cmd/scw@latest

Dependencies: We only use go Modules with vendoring.

Build with Docker

You can build the scw CLI with Docker. If you have Docker installed, you can run:

docker build -t scaleway/cli .

Once build, you can then use the CLI as you would run any image:

docker run -i --rm scaleway/cli

See more in-depth information about running the CLI in Docker here

Development

This repository is at its early stage and is still in active development. If you are looking for a way to contribute please read CONTRIBUTING.md.

Reach Us

We love feedback. Don't hesitate to open a Github issue or feel free to reach us on Scaleway Slack community, we are waiting for you on #opensource.