Fist commit

Signed-off-by: Nikolai Rodionov <allanger@badhouseplants.net>
This commit is contained in:
2025-10-26 21:54:20 +01:00
commit ddfed61d8e
12 changed files with 1349 additions and 0 deletions

32
README.md Normal file
View File

@@ -0,0 +1,32 @@
# Hetzner Ansilbe Playbook
Repo for managing the Hetzner infrastructure
## Dev
This project is using poetry for managing ansible and dependencies.
```shell
$ make install
$ make lint
$ make install
```
## Removing stuff
Since the state of the config is the ansible code itself, you can't just remove something from the code and expect that it's going to be removed from Hetzner.
Each entity has a variable `state`, to remove anything, you need to set state to `absent` and run the playbook. And only after that you can remove it from the code.
Also, please, create a git commit, where on object with the `absent` state is tracked.
## Outputs
After running the role you'll see three variables being logged in the last step:
- Server public IP -> It should be used for `ssh` connection to the server
- Load balancer public IP -> It should be used by k8s as the load balancer IP
- Volume device name -> It's the name of device that should be mounted to Longhorn
## Notes
### Resize the volume
Don't forget to resize the filesystem, it should be done manually
- https://docs.hetzner.com/cloud/volumes/faq/