blob: dbc239cdb2c2b73401b683b2972435050422a4e1 [file] [log] [blame]
:mod:`airflow.providers.microsoft.azure.hooks.azure_container_instance`
=======================================================================
.. py:module:: airflow.providers.microsoft.azure.hooks.azure_container_instance
Module Contents
---------------
.. py:class:: AzureContainerInstanceHook(conn_id: str = default_conn_name)
Bases: :class:`airflow.providers.microsoft.azure.hooks.base_azure.AzureBaseHook`
A hook to communicate with Azure Container Instances.
This hook requires a service principal in order to work.
After creating this service principal
(Azure Active Directory/App Registrations), you need to fill in the
client_id (Application ID) as login, the generated password as password,
and tenantId and subscriptionId in the extra's field as a json.
:param conn_id: connection id of a service principal which will be used
to start the container instance
:type conn_id: str
.. attribute:: conn_name_attr
:annotation: = conn_id
.. attribute:: default_conn_name
:annotation: = azure_default
.. attribute:: conn_type
:annotation: = azure_container_instances
.. attribute:: hook_name
:annotation: = Azure Container Instance
.. method:: create_or_update(self, resource_group: str, name: str, container_group: ContainerGroup)
Create a new container group
:param resource_group: the name of the resource group
:type resource_group: str
:param name: the name of the container group
:type name: str
:param container_group: the properties of the container group
:type container_group: azure.mgmt.containerinstance.models.ContainerGroup
.. method:: get_state_exitcode_details(self, resource_group: str, name: str)
Get the state and exitcode of a container group
:param resource_group: the name of the resource group
:type resource_group: str
:param name: the name of the container group
:type name: str
:return: A tuple with the state, exitcode, and details.
If the exitcode is unknown 0 is returned.
:rtype: tuple(state,exitcode,details)
.. method:: get_messages(self, resource_group: str, name: str)
Get the messages of a container group
:param resource_group: the name of the resource group
:type resource_group: str
:param name: the name of the container group
:type name: str
:return: A list of the event messages
:rtype: list[str]
.. method:: get_state(self, resource_group: str, name: str)
Get the state of a container group
:param resource_group: the name of the resource group
:type resource_group: str
:param name: the name of the container group
:type name: str
:return: ContainerGroup
:rtype: ~azure.mgmt.containerinstance.models.ContainerGroup
.. method:: get_logs(self, resource_group: str, name: str, tail: int = 1000)
Get the tail from logs of a container group
:param resource_group: the name of the resource group
:type resource_group: str
:param name: the name of the container group
:type name: str
:param tail: the size of the tail
:type tail: int
:return: A list of log messages
:rtype: list[str]
.. method:: delete(self, resource_group: str, name: str)
Delete a container group
:param resource_group: the name of the resource group
:type resource_group: str
:param name: the name of the container group
:type name: str
.. method:: exists(self, resource_group: str, name: str)
Test if a container group exists
:param resource_group: the name of the resource group
:type resource_group: str
:param name: the name of the container group
:type name: str