talos-rust-client
Client gRPC pour Talos Linux : mTLS par défaut, API typée générée depuis les fichiers proto officiels de SideroLabs.
Talos Linux pilote le système d'exploitation de nos clusters, et son API n'est accessible qu'en gRPC sous mTLS. Le client est généré depuis les proto officiels plutôt que réécrit à la main : les types suivent l'amont, et une rupture d'API se voit à la compilation. Il est publié sur crates.io, sous double licence MIT OR Apache-2.0 — la convention de l'écosystème Rust, qui laisse le choix au réutilisateur.
- Volume
- 8 316 lignes de Rust · 14 fichiers
- Licence
- MIT OR Apache-2.0
- Notre rôle
- Écrit et maintenu par nos ingénieurs. Publié sur crates.io.
github.com/nudibranches-tech/talos-rust-client
s0
Passerelle d'autorisation compatible S3 qui applique une politique OPA/ABAC à chaque requête, avant de la réémettre vers le stockage sous une identité par locataire.
Le contrôle d'accès natif d'un stockage objet s'arrête au seau et à la clé. Nos clients ont besoin de décider par attribut — qui, depuis où, sur quel objet, à quelle heure — et d'un journal nominatif unique quel que soit le backend. s0 termine donc le protocole S3 lui-même : la requête est désérialisée en valeur typée, une décision OPA porte sur cette valeur, et c'est la même valeur qui repart vers le stockage sous une identité par locataire. Sur les 99 opérations du protocole, 23 sont appliquées et 76 refusées ; il n'existe pas de troisième catégorie, et un test échoue si le tableau des opérations et la documentation divergent.
- Volume
- 30 980 lignes de Rust · 68 fichiers
- Licence
- BUSL-1.1 · Apache-2.0 au 18 août 2030
- Notre rôle
- Ce n'est pas un proxy d'octets avec un crochet d'autorisation greffé : la requête est désérialisée en valeur typée, la décision porte sur cette valeur, et c'est la même valeur qui repart vers le stockage. Sur les 99 opérations du protocole, 23 sont appliquées et transmises, 76 refusées — il n'y a pas de troisième catégorie. Un test échoue si le tableau et la documentation divergent.
github.com/nudibranches-tech/s0
talos-rust-client
Client gRPC pour SideroLabs Talos, avec mTLS par défaut et une API typée générée depuis les fichiers proto officiels.
Talos Linux pilote le système d'exploitation de nos clusters, et son API n'est accessible qu'en gRPC sous mTLS. Le client est généré depuis les proto officiels plutôt que réécrit à la main : les types suivent l'amont, et une rupture d'API se voit à la compilation. Il est publié sur crates.io, sous double licence MIT OR Apache-2.0 — la convention de l'écosystème Rust, qui laisse le choix au réutilisateur.
- Volume
- 8 316 lignes de Rust · 14 fichiers
- Licence
- MIT OR Apache-2.0
- Notre rôle
- Talos n'a pas de shell : on ne s'y connecte pas, on lui parle. Il nous fallait ce client pour exploiter les clusters de nos clients.
github.com/nudibranches-tech/talos-rust-client
trino-rust-client
Client Trino pour Rust, avec authentification et protocole spooling.
Repris en décembre 2024 depuis prusto. Le support de Presto a été retiré, ce qui a permis de suivre Trino sans compromis, et le protocole spooling a été ajouté : sans lui, un résultat volumineux transite par le coordinateur et le sature. C'est la fonctionnalité qui décide de la tenue d'une plateforme data sous charge, et c'est celle qui manquait.
- Volume
- 6 374 lignes de Rust · 45 fichiers
- Licence
- Apache-2.0
- Notre rôle
- Écrit et maintenu par nos ingénieurs. Utilisé en production dans Hyperfluid.
github.com/nudibranches-tech/trino-rust-client
Ferris Key
Serveur d'authentification et de gestion d'identités, écrit en Rust.
Nous n'en sommes pas les mainteneurs : nous contribuons au projet et nous le soutenons, parce que l'identité est la brique dont dépendent toutes les autres et que nous préférons qu'elle reste libre.
- Volume
- contribution et soutien
- Licence
- Apache-2.0
- Notre rôle
- Projet communautaire auquel nous contribuons et que nous soutenons.
github.com/ferriskey/ferriskey