Azure Command-Line Interface
Перейти к файлу
microsoft-github-policy-service[bot] 9ba64b33f6
Auto merge mandatory file pr
This pr is auto merged as it contains a mandatory file and is opened for more than 10 days.
2022-11-28 19:08:23 +00:00
.azure-pipelines/templates {pylint} Disable more checkers to comply with pylint 2.8.0 (#17861) 2021-05-07 13:58:10 +08:00
.github update (#18190) 2021-05-24 13:26:54 +08:00
.ionide {monitor} fix dynamic metric alert creation with a single scope (#16225) 2020-12-21 14:36:20 +08:00
.vscode [Service Fabric] Add managed application cli commands (#17404) 2021-04-02 10:40:23 +08:00
bin Flake8 (#7695) 2018-10-29 11:29:26 -07:00
build_scripts [Packaging] Bump bundled python to `3.8.9` and remove more network SDK APIs for MSI (#17816) 2021-04-29 10:00:33 +08:00
doc {Doc} Update track_2_migration_roadmap.md (#18206) 2021-05-25 15:42:47 +08:00
scripts [Service Fabric] breaking changes deprecate commands and update sf managed sdk (#18056) 2021-05-20 16:17:04 +08:00
src {Pylint} Fix `self-assigning-variable` (#18119) 2021-05-25 17:34:15 +08:00
tools {Misc} Drop `from __future__ import print_function` (#17364) 2021-03-24 11:10:34 +08:00
.coveragerc Update test scripts and mechanisms 2017-07-05 14:34:22 -07:00
.dockerignore Do not copy tests dirs in docker image (#12208) 2020-02-21 09:48:05 +08:00
.flake8 {Pylint} Ignore `tests` folders (#18003) 2021-05-13 14:04:25 +08:00
.gitattributes {Packaging/MSI} Use embeddable python for MSI (#14300) 2020-07-30 19:02:32 +08:00
.gitignore move propagate_env_change.exe to storage account (#12401) 2020-03-04 10:04:48 +08:00
.snapcraft.yaml {Package} Migrate CLI packaging system to PEP420 (#14372) 2020-08-19 17:02:46 +08:00
CONTRIBUTING.rst {Doc} Fix broken link in CONTRIBUTING.rst (#16704) 2021-01-28 22:19:25 +08:00
Dockerfile bump python to 3.8.9 in docker (#17840) 2021-04-27 13:53:18 +08:00
Dockerfile.nanoserver {Package} Migrate CLI packaging system to PEP420 (#14372) 2020-08-19 17:02:46 +08:00
Dockerfile.spot {Package} Migrate CLI packaging system to PEP420 (#14372) 2020-08-19 17:02:46 +08:00
LICENSE refactor LICENSE.txt to make github even more happier (#8826) 2019-03-20 14:43:51 -07:00
MANIFEST.in Create all component packages 2016-03-25 14:58:49 -07:00
NOTICE.txt bump jinja2 (#16793) 2021-02-04 13:23:50 +08:00
README.md {Doc} Add instructions to write and run commands in VS Code with the Azure CLI Tool (#17305) 2021-03-16 18:38:43 +08:00
SECURITY.md Microsoft mandatory file 2022-07-25 19:08:48 +00:00
az.completion [Core] Support filename and environment variable completion (#11817) 2020-01-15 10:52:57 +08:00
azure-cli.pyproj [Service Fabric] Add managed cluster and node type commands (#15101) 2020-09-14 09:45:07 +08:00
azure-cli.sln [KeyVault] KeyVault Round 3 Commands (#1215) 2016-11-04 09:56:37 -07:00
azure-cli2017.pyproj [Media] Updating AMS extension to 2020 sdk (#16492) 2021-02-24 13:07:30 +08:00
azure-cli2017.sln Create VS2017 version of proj file. (#2450) 2017-03-09 13:00:52 -08:00
azure-pipelines-full-tests.yml [Packaging] Support Python 3.9 (#17368) 2021-05-12 16:16:54 +08:00
azure-pipelines.yml [Packaging] Support Python 3.9 (#17368) 2021-05-12 16:16:54 +08:00
linter_exclusions.yml aks: add encryption-at-host command (#17813) 2021-04-29 10:18:53 +08:00
nose.cfg Fix #2513: Update logging effect in automation (#3437) 2017-05-24 09:00:14 -07:00
pylintrc {Pylint} Fix `self-assigning-variable` (#18119) 2021-05-25 17:34:15 +08:00
requirements.txt {Packaging} Bump setuptools to 52.0.0 (#16655) 2021-03-01 10:41:16 +08:00

README.md

Microsoft Azure CLI

Python Build Status Slack

A great cloud needs great tools; we're excited to introduce Azure CLI, our next generation multi-platform command line experience for Azure.

Take a test run now from Azure Cloud Shell!

Installation

Please refer to the install guide for detailed install instructions.

A list of common install issues and their resolutions are available at install troubleshooting.

Developer installation (see below)

Usage

$ az [ group ] [ subgroup ] [ command ] {parameters}

Get Started

Please refer to the "get started" guide for in-depth instructions.

For usage and help content, pass in the -h parameter, for example:

$ az storage -h
$ az vm create -h

Highlights

Here are a few features and concepts that can help you get the most out of the Azure CLI.

Azure CLI Highlight Reel

The following examples are showing using the --output table format, you can change your default using the az configure command.

Tab completion

We support tab-completion for groups, commands, and some parameters

# looking up resource group and name
$ az vm show -g [tab][tab]
AccountingGroup   RGOne  WebPropertiesRG

$ az vm show -g WebPropertiesRG -n [tab][tab]
StoreVM  Bizlogic

$ az vm show -g WebPropertiesRG -n Bizlogic

Query

You can use the --query parameter and the JMESPath query syntax to customize your output.

$ az vm list --query "[?provisioningState=='Succeeded'].{ name: name, os: storageProfile.osDisk.osType }"
Name                    Os
----------------------  -------
storevm                 Linux
bizlogic                Linux
demo32111vm             Windows
dcos-master-39DB807E-0  Linux

Exit codes

For scripting purposes, we output certain exit codes for differing scenarios.

Exit Code Scenario
0 Command ran successfully.
1 Generic error; server returned bad status code, CLI validation failed, etc.
2 Parser error; check input to command line.
3 Missing ARM resource; used for existence check from show commands.

Common scenarios and use Azure CLI effectively

Please check Tips for using Azure CLI effectively. It describes some common scenarios:

More samples and snippets

For more usage examples, take a look at our GitHub samples repo or https://docs.microsoft.com/cli/azure/overview.

Write and run commands in Visual Studio Code

With the Azure CLI Tools Visual Studio Code extension, you can create .azcli files and use these features:

  • IntelliSense for commands and their arguments.
  • Snippets for commands, inserting required arguments automatically.
  • Run the current command in the integrated terminal.
  • Run the current command and show its output in a side-by-side editor.
  • Show documentation on mouse hover.
  • Display current subscription and defaults in status bar.
  • To enable IntelliSense for other file types like .ps1 or .sh, see microsoft/vscode-azurecli#48.

Azure CLI Tools in Action

Data Collection

The software may collect information about you and your use of the software and send it to Microsoft. Microsoft may use this information to provide services and improve our products and services. You may turn off the telemetry as described in the repository. There are also some features in the software that may enable you and Microsoft to collect data from users of your applications. If you use these features, you must comply with applicable law, including providing appropriate notices to users of your applications together with a copy of Microsoft's privacy statement. Our privacy statement is located at https://go.microsoft.com/fwlink/?LinkID=824704. You can learn more about data collection and use in the help documentation and our privacy statement. Your use of the software operates as your consent to these practices.

Telemetry Configuration

Telemetry collection is on by default. To opt out, please run az config set core.collect_telemetry=no to turn it off.

Reporting issues and feedback

If you encounter any bugs with the tool please file an issue in the Issues section of our GitHub repo.

To provide feedback from the command line, try the az feedback command.

Developer installation

Docker

We maintain a Docker image preconfigured with the Azure CLI. See our Docker tags for available versions.

$ docker run -u $(id -u):$(id -g) -v ${HOME}:/home/az -e HOME=/home/az --rm -it mcr.microsoft.com/azure-cli:<version>

Edge builds

If you want to get the latest build from the dev branch, you can use our "edge" builds.

You can download the latest builds by following the links below:

Package Link
MSI https://aka.ms/InstallAzureCliWindowsEdge
Homebrew Formula https://aka.ms/InstallAzureCliHomebrewEdge
Ubuntu Xenial Deb https://aka.ms/InstallAzureCliXenialEdge
Ubuntu Bionic Deb https://aka.ms/InstallAzureCliBionicEdge
RPM https://aka.ms/InstallAzureCliRpmEdge

You can easily install the latest Homebrew edge build with the following command:

brew install $(curl -Ls -o /dev/null -w %{url_effective} https://aka.ms/InstallAzureCliHomebrewEdge)

You can install the edge build on Ubuntu Xenial with the following command:

curl -Ls -o azure-cli_xenial_all.deb https://aka.ms/InstallAzureCliXenialEdge && dpkg -i azure-cli_xenial_all.deb

And install the edge build with rpm package on CentOS/RHEL/Fedora:

rpm -ivh --nodeps $(curl -Ls -o /dev/null -w %{url_effective} https://aka.ms/InstallAzureCliRpmEdge)

Here's an example of installing edge builds with pip3 in a virtual environment. The --upgrade-strategy=eager option will install the edge builds of dependencies as well.

$ python3 -m venv env
$ . env/bin/activate
$ pip3 install --pre azure-cli --extra-index-url https://azurecliprod.blob.core.windows.net/edge --upgrade-strategy=eager

To upgrade your current edge build pass the --upgrade option. The --no-cache-dir option is also recommended since the feed is frequently updated.

$ pip3 install --upgrade --pre azure-cli --extra-index-url https://azurecliprod.blob.core.windows.net/edge --no-cache-dir --upgrade-strategy=eager

The edge build is generated for each PR merged to the dev branch as a part of the Azure DevOps Pipelines.

Get builds of arbitrary commit or PR

If you would like to get builds of arbitrary commit or PR, see:

Try new features before release

Developer setup

If you would like to setup a development environment and contribute to the CLI, see:

Configuring Your Machine

Authoring Command Modules

Contribute code

This project has adopted the Microsoft Open Source Code of Conduct.

For more information see the Code of Conduct FAQ or contact opencode@microsoft.com with any additional questions or comments.

If you would like to become an active contributor to this project please follow the instructions provided in Microsoft Open Source Guidelines.