Aller au contenu
Ouvrir la console

Journal des modifications

L’endroit unique pour suivre les nouveautés de la plateforme infonuagique ZSoftly. Chaque section ci-dessous est son propre journal : plateforme et services, la place de marché, le CLI zcp et le fournisseur Terraform / OpenTofu, les plus récentes en premier.

S'abonner au RSS

Mises à jour de la plateforme Public Cloud et des services gérés.

La console comporte un onglet Store où un compte achète des services, des licences et des serveurs dédiés. Les produits du Store sont facturés sur la même facture que vos instances. Ils relèvent du compte, pas d’un projet. Disponibles dès aujourd’hui : Basic Support (gratuit, inclus avec chaque compte), Pro Support à 99 $ par mois et dix serveurs bare metal tarifés à partir de 231 $ par mois. Tout compte peut acheter les produits de 100 $ CA par mois ou moins. Les produits au-dessus de ce montant sont réservés aux comptes postpayés et aux comptes prépayés dont le solde de crédit couvre la commande. Les comptes facturés manuellement les commandent auprès du soutien technique. Vous commandez les produits suivants auprès du soutien technique, après un devis : services professionnels, services gérés, sauvegarde et reprise après sinistre, sécurité et conformité, réseau, formation et licences. Consultez Store (en anglais).

Mots de passe d’instance plus longs (11 octobre 2026)

Section intitulée « Mots de passe d’instance plus longs (11 octobre 2026) »

Les nouvelles instances reçoivent un mot de passe de provisionnement aléatoire de seize caractères au lieu de six. La réinitialisation du mot de passe d’une instance existante renvoie aussi la forme longue. Les instances créées avant cette date gardent leur mot de passe actuel jusqu’à une réinitialisation. Consultez Se connecter avec SSH.

Calcul et stockage vendus séparément (11 octobre 2026)

Section intitulée « Calcul et stockage vendus séparément (11 octobre 2026) »

Chaque forfait de VM ne couvre plus que le processeur et la mémoire. Les noms de forfaits portent un c avant la taille, par exemple ca2c.m (2 vCPU, 4 Go, YUL sur b2.g1, 24,80 $ par mois). Vous choisissez le disque racine à l’étape OS Disk Offering, sous forme de volume de stockage bloc facturé au Go. Le minimum est la taille du modèle. Agrandissez-le à tout moment. Il ne se réduit jamais. Tarifs par Go et par mois :

  • b1.g1 et b2.g1 : 0,14 $
  • b1.g3 : 0,03 $
  • b2.g2 : 0,09 $
  • b2.l1 : 0,10 $
  • b2.l2 : 0,07 $

La même taille de disque racine sur le palier par défaut coûte le même total qu’avant. L’étape Review and Deploy liste maintenant le calcul, le réseau, l’adresse IP publique et le stockage bloc racine sur des lignes distinctes.

Les serveurs existants conservent leur forfait et leur prix. Redimensionner le forfait d’un serveur existant ne change pas son disque racine. Les forfaits personnalisés, où vous choisissez vos propres processeurs et mémoire, sont retirés. Choisissez une taille fixe. Le CLI v1.0.0, publié le même jour, définit le disque racine avec --blockstorage-plan et --root-disk-size. Le fournisseur Terraform et OpenTofu v1.0.0 prend en charge les mêmes sélections nommées de calcul et de stockage racine. Consultez Types d’instances.

Jusqu’à 8 sous-réseaux par VPC (7 septembre 2026)

Section intitulée « Jusqu’à 8 sous-réseaux par VPC (7 septembre 2026) »

Chaque VPC prend en charge jusqu’à 8 sous-réseaux, contre 3 auparavant. Les VPC existants obtiennent la nouvelle limite sans aucune modification de votre part. Si une charge de travail a besoin de plus de 8 sous-réseaux dans un même VPC, ouvrez un billet de soutien depuis la console. Nous étudierons la demande. Voir Ajouter un sous-réseau.

Résolution DNS du point de terminaison de stockage objet depuis les VPC (6 septembre 2026)

Section intitulée « Résolution DNS du point de terminaison de stockage objet depuis les VPC (6 septembre 2026) »

Configuration DNS corrigée pour les VPC nouvellement créés. Les charges de travail dans ces VPC peuvent désormais résoudre le point de terminaison de stockage objet.

Kubernetes 1.37 est disponible (6 septembre 2026)

Section intitulée « Kubernetes 1.37 est disponible (6 septembre 2026) »

Les nouvelles grappes gérées peuvent utiliser 1.37.0, la nouvelle version mineure, ou les versions correctives actualisées 1.36.4 (la version par défaut), 1.35.8 et 1.34.11. Au moment de la publication, les grappes qui utilisaient déjà 1.36.1, 1.35.1 ou 1.34.3 sont restées sur leur version respective jusqu’à leur mise à niveau. Ces versions correctives plus anciennes ne sont plus proposées pour les nouvelles grappes. Mettez à niveau une version mineure à la fois, ou appliquez une mise à niveau corrective au sein de la même version mineure. Faites-le depuis la page Vue d’ensemble du cluster. Disponible dans les deux régions. Voir Créer un cluster Kubernetes pour la liste complète des versions et les informations sur leur cycle de vie.

La facturation postpayée est disponible (1er septembre 2026)

Section intitulée « La facturation postpayée est disponible (1er septembre 2026) »

Choisissez le mode Postpayé pendant l’inscription pour les services horaires et mensuels admissibles, puis payez les factures avec une carte de crédit enregistrée dans Stripe. Choisissez Prépayé ou Postpayé pendant l’inscription. Après la création de votre compte, il reste dans ce mode de facturation pendant toute sa durée de vie. Consultez la facturation.

Forfaits à usage général ci2 de 1 à 96 Go de mémoire vive, forfaits optimisés mémoire cim2 de 8 à 64 Go, configurations Intel personnalisées et capacité de nœuds Kubernetes sur Intel. Voir Types d’instances.

Le SMTP sortant sur le port 25 est désormais bloqué par défaut sur toutes les instances de calcul afin de protéger la réputation d’envoi de la plateforme. Les ports 465 et 587 restent ouverts pour le courriel authentifié. Les clients vérifiés peuvent demander l’accès auprès du soutien. Voir Port SMTP 25.

Kubernetes 1.36 est désormais pris en charge pour les grappes gérées.

Les images Windows Server 2025 sont disponibles pour les instances de calcul.

Les grappes de stockage dédiées à un seul locataire sont disponibles de façon générale.

Images d’applications en un clic pour les instances de calcul.

  • Plus de 20 applications en un clic disponibles, dont cPanel, GitLab, Grafana, WordPress, PostgreSQL, MySQL, MariaDB, MongoDB, Elasticsearch, InfluxDB, Docker, n8n, et plus. Parcourez-les dans la place de marché.

L’outil en ligne de commande officiel de la plateforme. Les entrées ci-dessous reflètent le CHANGELOG.md du CLI sur GitHub.

Planifications d’instantanés et correctifs DNS et de sécurité. Consultez les versions du CLI sur GitHub et la référence du CLI.

  • Créez et gérez des planifications d’instantanés de stockage bloc. zcp snapshot schedule crée, liste, affiche, met à jour, suspend, reprend, supprime et exécute les planifications à la demande. Configurez l’intervalle, le fuseau horaire, la rétention et un instantané immédiat facultatif.
  • Les planifications restent dans la portée sélectionnée. Avant la création, le CLI vérifie la région et le projet du volume cible. Les mises à jour et les actions rejettent les planifications hors de la région et du projet sélectionnés.
  • Correctif de sécurité pour la vérification des certificats. La version du CLI utilise Go 1.26.10 pour corriger une vulnérabilité de vérification des certificats.
  • La sortie par défaut de DNS record-create vérifie la valeur créée. Sans --show-zone, dns record-create renvoie une erreur si l’API accepte la demande, mais que le CLI ne peut pas vérifier la nouvelle valeur. Consultez la zone avec dns show avant de réessayer. --show-zone affiche la zone après une création ou une suppression. Avec ce paramètre, la création ne vérifie pas la valeur créée.
  • La suppression DNS gère désormais les ensembles d’enregistrements. La sortie par défaut est un instantané étiqueté avant suppression. Il ne garantit pas les valeurs supprimées si l’enregistrement change en même temps. Le CLI supprime les valeurs de son instantané initial une par une. Si une suppression échoue, il s’arrête et signale la progression partielle. Le CLI laisse intactes les valeurs ajoutées après la lecture. Un enregistrement déjà absent est traité comme supprimé.
  • Les valeurs CAA doivent être entre guillemets. Utilisez par exemple --content '0 issue "letsencrypt.org"'.

Consultez la version v1.0.1 sur GitHub.

  • L’annulation d’instance et le changement de nom d’hôte utilisent les routes actuelles de l’API. Changer le nom d’hôte redémarre l’instance.
  • Les listes d’instantanés de VM récupèrent toutes les pages signalées. Un échec de pagination sur une page ultérieure renvoie une erreur plutôt qu’une liste partielle.
  • Les forfaits de volume nommés acceptent une capacité explicite. Utilisez --plan avec --size dans zcp volume create. Consultez la référence du CLI.

Sélections distinctes du calcul et du stockage racine, planifications de sauvegarde de VM et listes DNS complètes. Consultez la version v1.0.0 sur GitHub.

  • Les nouvelles instances exigent des forfaits nommés de calcul et de stockage racine. Passez --plan, --blockstorage-plan et --root-disk-size. Les entrées personnalisées de processeur, de mémoire et de disque sont retirées.
  • Les nouvelles grappes Kubernetes utilisent des forfaits distincts pour le plan de contrôle, les nœuds de travail et le stockage racine. La taille du disque racine s’applique à chaque nœud. L’ajout automatique de nœuds reste non vérifié.
  • Les planifications de sauvegarde de VM prennent en charge l’intervalle, le fuseau horaire, la rétention, la pause, la reprise et l’exécution immédiate. Listez les planifications après une erreur everyOtherDay, car la plateforme peut enregistrer cette politique avant de renvoyer l’erreur.
  • Les listes DNS récupèrent toutes les pages signalées. Un échec de pagination sur une page ultérieure renvoie une erreur plutôt qu’une liste partielle.

Contrôles de pagination des règles ACL et mises à jour de sécurité des dépendances. Consultez la version v0.0.31 sur GitHub.

  • Listez les règles ACL sur toutes les pages de l’API. zcp acl rules <vpc-slug> <acl-name-or-id> lit maintenant chaque page de l’API par défaut. Utilisez --max-items, --starting-token et --page-size pour contrôler une liste paginée, ou --no-paginate pour demander une seule page de l’API. La commande renvoie une erreur plutôt que des règles partielles si une page ultérieure échoue. Consultez la référence du CLI.
  • Mises à jour de sécurité des dépendances Go. Le minimum du langage reste Go 1.26.0. La chaîne d’outils sélectionnée est Go 1.26.9 et le CLI met à jour golang.org/x/net vers la v0.60.0.

Forfaits de VM personnalisés, listes de règles d’équilibrage de charge et clés d’accès au stockage objet. Consultez la version v0.0.30 sur GitHub.

  • Créez une VM personnalisée sans forfait catalogue. Omettez --plan, fournissez un nombre de processeurs avec --cpu, puis la mémoire et le disque en Go avec --memory et --disk.
  • Listez les règles d’équilibrage de charge. zcp loadbalancer list-rule <load-balancer-slug> affiche les identifiants de règles nécessaires aux commandes qui attachent des VM.
  • Faites la rotation des clés du stockage objet. zcp object-storage keys liste, crée et révoque les clés d’accès S3 compatibles. Conservez le nouveau secret à la création, mettez à jour vos consommateurs, puis révoquez l’ancienne clé. Chaque espace de stockage prend en charge une ou deux clés actives.
  • Utilisez les identifiants S3 enregistrés pour les commandes S3 directes. Un secret en clair reste visible cinq minutes après la création de la clé. Enregistrez-le, puis définissez ZCP_S3_ACCESS_KEY et ZCP_S3_SECRET_KEY. Le CLI vérifie que la clé d’accès est active pour l’espace de stockage sélectionné avant de se connecter.
  • La sortie du stockage objet suit la réponse actuelle de l’API. L’allocation, l’utilisation et les états inconnus s’affichent maintenant correctement. La sortie de débogage masque aussi les secrets du stockage objet.

Listes de volumes complètes et erreurs de quota VPC plus claires. Consultez la version v0.0.29 sur GitHub.

  • Les listes de volumes récupèrent maintenant chaque page. Le CLI et son SDK Go ne manquent plus les volumes au-delà de la première page de résultats de l’API. Les anomalies de pagination renvoient des erreurs explicites au lieu de résultats partiels ou dupliqués.
  • Les échecs de limite de sous-réseaux VPC indiquent la prochaine étape. Lorsque zcp network create --vpc atteint la limite par défaut de huit sous-réseaux, la commande vous vous invite à demander une augmentation de quota au soutien technique. Réexécutez la commande une fois l’augmentation appliquée. Consultez la référence du CLI.

Correctifs de sécurité, sauvegardes fonctionnelles et un instance ssh qui privilégie l’IP publique. Cette version livre aussi tout ce qui était prêt pour la v0.0.27, jamais publiée. La mise à niveau depuis la v0.0.26 récupère donc les deux ensembles de changements. Voir la version v0.0.28 sur GitHub.

  • La sortie --debug ne divulgue plus votre jeton d’API. La sortie de débogage et les messages d’erreur construits à partir de réponses que le CLI ne peut pas analyser masquent maintenant le jeton, le champ password et les autres champs d’identifiants. golang.org/x/crypto et la chaîne d’outils Go ont été mis à jour pour corriger deux failles de déni de service SSH. Si vous avez partagé une sortie --debug avant cette version, révoquez et régénérez votre jeton.
  • Les sauvegardes fonctionnent de nouveau. backup list décode l’heure planifiée que l’API la renvoie en nombre ou en chaîne. vm-backup delete fonctionne maintenant : la commande envoie une demande d’annulation au lieu du DELETE que l’API rejetait toujours. --interval n’accepte que dailyAt ou hourlyAt. backup list et vm-backup list affichent des colonnes plus claires.
  • instance ssh privilégie l’IP publique. La commande se connecte à l’IP publique quand elle est attribuée et revient à l’IP privée sinon. Les nouvelles options --use-public et --use-private forcent le choix.
  • Correctifs d’affichage : firewall list affiche l’état de chaque règle, dns show affiche - au lieu d’un statut fabriqué, et autoscale policy delete/autoscale condition delete affichent correctement l’identifiant numérique.
  • De la v0.0.27 : instance create prend en charge le type de réseau Vpc et peut rattacher des réseaux existants avec --networks. ip static-nat enable exige maintenant --network. volume attach et volume detach affichent le statut de l’API au lieu d’une ligne vide.
  • Limite connue : object-storage bucket encryption enable est désactivée tant que la passerelle de la région ne prend pas en charge le chiffrement par défaut SSE-S3. status et disable fonctionnent toujours.

Correctifs pour la redirection de ports et les clés SSH.

  • portforward list affiche de nouveau les ports. Les colonnes des ports publics et privés étaient vides, car la réponse était lue à partir de noms de champs incorrects. Elles s’affichent maintenant correctement.
  • portforward create et firewall create n’affichent plus de tableau vide. Les deux commandes créent la règle de manière asynchrone et ne renvoient aucun objet. Elles indiquent donc désormais que la demande a été acceptée et vous dirigent vers la commande list correspondante.
  • ssh-key delete accepte l’identifiant, le nom ou le slug de la clé. La commande n’acceptait auparavant que le slug et rejetait l’identifiant affiché par ssh-key list. La suppression d’une clé inconnue est maintenant une opération sans effet.

Les enregistrements MX fonctionnent désormais depuis le CLI. zcp dns record-create n’envoyait jamais la priorité de l’enregistrement. Chaque création d’un MX échouait donc avec une erreur d’API. La commande reçoit maintenant l’option --priority (de 0 à 65535, obligatoire pour MX). Placez le serveur de courrier dans --content et le nombre de préférence dans --priority. Une préférence de 0 est envoyée correctement. Le CLI refuse --priority pour les autres types et affiche un message clair. Voir Gérer le DNS avec la CLI.

zcp dns record-create --domain examplecom --name @ --type MX --content mail.example.com. --priority 10

La suppression d’une VM libère maintenant son IP publique. instance delete passe par le même flux d’annulation de service que la console. L’adresse attribuée automatiquement est donc libérée au lieu de rester allouée et facturable. L’IP publique d’un répartiteur de charge constitue une ressource distincte et réutilisable. Elle est conservée par défaut. Ajoutez --release-ip à loadbalancer delete pour la libérer aussi.

  • instance list et instance get affichent maintenant l’IP publique, et get affiche le cycle de facturation.
  • ip list et loadbalancer list renvoient tous les résultats au lieu de s’arrêter à la première page.
  • Le CLI et son SDK sont maintenant sous licence Apache 2.0, ce qui permet au fournisseur Terraform / OpenTofu d’intégrer le SDK.

--wait rapporte désormais l’état réel de l’instance. L’état en cache de la plateforme accuse parfois plusieurs minutes de retard sur la réalité, si bien que instance create/start/stop --wait continuait d’attendre une VM déjà démarrée. Le CLI interroge maintenant le point de terminaison d’état en direct, réconcilié avec l’hyperviseur, et rend la main dès que la VM est en marche.

  • Aide corrigée pour instance delete --delete-public-ip : la plateforme ne libère pas encore l’adresse IP publique attribuée automatiquement lors de la suppression (un correctif est en cours côté API). L’option, l’invite et l’aide l’indiquent désormais clairement. Libérez l’adresse manuellement avec zcp ip release <ip-slug> après la suppression.

Les enregistrements DNS s’affichent et se suppriment correctement. Le service DNS modélise les enregistrements comme des ensembles d’enregistrements adressés par nom et type. zcp dns show et record-create affichent maintenant le contenu des enregistrements (ensembles à valeurs multiples inclus), et dns record-delete fonctionne avec --name et --type. Les noms d’enregistrements sont relatifs : le CLI ajoute la zone pour vous.

  • egress create rapporte honnêtement lorsque la plateforme accepte une règle qui n’apparaît jamais dans la liste des règles, au lieu d’échouer avec une erreur de recherche déroutante.
  • La validation automatisée couvre désormais la référence des commandes : un script confronte les 264 exemples au CLI compilé, et nous avons réécrit six sections selon les arborescences réelles des commandes.
  • Les instances L2 fonctionnent et les exemples de instance create s’exécutent tels quels, contribution de @cokerrd, qui signe ici sa première contribution communautaire : la nouvelle option --is-public débloque --network-type L2, et les options requises --network-plan et --storage-category figurent désormais dans chaque exemple.

Les valeurs par défaut du profil s’appliquent maintenant aux commandes de création. Avec des valeurs par défaut configurées via zcp profile add, les commandes de création et de modification n’exigent plus --region/--project. Configurez-les une fois, comme le permettaient déjà les commandes de liste et de lecture.

  • Accompagnement au premier lancement : les installateurs affichent la configuration à copier-coller pour les valeurs par défaut de production (--region yul-1 --project default-9), reprises dans toute la documentation.
  • Nous confrontons chaque slug d’exemple au catalogue en production (modèles, plans, plans de sauvegarde et d’équilibreur de charge), donc les exemples s’exécutent tels quels.

zcp instance delete demande par défaut la libération de l’adresse IP publique attribuée automatiquement, pour ne plus laisser d’adresses allouées et facturées après la suppression de la VM. Passez --delete-public-ip=false pour conserver l’adresse. Les adresses acquises manuellement et les adresses source-NAT ne sont pas touchées. Voir la note de la v0.0.23 : la libération côté plateforme n’est pas encore active.

Gérer l’IAM depuis la CLI : sous-utilisateurs, rôles et permissions. Tout ce qui se trouve dans la section Profil du portail est maintenant scriptable. Ces commandes sont de niveau compte (aucun --region/--project). Voir Rôles et permissions et Utilisateurs.

  • zcp permission list : parcourir le catalogue des permissions (filtrer avec --category) pour trouver les slugs à attribuer aux rôles.
  • zcp role : list, get <slug> (affiche les permissions et les utilisateurs assignés), create, update et delete. --permission est répétable et remplace tout l’ensemble du rôle ; les rôles intégrés owner/service-administrator/service-viewer sont protégés contre les modifications.
  • zcp sub-user : list (avec les filtres --role/--blocked), create, update, block, unblock et delete. Les sous-utilisateurs sont désignés par ID ou courriel ; les nouveaux sous-utilisateurs sont bloqués jusqu’à ce que vous les débloquiez.

Équilibreurs de charge et références d’instances.

  • zcp loadbalancer create fonctionne : la commande envoie désormais la première règle requise (--public-port/--private-port/--algorithm) et peut attacher des serveurs dorsaux avec --vm.
  • Désigner une instance par ID, nom ou slug dans chaque sous-commande instance, avec une erreur claire quand un nom est ambigu ; instance list affiche maintenant la colonne ID et renvoie toutes les VM (la liste est paginée).
  • reboot refuse une VM qui n’est pas Running au lieu de l’ignorer silencieusement, et -o json/-o yaml renvoient des objets complets.

La région et le projet sont désormais requis pour les commandes liées à une région ou à un projet. Les résultats deviennent prévisibles et correspondent à la façon dont la plateforme délimite les ressources. Voir Configuration pour savoir comment les fournir.

  • Définissez-les une fois : zcp profile add demande maintenant une région par défaut (requise) et un projet, comme aws configure. Ensuite, la plupart des commandes n’ont plus besoin de --region/--project, et vous pouvez toujours les remplacer par commande ou avec les variables d’environnement ZCP_REGION/ZCP_PROJECT.
  • Les listes sont limitées à votre région et à votre projet : chaque liste de ressources et de catalogue filtre désormais sa sortie, donc plan, template list, iso list, marketplace list et storage-category list ne mélangent plus les entrées d’autres régions. Les commandes de niveau compte (dns, auth, profile, region, project et les autres commandes de découverte) sont exemptées.

Clés SSH.

  • ssh-key import corrigé : la commande envoie maintenant le projet et la région requis, résolvant une erreur 500 à l’import, et valide le nom de la clé côté client (20 caractères maximum).
  • instance create --ssh-key <name> active désormais correctement l’authentification par clé SSH. Importez d’abord la clé avec ssh-key import. Les noms de clé et le contenu de la clé publique doivent être uniques.

Erreurs plus claires.

  • Les erreurs de validation de l’API affichent maintenant le détail au niveau du champ (par exemple, public_key: The public key has already been taken.) au lieu d’un message générique.

Stockage objet : l’ensemble des fonctionnalités S3 dans le CLI. Plusieurs sont disponibles uniquement via le CLI (ou un SDK S3) aujourd’hui, pas encore dans l’interface web. Voir le guide CLI du stockage objet pour la référence complète et un tableau comparatif interface vs CLI.

  • Flux de gestion des versions : lister les versions et les marqueurs de suppression, télécharger ou supprimer une version précise, et restore (restaurer).
  • Télécharger des objets dans un fichier local (object download).
  • Politiques de compartiment : lire, définir (depuis un fichier JSON) ou supprimer la politique S3 brute d’un compartiment.
  • Étiquetage des compartiments et objets ; chiffrement par défaut (SSE-S3) ; règles de cycle de vie (expirer versions courantes/anciennes et téléversements incomplets) ; règles CORS.
  • URL pré-signées : liens de téléchargement et de téléversement à durée limitée, sans identifiants, même sur un compartiment privé.
  • Copie / déplacement côté serveur, stat d’objet (métadonnées complètes) et put --metadata.
  • Rendre les compartiments publics/privés, vider un compartiment et nettoyer les téléversements incomplets.
  • Création simplifiée : zcp plan object-storage liste les plans, et create --plan déduit la catégorie de stockage.

Ergonomie du CLI.

  • Erreurs d’arguments claires : chaque commande indique ce qui manque, la syntaxe et un exemple.
  • Les sous-commandes inconnues génèrent une erreur (code de sortie non nul) au lieu d’afficher silencieusement l’aide.
  • Fournisseur infonuagique détecté automatiquement : enregistré dans votre profil lors de zcp auth validate ; vous n’avez plus à passer --cloud-provider.
  • -o yaml est maintenant pris en charge pour la sortie des politiques, du cycle de vie et de CORS.
  • Sous-réseaux VPC (tiers) : créer un réseau comme sous-réseau VPC avec network create --vpc, et attacher une liste de contrôle d’accès (ACL) à la création avec --acl.
  • Règles d’ACL réseau : gestion complète : acl rules, acl create-rule, acl update-rule (sur place), acl delete-rule, ainsi que acl delete pour les listes d’ACL. --cidr accepte des listes séparées par des virgules.
  • network get : afficher le CIDR, l’état, l’appartenance au VPC et l’ACL d’un réseau.
  • plan network : lister les plans réseau (les valeurs de --network-plan).
  • Corrections : vpc get/create affichent maintenant le CIDR/l’état, les tableaux de plans incluent une colonne SLUG ; vpc delete attend la fin de l’opération ; meilleure gestion du cas « déjà supprimé ».
  • VPN : nouvelles options Diffie-Hellman et Perfect Forward Secrecy IKE/ESP (--ike-dh, --esp-dh, --esp-pfs) sur la création/mise à jour de passerelle client ; la configuration VPN complète est maintenant renvoyée de façon fiable.
  • ip allocate --project : attribuer une IP à un projet précis dès l’allocation.
  • Corrections : les commandes de passerelle VPN/client et de mise à jour VPC/réseau ne renvoient plus de champs vides ; effacer une --description fonctionne désormais.
  • Infrastructure as code : les paquets d’API du CLI sont désormais importables par des modules Go externes, ce qui permet le fournisseur Terraform / OpenTofu. Le comportement du CLI est inchangé.
  • kubernetes upgrade-version : mettre à niveau la version Kubernetes d’une grappe en cours d’exécution (--version v1.x.y) ; la version adaptée à la région de la grappe est résolue automatiquement.
  • instance create --user-data / --user-data-file : fournir un script cloud-init / de démarrage en ligne ou depuis un fichier à la création d’une VM.
  • Corrections : l’IP privée d’une instance s’affiche correctement, et instance get réessaie pendant le bref intervalle suivant la création ; instance create --blockstorage-plan est maintenant optionnel (attribué automatiquement).
  • Stockage objet introduit : gérer des instances de stockage compatibles S3 (lister, obtenir, créer, supprimer, redimensionner), des compartiments (lister, obtenir, créer, supprimer) et des objets (lister, obtenir, téléverser, supprimer), plus credentials pour afficher les clés d’accès S3.
  • Commandes de suppression ajoutées pour les instances, réseaux, volumes, instantanés, sauvegardes, VPC et sauvegardes de VM (instance delete --force pour purge immédiate).
  • Kubernetes : scale des nœuds de travail (avec --wait) et get-config (télécharger le kubeconfig).
  • Équilibreur de charge : delete-rule et detach-vm.
  • Variables d’environnement : ZCP_PROJECT, ZCP_REGION, ZCP_CLOUD_PROVIDER, ZCP_OUTPUT, ZCP_DEBUG réduisent les options répétitives dans les scripts et l’intégration continue.
  • Mode zéro configuration : fonctionner avec seulement ZCP_BEARER_TOKEN et ZCP_API_URL, sans fichier de configuration ; ZCP_PROFILE sélectionne le profil actif.
  • Création de tiers/sous-réseaux VPC confirmée de bout en bout, avec l’ajout des options --cloud-provider, --region et --project aux commandes de création de réseau, VPC, routeur virtuel, DNS, VPN et autoscale.
  • Une feuille de route publiée documentant ce qui fonctionne, ce qui s’en vient et ce qui est en attente.
  • Nouvelles commandes : region list, profile-info (gestion du profil utilisateur), vm-backup, et des commandes de découverte : cloud-provider list, server list, currency list, billing-cycle list, storage-category list.
  • Nettoyage : suppression des commandes héritées qui visaient des points de terminaison retirés.

Reconstruit sur l’API actuelle de la plateforme infonuagique ZSoftly avec authentification par jeton Bearer et un format de réponse cohérent. Un grand ensemble de groupes de commandes est arrivé :

  • DNS, projets, surveillance, facturation, support, autoscale, tableau de bord, plans, boutique, place de marché, produits, ISO, groupes d’affinité et sauvegardes.
  • Opérations VM : redémarrer, réinitialiser, étiquettes, changer nom d’hôte/mot de passe/plan/OS, ajouter un réseau, modules complémentaires.
  • --auto-approve / -y global pour ignorer les invites de confirmation en automatisation.
  • Corrections de fiabilité : les commandes de suppression vérifient que la ressource a bien disparu ; la liste des volumes déduplique les entrées ; messages plus clairs pour les instantanés sur volumes détachés et les comptes vides.
  • Réseaux de tier VPC : vpc create-network et vpc update-network.
  • Ajout de host list, resource quota, des options de tier VPC sur network create, et d’une suite de tests d’intégration complète.
  • Zone par défaut par profil : définissez-la une fois et cessez de taper --zone à chaque commande ; une option explicite a toujours priorité.
  • Version initiale du CLI zcp : 28 commandes de premier niveau couvrant le calcul, le stockage, le réseau, la sécurité, Kubernetes et la facturation.
  • Profils nommés avec stockage sécurisé des identifiants (0600), une option --wait pour les opérations asynchrones, instance ssh, la complétion (bash/zsh/fish/PowerShell), une option --pager, et des binaires multiplateformes (Linux/macOS/Windows, amd64/arm64) avec des installateurs en une ligne.

Gérez l’infrastructure ZCP comme du code avec le fournisseur officiel, publié sous zsoftly/zcp sur le registre OpenTofu et le registre Terraform. Le code source se trouve sur github.com/zsoftly/terraform-provider-zcp.

Version actuelle du fournisseur. Utilisez zcp_volume_snapshot_schedule pour gérer des instantanés récurrents de stockage bloc comme du code. Consultez les versions du fournisseur sur GitHub.

  • Définissez la planification, la rétention, la portée et l’état en pause dans la configuration. La ressource prend en charge les planifications horaires, quotidiennes, hebdomadaires et mensuelles, un instantané immédiat facultatif et l’importation.
  • Importez les planifications sans remplacement inutile. La première application enregistre la valeur configurée de immediate. Modifier name, description ou une valeur immediate déjà enregistrée remplace la planification. Supprimez les instantanés conservés avant de supprimer ou de remplacer une planification.

Consultez la version v1.0.0 et le guide de mise à niveau (en anglais).

  • Les nouvelles instances exigent plan, blockstorage_plan et root_disk_size. Le fournisseur rejette les nouvelles configurations personnalisées de processeur, de mémoire et de disque. L’état des forfaits personnalisés existants reste lisible et destructible.
  • Les nouvelles grappes Kubernetes utilisent des forfaits fixes distincts pour les nœuds du plan de contrôle, les nœuds de travail et le stockage racine. Passer à cette forme remplace la grappe. Le fournisseur enregistre les bornes de mise à l’échelle automatique demandées sans confirmer une montée en charge immédiate.
  • zcp_vm_backup_schedule gère les politiques récurrentes. Il prend en charge l’intervalle, le fuseau horaire, la rétention, l’état en pause, l’importation et la portée de la politique. Le fournisseur rejette everyOtherDay avant que la plateforme puisse l’enregistrer et renvoyer une erreur.
  • Les recherches DNS paginent par slug, les volumes nommés acceptent un forfait et une capacité, et la mise à jour du nom d’une instance passe par un changement de nom d’hôte. Un changement de nom d’hôte peut redémarrer une instance en cours d’exécution ou démarrer une instance arrêtée.

Forfaits de VM personnalisés, clés de stockage objet et correctifs d’état des équilibreurs de charge. Consultez la version v0.3.0 et le journal des modifications associé à la version pour la liste complète des changements.

  • Créez des instances à forfait personnalisé. zcp_instance accepte cpu, memory_gb et disk_gb ensemble lorsque vous omettez plan. Un forfait catalogue fixe continue d’utiliser plan.
  • Gérez les clés de stockage objet comme des ressources. zcp_object_storage_key crée, importe et révoque des clés d’accès S3. Son attribut api_secret est sensible et reste dans l’état Terraform après que l’API cesse de divulguer le secret en clair. Les clés révoquées sont retirées de l’état. Protégez l’accès à l’état en conséquence.
  • Configurez les paramètres des compartiments S3 avec des identifiants explicites. Les ressources de configuration de compartiment utilisent ZCP_S3_ACCESS_KEY et ZCP_S3_SECRET_KEY du processus du fournisseur.
  • Lisez toutes les règles ACL. Le fournisseur utilise le SDK du CLI v0.0.31. Ce SDK lit chaque page de règles ACL et signale l’échec d’une page ultérieure au lieu de traiter les résultats manquants comme absents.
  • Recherchez des équilibreurs de charge et rafraîchissez les identifiants de règles. data.zcp_load_balancer expose les identifiants de règles pour les attachements. Les ressources d’équilibreur de charge se rafraîchissent par le point de terminaison de détail. Elles effacent un identifiant de règle initial lorsque l’API ne renvoie plus cette règle. La destruction accepte aussi un équilibreur de charge ou un attachement que l’API confirme déjà absent.
  • Lisez l’allocation actuelle du stockage objet. Les lectures du stockage objet acceptent le format actuel de la réponse de l’API sur la taille du stockage.
  • Appliquez les mises à jour de sécurité des dépendances. Le fournisseur sélectionne Go 1.26.9 et utilise golang.org/x/net v0.60.0.

Mettez à jour la contrainte du fournisseur, puis exécutez terraform init -upgrade ou tofu init -upgrade :

terraform {
required_providers {
zcp = {
source = "zsoftly/zcp"
version = "~> 0.3.0"
}
}
}

Configuration de stockage objet, réseau d’instances enrichi et recherches de volumes. Consultez la version v0.2.0 et le journal des modifications associé à la version pour la liste complète des modifications.

  • Gérez les paramètres des compartiments de stockage objet comme du code. Les nouvelles ressources zcp_object_storage_bucket_versioning, zcp_object_storage_bucket_policy, zcp_object_storage_bucket_tagging, zcp_object_storage_bucket_lifecycle et zcp_object_storage_bucket_cors gèrent les paramètres respectifs de la passerelle compatible S3. Le fournisseur obtient les identifiants de la passerelle en interne et ne les expose pas comme attributs de ressources.
  • Rattachez les instances aux VPC et à plusieurs réseaux. zcp_instance prend maintenant en charge le type de réseau Vpc et plusieurs réseaux, conformément aux capacités de création d’instances du CLI v0.0.27.
  • Recherchez les volumes et les disques attachés. La nouvelle source de données zcp_volume recherche un volume existant. data.zcp_instance expose maintenant root_volume et volumes.
  • Lisez de nouveau les sauvegardes de volumes. zcp_volume_backup décode maintenant correctement le format de la liste de sauvegardes de la plateforme.
  • Détruisez les planifications de sauvegarde VM. zcp_vm_backup détruit les planifications via le flux d’annulation de facturation au lieu d’une suppression directe refusée.
  • Validez les intervalles de sauvegarde avant l’application. zcp_vm_backup et zcp_volume_backup n’acceptent que dailyAt ou hourlyAt pour interval, comme la plateforme.
  • Détectez les IP publiques de VPC identifiables. zcp_firewall_rule échoue dès qu’il identifie une IP publique de VPC. Il n’attend plus l’expiration du délai pour une règle que la plateforme n’appliquera pas.
  • Corrigez l’ordre de création d’IP publique dans un VPC. zcp_ip_address explique qu’un niveau réseau VPC doit exister d’abord et indique quand ajouter depends_on.
  • Les listes de volumes sont complètes. Le fournisseur utilise maintenant le SDK du CLI zcp v0.0.29, qui récupère chaque page d’une liste de volumes.

Mettez à niveau votre contrainte de fournisseur, puis initialisez de nouveau :

terraform {
required_providers {
zcp = {
source = "zsoftly/zcp"
version = "~> 0.2.0"
}
}
}

Exécutez terraform init -upgrade avec Terraform ou tofu init -upgrade avec OpenTofu. Si OpenTofu indique qu’aucune version ne correspond, attendez que son registre liste v0.2.0, puis réessayez.

La redirection de port et les règles de pare-feu enregistrent maintenant leur véritable ID. zcp_port_forward et zcp_firewall_rule stockaient un ID vide parce que le point de terminaison de création ne renvoie aucun objet de règle. Terraform les recréait donc à chaque application. Les deux ressources recherchent maintenant la règle après sa création, la font correspondre selon le protocole et les ports, puis enregistrent le véritable ID. Les plans restent ainsi stables.

  • Passage du SDK du CLI zcp à la v0.0.26, qui corrige le décodage des ports des règles de redirection de port.
  • Sécurité : mise à niveau de golang.org/x/text pour corriger GO-2026-5970, une boucle infinie accessible par la ressource de répartiteur de charge.

Les enregistrements MX dans zcp_dns_record. Un nouvel argument priority, de 0 à 65535, définit le nombre de préférence. Placez le serveur de courrier dans content. La priorité est obligatoire pour MX et refusée pour tous les autres types. Ces deux règles sont vérifiées pendant la planification afin qu’une erreur survienne avant l’application. Cette version repose sur le SDK du CLI zcp v0.0.25 et a été vérifiée avec l’API DNS en production.

  • La valeur SRV a été retirée des valeurs de type documentées. L’API DNS refuse les enregistrements SRV et LOC. La présentation de SRV induisait donc en erreur. type demeure une chaîne libre.

Les destructions libèrent les IP publiques attribuées automatiquement. zcp_instance et zcp_load_balancer libèrent ces adresses au moyen du flux d’annulation de service. Une destruction ne laisse donc plus d’adresse facturable. Définissez assign_public_ip = false pour créer une instance sans IP publique. Cette version passe aussi au SDK du CLI zcp v0.0.24, qui parcourt toutes les pages des listes d’IP publiques et de répartiteurs de charge.

Première version publique, disponible sur les deux registres. 38 ressources et 12 sources de données couvrent tout ce que le CLI zcp prend en charge : instances, volumes, instantanés et sauvegardes, VPC et réseaux, règles de pare-feu et de sortie, équilibreurs de charge, mise à l’échelle automatique, grappes Kubernetes, DNS, stockage objet, VPN et gouvernance de compte. Chaque ressource prend en charge terraform import, et nous signons chaque version publiée.

terraform {
required_providers {
zcp = {
source = "zsoftly/zcp"
version = "~> 0.1"
}
}
}

Définissez ZCP_BEARER_TOKEN dans votre environnement, puis exécutez terraform init ou tofu init. Générez le jeton dans la console sous Compte → Clés API.

Interroger la documentation ZCP

Posez une question et choisissez un assistant. Il s’ouvre dans un nouvel onglet et lit cette page et toute la documentation ZCP, pour répondre à partir de nos docs.

Exemples de questions

Demander avec

Votre question est envoyée à l’assistant choisi, selon ses propres conditions.