ansible / ansible.builtin / v2.9.17 / module / azure_rm_iothub Manage Azure IoT hub | "added in version" 2.9 of ansible.builtin" Authors: Yuwei Zhou (@yuwzho) preview | supported by communityansible.builtin.azure_rm_iothub (v2.9.17) — module
pip
Install with pip install ansible==2.9.17
Create, delete an Azure IoT hub.
- name: Create a simplest IoT hub azure_rm_iothub: name: Testing resource_group: myResourceGroup
- name: Create an IoT hub with route azure_rm_iothub: resource_group: myResourceGroup name: Testing routing_endpoints: - connection_string: "Endpoint=sb://qux.servicebus.windows.net/;SharedAccessKeyName=quux;SharedAccessKey=****;EntityPath=myQueue" name: foo resource_type: queue resource_group: myResourceGroup1 routes: - name: bar source: device_messages endpoint_name: foo enabled: yes
sku: choices: - b1 - b2 - b3 - f1 - s1 - s2 - s3 description: - Pricing tier for Azure IoT Hub. - Note that only one free IoT hub instance is allowed in each subscription. Exception will be thrown if free instances exceed one. - Default is C(s1) when creation. type: str name: description: - Name of the IoT hub. required: true type: str tags: description: - Dictionary of string:string pairs to assign as metadata to the object. - Metadata tags on the object will be updated with any provided values. - To remove tags set append_tags option to false. type: dict unit: description: - Units in your IoT Hub. - Default is C(1). type: int state: choices: - absent - present default: present description: - State of the IoT hub. Use C(present) to create or update an IoT hub and C(absent) to delete an IoT hub. type: str routes: description: - Route device-to-cloud messages to service-facing endpoints. suboptions: condition: description: - The query expression for the routing query that is run against the message application properties, system properties, message body, device twin tags, and device twin properties to determine if it is a match for the endpoint. - For more information about constructing a query, see U(https://docs.microsoft.com/en-us/azure/iot-hub/iot-hub-devguide-routing-query-syntax) type: str enabled: description: - Whether to enable the route. required: true type: bool endpoint_name: description: - The name of the endpoint in I(routing_endpoints) where IoT Hub sends messages that match the query. required: true type: str name: description: - Name of the route. required: true type: str source: choices: - device_messages - twin_change_events - device_lifecycle_events - device_job_lifecycle_events description: - The origin of the data stream to be acted upon. required: true type: str type: list secret: description: - Azure client secret. Use when authenticating with a Service Principal. type: str tenant: description: - Azure tenant ID. Use when authenticating with a Service Principal. type: str ad_user: description: - Active Directory username. Use when authenticating with an Active Directory user rather than service principal. type: str profile: description: - Security profile found in ~/.azure/credentials file. type: str location: description: - Location of the IoT hub. type: str password: description: - Active Directory user password. Use when authenticating with an Active Directory user rather than service principal. type: str client_id: description: - Azure client ID. Use when authenticating with a Service Principal. type: str ip_filters: description: - Configure rules for rejecting or accepting traffic from specific IPv4 addresses. suboptions: action: choices: - accept - reject description: - The desired action for requests captured by this rule. required: true type: str ip_mask: description: - A string that contains the IP address range in CIDR notation for the rule. required: true type: str name: description: - Name of the filter. required: true type: str type: list api_profile: default: latest description: - Selects an API profile to use when communicating with Azure services. Default value of C(latest) is appropriate for public clouds; future values will allow use with Azure Stack. type: str version_added: 0.0.1 version_added_collection: azure.azcollection append_tags: default: true description: - Use to control if tags field is canonical or just appends to existing tags. - When canonical, any tags not found in the tags parameter will be removed from the object's metadata. type: bool auth_source: choices: - auto - cli - credential_file - env - msi default: auto description: - Controls the source of the credentials to use for authentication. - Can also be set via the C(ANSIBLE_AZURE_AUTH_SOURCE) environment variable. - When set to C(auto) (the default) the precedence is module parameters -> C(env) -> C(credential_file) -> C(cli). - When set to C(env), the credentials will be read from the environment variables - When set to C(credential_file), it will read the profile from C(~/.azure/credentials). - When set to C(cli), the credentials will be sources from the Azure CLI profile. C(subscription_id) or the environment variable C(AZURE_SUBSCRIPTION_ID) can be used to identify the subscription ID if more than one is present otherwise the default az cli subscription is used. - When set to C(msi), the host machine must be an azure resource with an enabled MSI extension. C(subscription_id) or the environment variable C(AZURE_SUBSCRIPTION_ID) can be used to identify the subscription ID if the resource is granted access to more than one subscription, otherwise the first subscription is chosen. - The C(msi) was added in Ansible 2.6. type: str version_added: 0.0.1 version_added_collection: azure.azcollection event_endpoint: description: - The Event Hub-compatible endpoint property. suboptions: partition_count: description: - The number of partitions for receiving device-to-cloud messages in the Event Hub-compatible endpoint. - See U(https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-messaging#device-to-cloud-messages). - Default is C(2). type: int retention_time_in_days: description: - The retention time for device-to-cloud messages in days. - See U(https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-messaging#device-to-cloud-messages). - Default is C(1). type: int type: dict resource_group: description: - Name of resource group. required: true type: str subscription_id: description: - Your Azure subscription Id. type: str cloud_environment: default: AzureCloud description: - For cloud environments other than the US public cloud, the environment name (as defined by Azure Python SDK, eg, C(AzureChinaCloud), C(AzureUSGovernment)), or a metadata discovery endpoint URL (required for Azure Stack). Can also be set via credential file profile or the C(AZURE_CLOUD_ENVIRONMENT) environment variable. type: str version_added: 0.0.1 version_added_collection: azure.azcollection routing_endpoints: description: - Custom endpoints. suboptions: connection_string: description: - Connection string of the custom endpoint. - The connection string should have send privilege. required: true type: str container: description: - Container name of the custom endpoint when I(resource_type=storage). type: str encoding: description: - Encoding of the message when I(resource_type=storage). type: str name: description: - Name of the custom endpoint. required: true type: str resource_group: description: - Resource group of the endpoint. - Default is the same as I(resource_group). type: str resource_type: choices: - eventhub - queue - storage - topic description: - Resource type of the custom endpoint. required: true type: str subscription: description: - Subscription id of the endpoint. - Default is the same as I(subscription). type: str type: list adfs_authority_url: description: - Azure AD authority url. Use when authenticating with Username/password, and has your own ADFS authority. type: str version_added: 0.0.1 version_added_collection: azure.azcollection cert_validation_mode: choices: - ignore - validate description: - 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 C(ignore). Can also be set via credential file profile or the C(AZURE_CERT_VALIDATION) environment variable. type: str version_added: 0.0.1 version_added_collection: azure.azcollection enable_file_upload_notifications: description: - File upload notifications are enabled if set to C(True). type: bool
cloud_to_device: contains: max_delivery_count: description: - The number of times the IoT hub attempts to deliver a message on the feedback queue. - See U(https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-messaging#cloud-to-device-messages). returned: success sample: 10 type: int ttl_as_iso8601: description: - The period of time for which a message is available to consume before it is expired by the IoT hub. - See U(https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-messaging#cloud-to-device-messages). returned: success sample: '1:00:00' type: str description: - Cloud to device message properties. returned: success type: complex enable_file_upload_notifications: description: - Whether file upload notifications are enabled. returned: success sample: true type: bool event_endpoints: contains: endpoint: description: - The Event Hub-compatible endpoint. returned: success sample: sb://iothub-ns-testing-1478811-9bbc4a15f0.servicebus.windows.net/ type: str partition_count: description: - The number of partitions for receiving device-to-cloud messages in the Event Hub-compatible endpoint. - See U(https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-messaging#device-to-cloud-messages). returned: success sample: 2 type: int partition_ids: description: - List of the partition id for the event endpoint. returned: success sample: - '0' - '1' type: list retention_time_in_days: description: - The retention time for device-to-cloud messages in days. - See U(https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-messaging#device-to-cloud-messages). returned: success sample: 1 type: int description: - Built-in endpoint where to deliver device message. returned: success type: complex host_name: description: - Host of the IoT hub. returned: success sample: testing.azure-devices.net type: str id: description: - Resource ID of the IoT hub. returned: success sample: /subscriptions/XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX/resourceGroups/myResourceGroup/providers/Microsoft.Devices/IotHubs/Testing type: str ip_filters: contains: action: description: - The desired action for requests captured by this rule. returned: success sample: Reject type: str ip_mask: description: - A string that contains the IP address range in CIDR notation for the rule. returned: success sample: 40.54.7.3 type: str name: description: - Name of the filter. returned: success sample: filter type: str description: - Configure rules for rejecting or accepting traffic from specific IPv4 addresses. returned: success type: complex location: description: - Location of the IoT hub. returned: success sample: eastus type: str name: description: - Name of the IoT hub. returned: success sample: Testing type: str resource_group: description: - Resource group of the IoT hub. returned: success sample: myResourceGroup. type: str routes: contains: condition: description: - The query expression for the routing query that is run against the message application properties, system properties, message body, device twin tags, and device twin properties to determine if it is a match for the endpoint. - For more information about constructing a query, see I(https://docs.microsoft.com/en-us/azure/iot-hub/iot-hub-devguide-routing-query-syntax) returned: success sample: 'true' type: bool enabled: description: - Whether to enable the route. returned: success sample: true type: str endpoint_name: description: - The name of the endpoint in C(routing_endpoints) where IoT Hub sends messages that match the query. returned: success sample: foo type: str name: description: - Name of the route. returned: success sample: route1 type: str source: description: - The origin of the data stream to be acted upon. returned: success sample: device_messages type: str description: - Route device-to-cloud messages to service-facing endpoints. returned: success type: complex routing_endpoints: contains: event_hubs: contains: connection_string: description: - Connection string of the custom endpoint. returned: success sample: Endpoint=sb://quux.servicebus.windows.net:5671/;SharedAccessKeyName=qux;SharedAccessKey=****;EntityPath=foo type: str name: description: - Name of the custom endpoint. returned: success sample: foo type: str resource_group: description: - Resource group of the endpoint. returned: success sample: bar type: str subscription: description: - Subscription id of the endpoint. returned: success sample: XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX type: str description: - List of custom endpoints of event hubs. returned: success type: complex service_bus_queues: contains: connection_string: description: - Connection string of the custom endpoint. returned: success sample: Endpoint=sb://quux.servicebus.windows.net:5671/;SharedAccessKeyName=qux;SharedAccessKey=****;EntityPath=foo type: str name: description: - Name of the custom endpoint. returned: success sample: foo type: str resource_group: description: - Resource group of the endpoint. returned: success sample: bar type: str subscription: description: - Subscription ID of the endpoint. returned: success sample: XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX type: str description: - List of custom endpoints of service bus queue. returned: always type: complex service_bus_topics: contains: connection_string: description: - Connection string of the custom endpoint. returned: success sample: Endpoint=sb://quux.servicebus.windows.net:5671/;SharedAccessKeyName=qux;SharedAccessKey=****;EntityPath=foo type: str name: description: - Name of the custom endpoint. returned: success sample: foo type: str resource_group: description: - Resource group of the endpoint. returned: success sample: bar type: str subscription: description: - Subscription ID of the endpoint. returned: success sample: XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX type: str description: - List of custom endpoints of service bus topic. returned: success type: complex storage_containers: contains: connection_string: description: - Connection string of the custom endpoint. returned: success sample: Endpoint=sb://quux.servicebus.windows.net:5671/;SharedAccessKeyName=qux;SharedAccessKey=****;EntityPath=foo type: str name: description: - Name of the custom endpoint. returned: success sample: foo type: str resource_group: description: - Resource group of the endpoint. returned: success sample: bar type: str subscription: description: - Subscription ID of the endpoint. returned: success sample: XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX type: str description: - List of custom endpoints of storage returned: success type: complex description: - Custom endpoints. returned: success type: complex sku: description: - Pricing tier for Azure IoT Hub. returned: success sample: f1 type: str unit: description: - Units in the IoT Hub. returned: success sample: 1 type: int