News

Back
2020
September
15
2020

cloudscale.ch CLI 1.0 Now Available

Many professionals see "Linux" and "command lines" as a fixed combination and do not believe that any other tool achieves the efficiency of a shell. This is why we are delighted to announce version 1.0 of our "cloudscale" command line interface (CLI) application. The CLI application interacts with our API and makes it possible for you to manage your cloud resources without leaving the command line.

Simple and clearly laid out

The cloudscale.ch CLI application is written in Python and can be installed in a flash with pip install cloudscale-cli. Following installation, you will find the new command cloudscale that allows you to view, modify, create and remove cloud resources.

The CLI application is also suitable for use in scripts, in particular with the --output json option. You will now be able to elegantly deal with all the usage scenarios that you have wanted to automate for a while now, but where a powerful tool such as Rancher or Terraform was not really suitable.

A list of all the parameters and the supported cloud resources can be found by executing cloudscale --help. Installation and configuration information and instructions are also available online in the project documentation on GitHub.

Sample applications

The following examples show how simple and intuitive it is to manage your cloud resources with our CLI application. You can list your existing servers as follows, for example, and use the optional --filter-tag to additionally limit this to servers you have allocated a certain tag to.

$ cloudscale server list --filter-tag project=gemini --delete
NAME    STATUS    ZONE    TAGS            UUID
------  --------  ------  --------------  ------------------------------------
web4    running   lpg1    project=gemini  5d461dfa-a92a-4c7b-9199-c02ed7b6b570
web3    running   lpg1    project=gemini  54071101-8586-4af7-a5d1-25649fd6b2b2
Do you want to delete? [y/N]

An individual server and several identical servers can be created with the cloudscale create command; you can use the --count option to indicate the number of servers required.

$ cloudscale server create --flavor flex-2 --image debian-10 --ssh-key "$(cat ~/.ssh/id_ed25519.pub)" --tag project=gemini --count 3 --name 'web{counter}' --wait

Please note that {counter} has been added to the name. This makes it possible to give all three servers different names: web1, web2 and web3.

The --wait option means that the command only completes after all the servers that are being created have achieved the final status=running stage.

If you add --action or --delete to the list function, you can stop, start, restart or delete several servers in a single process.

$ cloudscale server list --filter-tag project=gemini --delete
NAME    STATUS    ZONE    TAGS            UUID
------  --------  ------  --------------  ------------------------------------
web4    running   lpg1    project=gemini  5d461dfa-a92a-4c7b-9199-c02ed7b6b570
web3    running   lpg1    project=gemini  54071101-8586-4af7-a5d1-25649fd6b2b2
Do you want to delete? [y/N]

The --verbose option adds additional information to the display.

Good to know

Our CLI application also has a convenient feature that allows a direct SSH connection to be established to your servers: cloudscale server ssh web1. This saves you the additional steps of first having the IP address listed and then laboriously compiling your SSH command by copying and pasting to the console.

Do you have any suggestions or modification requests? The code of our CLI application is open source and covered by the MIT license. We look forward to your feedback.


Usability has been one of our top priorities at cloudscale.ch from the very beginning. While the aim was always for our cloud control panel to be as simple and intuitive to use as possible, the API and integration into various DevOps tools provided maximum efficiency. With the new CLI application, creating individual servers is as streamlined as managing them afterwards, namely on the command line.

Focusing on the essential,
Your cloudscale.ch team

Back to overview