Installer Huber

Au sommaire :

  • 1-Qu'est-ce que Huber ?
  • 2-Prérequis
  • 3-Installation
  • 4-Installer un projet

1-Qu'est-ce que Huber ?

Hubert est un outil CLI pour macOS, Windows et Linux qui fait office de gestionnaire de paquets pour simplifier l'installation de projets se trouvant sur GitHub.

Il intègre notamment :

  • Le protocole SSH/HTTPS pour communiquer avec GitHub
  • Le format YAML pour la gestion de paquets
  • Une liste des dépôts les plus populaires (mise à jour régulièrement) comme k8s, k3s, k3d et tout plein de projets cloud-native
  • Une fonction dépot pour gérer l'installation de vos propres projets
GitHub - innobead/huber: Huber 📦, Package Manager for GitHub repos
Huber 📦, Package Manager for GitHub repos. Contribute to innobead/huber development by creating an account on GitHub.

2-Prérequis

Un poste client ou une machine virtuelle suffira.

3-Installation

Comme d'habitude, tout se fait sur Linux. Tapez la commande suivante pour récupérer et installer le binaire de Huber.

curl -sfSL https://raw.githubusercontent.com/innobead/huber/master/hack/install.sh | bash

Le binaire ira se loger dans ~/.huber/bin/uber ainsi que tout les autres que vous téléchargerai par la suite.

Ouvrez le fichier du shell Bash.

nano ~/.bashrc

Et vous verrez que le le shell connais désormais l'emplacement du binaire de Huber.

Mettez à jour le profil.

source ~/.profile

Si vous avez zsh comme moi, modifiez le fichier "zshrc".

nano ~/.zshrc

À la fin du fichier, ajoutez cette ligne pour que le shell pointe bien vers le binaire pour les appels de commande.

export PATH=$HOME/.huber/bin:$PATH

Enfin, mettez à jour le profil.

source ~/.zshrc

4-Installer un projet

Tapez la commande "huber search" et vous allez voir une liste impressionnante de projets qui ne demande juste qu'à être utilisé.

Il y en a quelques uns comme :

  • rancher server, rancher-cli, rke1, rke2 et k3d de Rancher Labs
  • Kubefire qui utilise Weave Ignite et les microVMs Firecracker pour boostrapper des clusters kubeadm, k3s, k0s et rke2
  • Terraform, Packer, Consul
  • Minikube, Kind, Podman etc.

On va installer les projets suivants :

huber install k3d k0s terraform packer kubefire

Tout les binaires se trouverons dans "~/.huber/bin".

Installed executables:
 - /home/sussudio/.huber/bin/k3d
k3d (version: v5.4.6, source: github) installed
Installed executables:
 - /home/sussudio/.huber/bin/k0s-v1.26.0+k0s.0
k0s (version: v1.26.0+k0s.0, source: github) installed
Installed executables:
 - /home/sussudio/.huber/bin/terraform
terraform (version: v1.3.7, source: github) installed
Installed executables:
 - /home/sussudio/.huber/bin/packer
packer (version: v1.8.5, source: github) installed
Installed executables:
 - /home/sussudio/.huber/bin/kubefire
kubefire (version: v0.3.8, source: github) installed

Ça va vous faire gagner un paquet de temps.

De base, il fallait récupérer le binaire via la commane "curl", le renommer, le rendre executable et le mettre dans "/usr/local/bin".

Du coup dans vos scripts Bash ou Ansible, vous allez simplement installer Huber et indiquez des commandes comme "huber install" en plus d'avoir les tout derniers binaires à jour.