infrastructure, déclarée

Un pack se déclare.
Xbee le résout.

Xbee est un système d'orchestration et de packaging d'infrastructure : des packs YAML déclaratifs, résolus en environnements multi-hôtes sur Docker ou VM.

ubuntu:24.04requiretomcatdependencyaws-jdkdependencyhost aup
01

Déclarer

Un xbee-pack.yaml décrit ses dépendances, ses variables et son cycle de vie — provision, configure, up, down.

02

Résoudre

Le ProductGraph et l'EnvironmentGraph assemblent système, dépendances et builders en un plan unique.

03

Exécuter

Le provider interne exécute le graphe localement avec Docker ; les providers externes déploient le même modèle sur des VM.

Ce que xbee gère pour vous

xbee-pack.yaml

Packs déclaratifs

Chaque brique — système, dépendance, builder — est un pack YAML versionné, avec ses propres const, var et in.

xbee-env.yaml

Environnements multi-hôtes

Décrivez plusieurs hôtes, leurs packs et leurs actions up/down/configure, en série ou en parallèle.

aucun bloc provider

Une alternative à Compose

Sans configuration, chaque hôte devient un container Docker local. Réseaux, images OCI, volumes et cycles up/down sont orchestrés par xbee.

provider: scaleway

Du local aux VM

Le même modèle cible ensuite AWS, GCP, Azure, VirtualBox ou les clouds européens OVHcloud, Scaleway, IONOS, Hetzner et Exoscale.

xbee-lock.yaml

Résolution & cache

Origines Git ou locales, versions figées dans un fichier de lock, artefacts mis en cache sous ~/.xbee.

validator.go

Validation typée

Chaque xbee-pack.yaml et xbee-env.yaml est validé récursivement, avec diagnostics précis à la ligne.

shell · url · copy

Actions portables

Des actions typées (shell, copy, url, github, user…) exécutées identiquement en container ou VM.