Files
herolib/lib
peternashaat b9b8e7ab75 feat: Add K3s installer with complete lifecycle management
Implemented a production-ready K3s Kubernetes installer with full lifecycle
support including installation, startup management, and cleanup.

Key features:
- Install first master (cluster init), join additional masters (HA), and workers
- Systemd service management via StartupManager abstraction
- IPv6 support with Mycelium interface auto-detection
- Robust destroy/cleanup with proper ordering to prevent hanging
- Complete removal of services, processes, network interfaces, and data
2025-11-27 14:01:53 +01:00
..
...
2025-11-25 18:38:21 +01:00
...
2025-11-25 06:13:56 +01:00
2025-11-17 15:11:55 +02:00
...
2025-11-22 11:58:46 +02:00
2025-11-26 14:51:53 +00:00
..
2025-11-22 18:32:19 +01:00
2025-11-25 14:55:00 +01:00
...
2025-11-23 06:38:12 +01:00
...
2025-10-21 08:49:11 +02:00
///
2025-11-25 20:10:31 +01:00
...
2025-11-14 08:51:32 +02:00
2025-10-12 12:30:19 +03:00

herolib

Is an opinionated library as used by threefold mainly to automate cloud environments, its still very much work in progress and we welcome any contribution.

Please check also our cookbook which might give some ideas how to use it.

Get started with hero

curl -sL https://raw.githubusercontent.com/incubaid/herolib/development/scripts/install_hero.sh | bash

Get started with herolib

the following script will install vlang and herolib (report bugs please)

curl https://raw.githubusercontent.com/incubaid/herolib/development/scripts/installer.sh > /tmp/install.sh
bash /tmp/install.sh

optional requirements

  • ssh key loaded for access to github

alternative with manual git checkout & v install

requirements

  • v installed
  • ssh key loaded for access to github
mkdir -p ~/code/github/incubaid
cd ~/code/github/incubaid
git clone git@github.com:incubaid/herolib.git
cd herolib
# checkout a branch with most recent changes
# git checkout development 
bash install.sh

Install Hero

hero is our "hero" tool to execute heroscript, deal with git, ...

hero will be installed in

  • /usr/local/bin for linux
  • ~/hero/bin for osx
curl https://raw.githubusercontent.com/incubaid/herolib/development/scripts/install_hero.sh > /tmp/hero_install.sh
bash /tmp/hero_install.sh
#to debug
bash -x /tmp/hero_install.sh
#maybe you want to copy to your system bin dir
cp ~/hero/bin/hero /usr/local/bin
#to use hero make sure you restart your shell or you do (if osx)
source ~/.zprofile 
#check how to use, can also do on each of the subcommands
hero -help

requirements

  • ssh key loaded for access to github

generating docs yourself

#cd in this directory
cd ~/code/github/incubaid/herolib
bash doc.sh

build hero

  • linux as done by github actions, nothing to do
  • osx: ``