Mercure-Hub: Automatiser avec la CLI
Démarrez Mercure Hub, récupérez ses identifiants et modifiez sa configuration de façon programmatique avec la CLI Stackhero
👋 Bienvenue dans la documentation Stackhero !
Stackhero offre un service Mercure-Hub cloud entièrement géré, conçu pour simplifier et fiabiliser la diffusion de données en temps réel. Vous profitez de :
- Requêtes et tailles de messages illimitées pour une flexibilité maximale.
- Un domaine personnalisé avec la sécurité HTTPS intégrée (par exemple, https://real-time.votre-entreprise.com).
- Des mises à jour en un clic pour garder votre hub à jour sans aucune complication.
- Une performance élevée et une sécurité avancée sur une infrastructure privée et dédiée.
- Plusieurs régions disponibles : 🇪🇺 Europe et 🇺🇸 USA pour une diffusion à faible latence.
Mettez-vous en route rapidement : il suffit de 5 minutes pour déployer votre environnement Mercure-Hub cloud hosting et commencer à envoyer des mises à jour en temps réel à vos applications.
Ce guide vous explique comment créer un service Mercure Hub, lire ses identifiants et mettre à jour sa configuration entièrement depuis la ligne de commande, sans aucun clic dans le tableau de bord. C’est idéal pour les scripts, les pipelines CI et les agents IA.
Nous allons utiliser la CLI Stackhero pour toutes les opérations. Si ce n’est pas déjà fait, vous pouvez l’installer avec :
curl -fsSL https://www.stackhero.io/install.sh | sh
1. Authentification
La façon la plus simple de commencer est de vous connecter via votre navigateur. Lorsque vous exécutez la commande de connexion, la CLI ouvre une page web où vous pouvez approuver l’accès. Aucun mot de passe ni code 2FA n’est saisi dans la CLI elle-même.
stackhero login
Après la connexion, vos identifiants sont stockés localement et seront utilisés automatiquement par les prochaines commandes CLI.
Pour les environnements entièrement automatisés comme les scripts ou les pipelines CI, vous pouvez préférer un jeton d’accès non interactif. Vous pouvez en générer un depuis votre tableau de bord (Compte > Access tokens), puis l’exporter comme variable d’environnement. La CLI, ainsi que tout script que vous exécutez, le détectera automatiquement.
export STACKHERO_TOKEN="usr-xxxxxx:your-token"
2. Trouver le store de service Mercure Hub
Ensuite, vous voudrez lister les stores de service Mercure Hub disponibles sur votre compte. La CLI accepte directement le nom du store (mercure-hub), il n’est donc pas nécessaire de rechercher ou copier des IDs.
# Lister les stores de service Mercure Hub (ajoutez --organization si vous en gérez plusieurs)
stackhero services-store-list --name="mercure-hub"
Vous pouvez utiliser le nom du store mercure-hub dans les commandes suivantes, ou choisir un ID spécifique svs-xxxxxx de la liste si vous le souhaitez.
3. Choisir une taille d’instance et une région
# Lister les tailles d’instance pour votre store de service (utilisez la colonne NAME pour --instance)
stackhero instances-store-list --service-store=mercure-hub
# Lister les régions disponibles (noms comme "europe")
stackhero regions-list
4. Créer le service
Voici un exemple de script qui crée un stack, ajoute votre service Mercure Hub dessus, attend son démarrage, récupère sa configuration (y compris les identifiants générés), puis applique une nouvelle configuration.
#!/bin/bash
set -e
export STACKHERO_TOKEN="usr-xxxxxx:your-token"
serviceStore="mercure-hub" # Le nom du store de service Mercure Hub (voir étape 2)
instance="..." # Une taille d’instance de l’étape 3
region="europe" # Un nom de région de l’étape 3
# Créer un stack pour votre service (utilise votre organisation par défaut ; ajoutez --organization si besoin)
stackId=$(stackhero --format=script stack-create \
--name="My Mercure Hub stack")
echo "Stack créé : ${stackId}"
# Ajouter Mercure Hub au stack (les noms sont résolus automatiquement)
serviceId=$(stackhero --format=script service-add \
--stack="My Mercure Hub stack" \
--service-store="${serviceStore}" \
--instance="${instance}" \
--region="${region}")
echo "Service ajouté : mercure-hub"
# Attendre que le service soit totalement opérationnel (cela peut prendre quelques minutes)
stackhero service-wait-for --service="mercure-hub"
# Récupérer la configuration du service, y compris les identifiants générés
stackhero service-configuration-get --service="mercure-hub" --format=json
5. Récupérer les identifiants
La commande service-configuration-get retourne la configuration complète de votre service, incluant les mots de passe générés automatiquement et les informations de connexion. Le résultat est au format JSON, ce qui facilite son utilisation dans des scripts et automatisations.
stackhero service-configuration-get --service=svc-xxxxxx --format=json
6. Modifier la configuration
Vous pouvez consulter un exemple de schéma de configuration puis appliquer vos propres paramètres. Lors de la mise à jour de la configuration, le service peut redémarrer pour appliquer les changements.
# Afficher le schéma de configuration et un exemple pour votre service
stackhero service-configuration-example --service=svc-xxxxxx
# Appliquer une configuration personnalisée (le service redémarre si nécessaire)
stackhero service-configuration-set \
--service=svc-xxxxxx \
--configuration='{ "...": "..." }'
# Attendre que la nouvelle configuration soit appliquée
stackhero service-wait-for --service=svc-xxxxxx
Voilà, vous avez maintenant vu tout le cycle de vie : démarrer un service, récupérer ses identifiants et le reconfigurer, le tout de façon scriptable et automatisée. Pour aller plus loin, consultez la documentation complète de la CLI, qui couvre aussi l’authentification non interactive STACKHERO_TOKEN présentée ici.