Annonce relative à l'interface de ligne de commande Azure (Azure CLI) 2.0 - Préversion

Publié le 26 septembre, 2016

Senior Program Manager, VS and .NET PM

Face à la croissance continue d’Azure, de nombreux clients utilisent nos outils en ligne de commande, notamment les outils Windows PowerShell et notre interface de ligne de commande (CLI) Azure XPlat.  Nous avons reçu de nombreux commentaires sur l'excellente productivité offerte par les outils en ligne de commande, de même que des remarques formulées notamment par des clients utilisant Linux à propos de notre interface de ligne de commande XPlat et de sa mauvaise intégration aux outils en ligne de commande Linux courants, ainsi que des difficultés rencontrées en termes d'installation et de maintenance de l'environnement Node (sur lequel il était basé).

Ces commentaires, de même que l'évolution du modèle de configuration basé sur Azure Resource Manager, nous ont permis d'améliorer l'expérience d'interface de ligne de commande pour Azure. Cette nouvelle interface de ligne de commande est disponible dès aujourd'hui. Nous l'avons appelée Ligne de commande Azure (Azure CLI) 2.0 - Préversion. Elle est disponible sous forme de version bêta sur GitHubEssayez-la et faites-nous part de vos commentaires !

Si les coulisses de ce projet vous intéressent, lisez ce qui suit !

Qu'est-ce qu'une interface de ligne de commande moderne ?

Lors du développement de nos outils en ligne de commande de nouvelle génération, nous avons rapidement adopté certains principes directeurs en matière d'interface de ligne de commande :

Elle doit être naturelle et facile à installer : Quelle que soit votre plateforme, notre interface de ligne de commande doit être installée à l'emplacement souhaité, qu'il s'agisse de « brew install azure-cli » sur un MacBook ou de « apt-get install azure-cli » pour BASH sur Windows (à venir).

Elle doit être cohérente avec les outils POSIX : Le succès des outils en ligne de commande découle de la facilité et de la prévisibilité inhérentes à la mise en œuvre de normes bien définies.

Elle doit faire partie de l'écosystème open source : La valeur de l'open source vient de la communauté et des excellentes fonctionnalités et intégrations qu'elle développe, des solutions DevOps (Chef, Ansible) aux langages de requête (JMESPath).

Elle doit être s'inscrire dans la durée et rester à jour sur Azure : Dans une ère de livraison continue, déployer un service ne suffit pas. Il nous faut disposer d'outils à jour permettant à nos clients de profiter immédiatement de ce service. 

En appliquant ces principes, nous nous sommes rendus compte que la portée des améliorations allait bien au-delà de quelques changements cassants et, forts des commentaires formulés sur notre interface de ligne de commande XPlat, il nous a semblé logique de tout repenser. Ce choix nous a permis de nous concentrer exclusivement sur notre gestion ARM et de répondre à un point qui revenait souvent dans les commentaires : le basculement en « mode config » ASM/ARM de notre interface de ligne de commande XPlat.

Présentation d'Azure CLI 2.0 - Préversion

Nous travaillons actuellement sur la prise en charge des principaux services Azure, mais nous aimerions vous présenter nos outils en ligne de commande de nouvelle génération : Azure CLI 2.0 - Préversion.

AzBlogAnimation4

Commencez sans plus attendre avec une installation rapide et facile, indépendamment de la plateforme

Vos outils doivent être faciles d’accès et simples à installer, en matière d'opérations comme de développement. Azure CLI 2.0 - Préversion sera bientôt disponible sur les principaux services de package de plateforme.

Vous aimez utiliser des outils en ligne de commande tels que GREP, AWK, JQ ?  Nous aussi !

Les outils en ligne de commande sont plus productifs lorsqu'ils fonctionnent parfaitement ensemble. L'interface de ligne de commande Azure CLI 2.0 - Préversion offre des sorties nettes par canal pour interagir avec les outils en ligne de commande courants, tels que grep, cut et jq.

Renforcez votre maîtrise d'Azure avec des modèles cohérents et une aide à portée de main

Opérer une transition vers le cloud peut paraître fastidieux en raison de tous les outils et options disponibles, mais l'interface de ligne de commande Azure CLI 2.0 - Préversion contribue à faciliter cette transition, en vous proposant des exemples et du contenu pédagogique pour les commandes courantes.  Nous avons complètement repensé notre système d'aide avec une aide intégrée à l'outil.

Dans les prochaines versions, nous élargirons notre documentation pour inclure des pages de manuel détaillées et une documentation en ligne dans des référentiels courants.

Moins vous saisissez de texte, plus vous êtes productif

Nous proposons la saisie semi-automatique via la touche Tab pour les commandes et les noms des paramètres. Cela facilite la recherche de la commande ou du paramètre qui convient, sans interrompre votre flux. Pour les paramètres incluant des choix connus, ainsi que les groupes et noms de ressources, vous pouvez utiliser la saisie semi-automatique via la touche Tab pour rechercher les valeurs appropriées.

Adopter Azure CLI 2.0 - Préversion

Qu'est-ce que cela signifie pour les utilisateurs de l'interface de ligne de commande XPlat CLI ? Bonne question ! Voici quelques réponses à certaines questions que nous avons anticipées :

Vous n'avez rien à modifier : L'interface de ligne de commande XPlat continuera de fonctionner, tout comme les scripts. Nous continuons de prendre en charge et d'ajouter de nouvelles fonctionnalités à l'interface de ligne de commande.

Vous pouvez installer et utiliser les deux interfaces de ligne de commande côte à côté : Les informations d'identification et certaines valeurs par défaut, telles que les abonnements par défaut, sont partagées entre les interfaces de ligne de commande. Vous pouvez ainsi essayer CLI 2.0 - Préversion, sans toucher à l'installation de l'interface de ligne de commande Azure XPlat existante. 

Non, le mode ASM/Classique n'est pas pris en charge dans Azure CLI 2.0 - Préversion : Nous avons utilisé des primitives ARM, telles que les groupes de ressources et les modèles. Le mode ASM/Classique continuera d'être pris en charge par l'interface de ligne de commande XPlat.

Oui, nous vous fournirons de l'aide : Bien qu'il ne nous soit pas possible de convertir vos scripts, nous avons créé un guide de conversion en ligne, comprenant un tableau de conversion qui mappe les commandes entre les CLI.

Remarque : le partage des informations d'identification avec l'interface de ligne de commande Azure XPlat nécessite la version 0.10.5 ou ultérieure.

Vous avez envie d'essayer ?

Nous sommes sur GitHub, mais aussi sur Docker : obtenez la dernière version en exécutant « $ docker run -it azuresdk/azure-cli-python ».

Pour nous faire part de vos commentaires, saisissez « az feedback » dans l'interface de ligne de commande !

Vous serez présent à la conférence Microsoft Ignite (du 26 au 30 septembre 2016, à Atlanta, en Géorgie) ? Arrêtez-vous au stand Outils Azure pour une démonstration ou participez à notre session intitulée :  Concevoir des applications pour le cloud qui fonctionnent avec les outils open source et flexibles pour Azure.

Forum Aux Questions

Qu'est-ce que cela signifie pour les utilisateurs de l'interface de ligne de commande XPlat ?

L'interface de ligne de commande XPlat continuera de fonctionner, tout comme les scripts. Toutes deux prennent en charge une commande de niveau supérieur différente (« azur » et « az ») et vous pouvez les utiliser conjointement pour des scénarios spécifiques. Les informations d'identification et certains paramètres par défaut (tels que l'abonnement par défaut) sont partagés entre les interfaces de ligne de commande, ce qui vous permet d'essayer Azure CLI 2.0 - Préversion sans toucher à l'installation de votre interface de ligne de commande existante. Nous continuons de prendre en charge et d'ajouter de nouvelles fonctionnalités à l'interface de ligne de commande XPlat.

Je dispose de scripts appelant la commande « azure ». Continueront-ils de fonctionner avec le nouvel outil ?

Les scripts existants créés avec l'interface de ligne de commande Azure XPlat (commande « azure ») ne fonctionneront pas avec Azure CLI 2.0 - Préversion. Bien que la plupart des commandes aient des conventions d'affectation de noms similaires, la structure des entrées et des sorties a changé. Pour la majorité des clients, cela implique de transformer les scripts en « solutions de contournement » requises par la l'interface de ligne de commande Azure XPlat, ou de s'appuyer sur la coexistence des deux outils.

Envisagez-vous d'arrêter l'interface de ligne de commande Azure XPlat ? Quand Azure CLI 2.0 ne sera-t-elle plus en préversion ?

L'interface de ligne de commande XPlat actuelle restera disponible et prise en charge, car elle est nécessaire pour tous les services basés sur le mode ASM/Classique. La nouvelle interface de ligne de commande Azure CLI 2.0 restera en préversion le temps d'obtenir suffisamment de commentaires pour l'améliorer et proposer une version finale, dont la date reste à déterminer.

La prise en charge de .NET Core et PowerShell a-t-elle évolué dans cette version ?

La prise en charge de .NET Core et PowerShell reste inchangée dans cette version. Ils continueront d'être disponibles et pleinement pris en charge. Nous pensons que les interfaces de ligne de commande PowerShell et POSIX s'adressent à différents utilisateurs et offrent le meilleur choix possible pour les scénarios d'automatisation et de script à partir de la ligne de commande. Ces deux options sont disponibles sur plusieurs plateformes.  Ces deux options sont en open source et nous investissons dans chacune d'entre elles.