azure.azcollection.azure_rm_eventgrid_subscription module – Manage Eventgrid Subscriptions
Note
This module is part of the azure.azcollection collection (version 3.18.0).
You might already have this collection installed if you are using the ansible package. It is not included in ansible-core. To check whether it is installed, run ansible-galaxy collection list.
To install it, use: ansible-galaxy collection install azure.azcollection. You need further requirements to be able to use this module, see Requirements for details.
To use it in a playbook, specify: azure.azcollection.azure_rm_eventgrid_subscription.
New in azure.azcollection 3.13.0
Synopsis
- Create, update ,delete and replace Eventgrid Subscriptions.
Requirements
The below requirements are needed on the host that executes this module.
- python >= 2.7
- The host that executes this module must have the azure.azcollection collection installed via galaxy
- All python packages listed in collection’s requirements.txt must be installed via pip on the host that executes modules from azure.azcollection
- Full installation instructions may be found https://galaxy.ansible.com/azure/azcollection
Parameters
Parameter | Comments |
|---|---|
ad_user string | Active Directory username. Use when authenticating with an Active Directory user rather than service principal. |
adfs_authority_url string added in azure.azcollection 0.0.1 | Azure AD authority url. Use when authenticating with Username/password, and has your own ADFS authority. |
advanced_filter list / elements=string | An advanced filter enables filtering of events based on a specific event property. KEY[.INNERKEY] FILTEROPERATOR VALUE [VALUE …] Examples data.Color StringIn Blue Red Orange Yellow data.Color StringNotIn Blue Red Orange Yellow subject StringContains Blue Red subject StringNotContains Blue Red subject StringBeginsWith Blue Red subject StringNotBeginsWith Blue Red subject StringEndsWith img png jpg subject StringNotEndsWith img png jpg data.property1 NumberIn 5 10 20 data.property1 NumberInRange 5,10 20,30 40,50 data.property2 NumberNotIn 100 200 300 data.property2 NumberNotInRange 100,110 200,210 300,310 data.property3 NumberLessThan 100 data.property2 NumberLessThanOrEquals 100 data.property3 NumberGreaterThan 100 data.property2 NumberGreaterThanOrEquals 100 data.property3 BoolEquals true data.property3 IsNullOrUndefined data.property3 IsNotNull |
api_profile string added in azure.azcollection 0.0.1 | Selects an API profile to use when communicating with Azure services. Default value of Default: |
auth_source string added in azure.azcollection 0.0.1 | Controls the source of the credentials to use for authentication. Can also be set via the When set to When set to When set to When set to When set to The Choices:
|
azure_active_directory_application_id_or_uri string | The Azure Active Directory Application Id or Uri to get the access token that will be included as the bearer token in delivery requests. Applicable only for webhook as a destination. |
azure_active_directory_tenant_id string | The Azure Active Directory Tenant Id to get the access token that will be included as the bearer token in delivery requests. Applicable only for webhook as a destination. |
cert_validation_mode string added in azure.azcollection 0.0.1 | Controls the certificate validation behavior for Azure endpoints. By default, all modules will validate the server certificate, but when an HTTPS proxy is in use, or against Azure Stack, it may be necessary to disable this behavior by passing Choices:
|
client_id string | Azure client ID. Use when authenticating with a Service Principal or Managed Identity (msi). Can also be set via the |
cloud_environment string added in azure.azcollection 0.0.1 | For cloud environments other than the US public cloud, the environment name (as defined by Azure Python SDK, eg, Default: |
deadletter_endpoint string | The Azure resource ID of an Azure Storage blob container destination where EventGrid should deadletter undeliverable events for this event subscription. |
delivery_attribute_mapping list / elements=string | Add delivery attribute mapping to send additional information via HTTP headers when delivering events. This attribute is valid for all destination types except StorageQueue. Format attribute-name attribute-type attribute-value [attribute-is-secret] somename dynamic somevalue true somename2 static somevalue |
disable_instance_discovery boolean added in azure.azcollection 2.3.0 | Determines whether or not instance discovery is performed when attempting to authenticate. Setting this to true will completely disable both instance discovery and authority validation. This functionality is intended for use in scenarios where the metadata endpoint cannot be reached such as in private clouds or Azure Stack. The process of instance discovery entails retrieving authority metadata from https://login.microsoft.com/ to validate the authority. By setting this to **True**, the validation of the authority is disabled. As a result, it is crucial to ensure that the configured authority host is valid and trustworthy. Set via credential file profile or the Choices:
|
enable_advanced_filtering_on_arrays boolean | Allows advanced filters to be evaluated against an array of values instead of expecting a singular value. Choices:
|
endpoint string | Endpoint where EventGrid should deliver events matching this event subscription. For webhook endpoint type, this should be the corresponding webhook URL. For other endpoint types, this should be the Azure resource identifier of the endpoint. It is expected that the destination endpoint to be already created and available for use before executing any Event Grid command. |
endpoint_type string | The type of the destination endpoint. Choices:
|
event_delivery_schema string | The schema in which events should be delivered for this event subscription. By default, events will be delivered in the same schema in which they are published (based on the corresponding topic’s input schema). Choices:
|
event_ttl integer | Event time to live (in minutes). Must be a number between 1 and 1440. Default: |
expiration_date string | Date or datetime (in UTC, e.g. ‘2018-11-30T11:59:59+00:00’ or ‘2018-11-30’) after which the event subscription would expire. By default, there is no expiration for the event subscription. |
included_event_types list / elements=string | A list of event types (e.g., Microsoft.Storage.BlobCreated and Microsoft.Storage.BlobDeleted). In order to subscribe to all default event types, do not specify any value for this argument. For event grid topics, event types are customer defined. For Azure events, e.g., Storage Accounts, IoT Hub, etc., you can query their event types using this CLI command ‘az eventgrid topic-type list-event-types’. |
labels list / elements=string | A list of labels to associate with this event subscription. |
log_mode string | Parent argument. |
log_path string | Parent argument. |
max_delivery_attempts integer | Maximum number of delivery attempts. Must be a number between 1 and 30. Default: |
max_events_per_batch integer | Maximum number of events in a batch. Must be a number between 1 and 5000. |
name string / required | Name of the subscription. |
oidc_token string added in azure.azcollection 3.17.0 | Direct OpenID Connect (OIDC) token (JWT) used for workload identity authentication. This token is exchanged with Azure AD using OIDC federated identity. Useful in CI systems (for example GitHub Actions, Azure DevOps) where an OIDC token is provided directly by the platform. Can also be set via the |
oidc_token_file_path path added in azure.azcollection 3.17.0 | Path to a file containing an OpenID Connect (OIDC) token (JWT) used for workload identity authentication. The file must contain only raw token. This method is commonly used in platforms that materialize OIDC tokens as files Can also be set via the |
password string | Active Directory user password. Use when authenticating with an Active Directory user rather than service principal. |
preferred_batch_size_in_kilobytes integer | Preferred batch size in kilobytes. Must be a number between 1 and 1024. |
profile string | Security profile found in ~/.azure/credentials file. |
secret string | Azure client secret. Use when authenticating with a Service Principal. |
source_resource_id string / required | Name of a resource id where the subscription exists or will be created. |
state string | State of the Eventgrid Event Subscription. Use Choices:
|
storage_queue_msg_ttl integer | Storage queue message time to live in seconds. |
subject_begins_with string | An optional string to filter events for an event subscription based on a prefix. Wildcard characters are not supported. |
subject_case_sensitive boolean | Specify to indicate whether the subject fields should be compared in a case sensitive manner. True if flag present. Choices:
|
subject_ends_with string | An optional string to filter events for an event subscription based on a suffix. Wildcard characters are not supported. |
subscription_id string | Your Azure subscription Id. |
tenant string | Azure tenant ID. Use when authenticating with a Service Principal. |
thumbprint string added in azure.azcollection 1.14.0 | The thumbprint of the private key specified in x509_certificate_path. Use when authenticating with a Service Principal. Required if x509_certificate_path is defined. |
x509_certificate_path path added in azure.azcollection 1.14.0 | Path to the X509 certificate used to create the service principal in PEM format. The certificate must be appended to the private key. Use when authenticating with a Service Principal. |
Notes
Note
- For authentication with Azure you can pass parameters, set environment variables, use a profile stored in ~/.azure/credentials, or log in before you run your tasks or playbook with
az login. - Authentication is also possible using a service principal or Active Directory user.
- To authenticate via OIDC, pass client_id, tenant and oidc_token or oidc_token_file_path, or set environment variables AZURE_CLIENT_ID, AZURE_TENANT and AZURE_FEDERATED_TOKEN or AZURE_FEDERATED_TOKEN_FILE.
- To authenticate via service principal, pass subscription_id, client_id, secret and tenant or set environment variables AZURE_SUBSCRIPTION_ID, AZURE_CLIENT_ID, AZURE_SECRET and AZURE_TENANT.
- To authenticate via Active Directory user, pass ad_user and password, or set AZURE_AD_USER and AZURE_PASSWORD in the environment.
- Alternatively, credentials can be stored in ~/.azure/credentials. This is an ini file containing a [default] section and the following keys: subscription_id, client_id, secret and tenant or subscription_id, ad_user and password. It is also possible to add additional profiles. Specify the profile by passing profile or setting AZURE_PROFILE in the environment.
See Also
See also
- Sign in with Azure CLI
-
How to authenticate using the
az logincommand.
Examples
- name: Subscribe to custom topic
azure.azcollection.azure_rm_eventgrid_subscription:
name: subscription-xxxxx20070
source_resource_id: /subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/MyResourceGroup/providers/Microsoft.EventGrid/topics/topic-xxxxx20070
endpoint: https://event-grid-site-xxxxx20070.azurewebsites.net/api/updates
Return Values
Common return values are documented here, the following are the fields unique to this module:
Key | Description |
|---|---|
changed boolean | Whether the resource is changed. Returned: always Sample: |
eventgrid_subscriptions complex | List of Eventgrid subscriptions. Returned: always |
|
destination complex |
Details of the destination Returned: always |
|
endpoint_base_url string |
The base URL of the endpoint Returned: always Sample: |
|
endpoint_type string |
The type of the endpoint Returned: always Sample: |
|
max_events_per_batch integer |
How many events will be batched Returned: always Sample: |
|
preferred_batch_size_in_kilobytes integer |
The preferred batch size in kilobytes Returned: always Sample: |
|
event_delivery_schema string |
The type of Eventgrid Schema Returned: always Sample: |
|
filter complex |
Filter settings for which events to publish to endpoint Returned: always |
|
subject_begins_with string |
Filter on Subject beginning with this value Returned: always |
|
subject_ends_with string |
Filter on Subject ending with this value Returned: always |
|
id string |
The ID of the Eventgrid Subscription Returned: always Sample: |
|
name string |
The name of the Eventgrid Subscription Returned: always Sample: |
|
provisioning_state string |
The provisioning state of this Eventgrid Subscription Returned: always Sample: |
|
retry_policy complex |
Retry policy for this Eventgrid Subscription Returned: always |
|
event_time_to_live_in_minutes integer |
Event time to live in minutes Returned: always Sample: |
|
max_delivery_attempts integer |
Max attempts to deliver to endpoint Returned: always Sample: |
|
topic string |
The source resource id that the Eventgrid Subscription is subscribed to Returned: always Sample: |
|
type string |
The type of Eventgrid Subscription Returned: always Sample: |
Collection links
© 2012–2018 Michael DeHaan
© 2018–2025 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/projects/ansible/latest/collections/azure/azcollection/azure_rm_eventgrid_subscription_module.html