Metadata-Version: 2.4
Name: c7n_azure
Version: 0.7.48
Summary: Cloud Custodian - Azure Support
Project-URL: homepage, https://cloudcustodian.io
Project-URL: repository, https://github.com/cloud-custodian/cloud-custodian
Project-URL: documentation, https://cloudcustodian.io/docs/
Author: Cloud Custodian Project
License-Expression: Apache-2.0
Classifier: License :: OSI Approved :: Apache Software License
Classifier: Topic :: System :: Distributed Computing
Classifier: Topic :: System :: Systems Administration
Requires-Python: <4.0.0,>=3.9.2
Requires-Dist: adal ==1.2.7
Requires-Dist: applicationinsights ==0.11.10
Requires-Dist: apscheduler ==3.11.2
Requires-Dist: azure-cosmos ==3.2.0
Requires-Dist: azure-cosmosdb-table ==1.0.6
Requires-Dist: azure-functions ==1.24.0
Requires-Dist: azure-graphrbac ==0.61.2
Requires-Dist: azure-identity ==1.25.1
Requires-Dist: azure-keyvault-certificates ==4.10.0
Requires-Dist: azure-keyvault-keys ==4.11.0
Requires-Dist: azure-keyvault-secrets ==4.10.0
Requires-Dist: azure-keyvault ==4.2.0
Requires-Dist: azure-mgmt-advisor ==9.0.0
Requires-Dist: azure-mgmt-apimanagement ==1.0.0
Requires-Dist: azure-mgmt-appconfiguration ==0.7.0
Requires-Dist: azure-mgmt-applicationinsights ==1.0.0
Requires-Dist: azure-mgmt-appplatform ==8.0.0
Requires-Dist: azure-mgmt-authorization ==1.0.0
Requires-Dist: azure-mgmt-automation ==0.1.1
Requires-Dist: azure-mgmt-batch ==15.0.0
Requires-Dist: azure-mgmt-cdn ==12.0.0
Requires-Dist: azure-mgmt-cognitiveservices ==11.0.0
Requires-Dist: azure-mgmt-compute ==34.1.0
Requires-Dist: azure-mgmt-containerinstance ==7.0.0
Requires-Dist: azure-mgmt-containerregistry ==14.0.0
Requires-Dist: azure-mgmt-containerservice ==15.1.0
Requires-Dist: azure-mgmt-cosmosdb ==6.4.0
Requires-Dist: azure-mgmt-costmanagement ==1.0.0
Requires-Dist: azure-mgmt-databricks ==1.0.0b1
Requires-Dist: azure-mgmt-datafactory ==1.1.0
Requires-Dist: azure-mgmt-datalake-analytics ==0.6.0
Requires-Dist: azure-mgmt-datalake-store ==0.5.0
Requires-Dist: azure-mgmt-dataprotection ==1.4.0
Requires-Dist: azure-mgmt-desktopvirtualization ==1.1.0
Requires-Dist: azure-mgmt-dns ==8.0.0b1
Requires-Dist: azure-mgmt-eventgrid ==10.5.0b1
Requires-Dist: azure-mgmt-eventhub ==11.2.0
Requires-Dist: azure-mgmt-frontdoor ==1.2.0
Requires-Dist: azure-mgmt-hdinsight ==7.0.0
Requires-Dist: azure-mgmt-iothub ==1.0.0
Requires-Dist: azure-mgmt-keyvault ==12.1.1
Requires-Dist: azure-mgmt-kusto ==2.2.0
Requires-Dist: azure-mgmt-logic ==9.0.0
Requires-Dist: azure-mgmt-machinelearningservices ==2.0.0b2
Requires-Dist: azure-mgmt-managementgroups ==1.0.0b1
Requires-Dist: azure-mgmt-monitor ==2.0.0
Requires-Dist: azure-mgmt-msi ==1.0.0
Requires-Dist: azure-mgmt-network ==28.1.0
Requires-Dist: azure-mgmt-policyinsights ==1.0.0
Requires-Dist: azure-mgmt-rdbms ==10.2.0b17
Requires-Dist: azure-mgmt-recoveryservices ==3.1.0
Requires-Dist: azure-mgmt-recoveryservicesbackup ==7.0.0
Requires-Dist: azure-mgmt-redhatopenshift ==1.5.0
Requires-Dist: azure-mgmt-redis ==14.5.0
Requires-Dist: azure-mgmt-resource ==23.4.0
Requires-Dist: azure-mgmt-resourcegraph ==7.0.0
Requires-Dist: azure-mgmt-search ==8.0.0
Requires-Dist: azure-mgmt-security ==8.0.0b1
Requires-Dist: azure-mgmt-servicebus ==8.2.1
Requires-Dist: azure-mgmt-servicefabric ==1.0.0
Requires-Dist: azure-mgmt-signalr ==0.4.0
Requires-Dist: azure-mgmt-sql ==3.0.1
Requires-Dist: azure-mgmt-storage ==22.2.0
Requires-Dist: azure-mgmt-streamanalytics ==1.0.0
Requires-Dist: azure-mgmt-subscription ==1.0.0
Requires-Dist: azure-mgmt-synapse ==2.0.0
Requires-Dist: azure-mgmt-trafficmanager ==0.51.0
Requires-Dist: azure-mgmt-web ==3.0.0
Requires-Dist: azure-storage-blob ==12.28.0
Requires-Dist: azure-storage-file-share ==12.24.0
Requires-Dist: azure-storage-file ==2.1.0
Requires-Dist: azure-storage-queue ==12.15.0
Requires-Dist: c7n ==0.9.49
Requires-Dist: click ==8.3.1
Requires-Dist: cryptography ==45.0.7
Requires-Dist: distlib ==0.4.0
Requires-Dist: jmespath ==1.0.1
Requires-Dist: netaddr ==0.10.1
Requires-Dist: pyjwt ==2.10.1
Requires-Dist: requests ==2.32.5
Description-Content-Type: text/markdown


# Cloud Custodian - Azure Support

This a plugin to Cloud Custodian that adds Azure support.

## Install Cloud Custodian and Azure Plugin

The Azure provider must be installed as a separate package in addition to c7n.

    $ git clone https://github.com/cloud-custodian/cloud-custodian.git
    $ virtualenv custodian
    $ source custodian/bin/activate
    (custodian) $ pip install -e cloud-custodian/.
    (custodian) $ pip install -e cloud-custodian/tools/c7n_azure/.


## Write your first policy

A policy specifies the following items:

- The type of resource to run the policy against
- Filters to narrow down the set of resources
- Actions to take on the filtered set of resources

For this tutorial we will add a tag to all virtual machines with the name "Hello" and the value "World".

Create a file named ``custodian.yml`` with this content:

    policies:
        - name: my-first-policy
          description: |
            Adds a tag to all virtual machines
          resource: azure.vm
          actions:
            - type: tag
              tag: Hello
              value: World

## Run your policy

First, choose one of the supported authentication mechanisms and either log in to Azure CLI or set
environment variables as documented in [Authentication](https://cloudcustodian.io/docs/azure/authentication.html#azure-authentication).

    custodian run --output-dir=. custodian.yml


If successful, you should see output similar to the following on the command line

    2016-12-20 08:35:06,133: custodian.policy:INFO Running policy my-first-policy resource: azure.vm
    2016-12-20 08:35:07,514: custodian.policy:INFO policy: my-first-policy resource:azure.vm has count:1 time:1.38
    2016-12-20 08:35:08,188: custodian.policy:INFO policy: my-first-policy action: tag: 1 execution_time: 0.67


You should also find a new ``my-first-policy`` directory with a log and other
files (subsequent runs will append to the log by default rather than
overwriting it).

## Links
- [Getting Started](https://cloudcustodian.io/docs/azure/gettingstarted.html)
- [Example Scenarios](https://cloudcustodian.io/docs/azure/examples/index.html)
- [Example Policies](https://cloudcustodian.io/docs/azure/policy/index.html)


## Running Tests

If you'd like to help with the development of Azure support, you'll need
[uv](https://docs.astral.sh/uv/) installed. It provides a pip-compatible
interface, & will handle all the dependencies needed for you.

You can then run the unit tests like this:

```shell
# Assuming you're in the `cloud-custodian` top-level directory...
$ cd tools/c7n_azure

$ uv run pytest tests_azure
```
