command
module
Version:
v0.3.4
Opens a new window with list of versions in this module.
Published: Jan 12, 2025
License: Apache-2.0
Opens a new window with license information.
Imports: 1
Opens a new window with list of imports.
Imported by: 0
Opens a new window with list of known importers.
README
¶
DevPod Provider Hetzner
Use this referral code to get €20 in
credits (at time of writing).
DevPod on Hetzner.
This is based upon the DigitalOcean provider.
Usage
To use this provider in your DevPod setup, you will need to do the following steps:
- See the DevPod documentation
for how to add a provider
- Use the reference
mrsimonemms/devpod-provider-hetzner
to download the latest
release from GitHub
- Get an API token
from Hetzner. This will be used to manage resources.
Development
Required environment variables
These are pre-configured in Dev Containers
Variable |
Description |
Example |
DISK_IMAGE |
Hetzner image tag |
docker-ce |
DISK_SIZE |
Disk size in GB |
30 |
GIT_REPO |
Git repo to download |
github.com/mrsimonemms/devpod-provider-hetzner |
HCLOUD_TOKEN |
Hetzner API key |
- |
MACHINE_FOLDER |
Local home folder |
~/.ssh |
MACHINE_ID |
Unique identifier for the machine |
some-machine-id |
MACHINE_TYPE |
Hetzner machine size |
cx22 |
REGION |
Hetzner region ID |
nbg1 |
Testing independently of DevPod
To test the provider workflow, you can run the CLI commands directly.
Command |
Description |
Example |
command |
Run a command on the instance |
COMMAND="ls -la" go run . command |
create |
Create an instance |
go run . create |
delete |
Delete an instance and volume |
go run . delete |
init |
Initialise an instance |
go run . init |
start |
Start an instance |
go run . start |
status |
Retrieve the status of an instance |
go run . status |
stop |
Stop an instance |
go run . stop |
Testing in the DevPod ecosystem
This assumes a Linux AMD64 workspace - if you're developing on any other machine
please update the instructions for that machine (PRs welcome).
These paths may differ on your machine.
To test the provider within the DevPod ecosystem:
-
Install the latest version of the Hetzner provider
-
Backup the original binary:
mv ~/.devpod/contexts/default/providers/hetzner/binaries/hetzner_provider/devpod-provider-hetzner-linux-amd64 ~/.devpod/contexts/default/providers/hetzner/binaries/hetzner_provider/devpod-provider-hetzner-linux-amd64-orig
-
Build the binary:
go build .
-
Move the new binary to the DevPod base:
mv ./devpod-provider-hetzner ~/.devpod/contexts/default/providers/hetzner/binaries/hetzner_provider/devpod-provider-hetzner-linux-amd64
Contributing
- Get a Hetzner account
- Get an API token
with
read & write
access
- Save this as
HCLOUD_TOKEN
in your .envrc
file
Open in a container
Documentation
¶
There is no documentation for this package.
Source Files
¶
Click to show internal directories.
Click to hide internal directories.