/hetzner-control

CLI application for managing servers on the Hetzner platform

Primary LanguagePythonMIT LicenseMIT

hetzner-control

hetzner-control its CLI tool, which lets you easily manage servers on the Hetzner platform

Sample usage gif

Table of contents

Motivation

I wanted to create a console application that would interact with the REST API of the cloud service for convenient server management and the platform in general.

I also wanted to improve my skills in application design and API work while I'm studying software engineering in university.

Usage

$ htz [OPTIONS] COMMAND [ARGS]...

Options:

  • --install-completion: Install completion for the current shell.
  • --show-completion: Show completion for the current shell, to copy it or customize the installation.
  • --help: Show documentation message for available commands/flags

Commands:

  • info: Information about available data centers, servers, prices
  • server: Operations with servers
  • version: Show app version

For a more detailed description of the command, see wiki page

Installation guide

  1. First, install environment variable, i.e. in .bashrc
$ export HETZNER_API_TOKEN="YOUR_HETZNER_TOKEN_HERE"
  1. Installation option
    • You can install hetzner-control from pip
      $ pip3 install hetzner-control
    • Or you can clone the repository and build the wheel/sdist module with poetry (you can preinstall poetry):
      $ git clone https://github.com/Hanabiraa/hetzner-control.git
      $ cd hetzner-control
      $ poetry install
      $ poetry build

Want to contribute?

  1. Clone repo and create a new branch:
$ git checkout https://github.com/Hanabiraa/hetzner-control -b name_for_new_branch
  1. Make changes and test
  2. Submit Pull Request with comprehensive description of changes

License

MIT License