blob: 167c3098b9b972486da3a758ee9cbb82c3517418 [file] [log] [blame]
:py:mod:`airflow.providers.amazon.aws.hooks.ec2`
================================================
.. py:module:: airflow.providers.amazon.aws.hooks.ec2
Module Contents
---------------
Classes
~~~~~~~
.. autoapisummary::
airflow.providers.amazon.aws.hooks.ec2.EC2Hook
Functions
~~~~~~~~~
.. autoapisummary::
airflow.providers.amazon.aws.hooks.ec2.only_client_type
.. py:function:: only_client_type(func)
.. py:class:: EC2Hook(api_type='resource_type', *args, **kwargs)
Bases: :py:obj:`airflow.providers.amazon.aws.hooks.base_aws.AwsBaseHook`
Interact with AWS EC2 Service.
Additional arguments (such as ``aws_conn_id``) may be specified and
are passed down to the underlying AwsBaseHook.
.. seealso::
:class:`~airflow.providers.amazon.aws.hooks.base_aws.AwsBaseHook`
.. py:attribute:: API_TYPES
.. py:method:: get_instance(self, instance_id, filters = None)
Get EC2 instance by id and return it.
:param instance_id: id of the AWS EC2 instance
:param filters: List of filters to specify instances to get
:return: Instance object
:rtype: ec2.Instance
.. py:method:: stop_instances(self, instance_ids)
Stop instances with given ids
:param instance_ids: List of instance ids to stop
:return: Dict with key `StoppingInstances` and value as list of instances being stopped
.. py:method:: start_instances(self, instance_ids)
Start instances with given ids
:param instance_ids: List of instance ids to start
:return: Dict with key `StartingInstances` and value as list of instances being started
.. py:method:: terminate_instances(self, instance_ids)
Terminate instances with given ids
:param instance_ids: List of instance ids to terminate
:return: Dict with key `TerminatingInstances` and value as list of instances being terminated
.. py:method:: describe_instances(self, filters = None, instance_ids = None)
Describe EC2 instances, optionally applying filters and selective instance ids
:param filters: List of filters to specify instances to describe
:param instance_ids: List of instance IDs to describe
:return: Response from EC2 describe_instances API
.. py:method:: get_instances(self, filters = None, instance_ids = None)
Get list of instance details, optionally applying filters and selective instance ids
:param instance_ids: List of ids to get instances for
:param filters: List of filters to specify instances to get
:return: List of instances
.. py:method:: get_instance_ids(self, filters = None)
Get list of instance ids, optionally applying filters to fetch selective instances
:param filters: List of filters to specify instances to get
:return: List of instance ids
.. py:method:: get_instance_state(self, instance_id)
Get EC2 instance state by id and return it.
:param instance_id: id of the AWS EC2 instance
:return: current state of the instance
:rtype: str
.. py:method:: wait_for_state(self, instance_id, target_state, check_interval)
Wait EC2 instance until its state is equal to the target_state.
:param instance_id: id of the AWS EC2 instance
:param target_state: target state of instance
:param check_interval: time in seconds that the job should wait in
between each instance state checks until operation is completed
:return: None
:rtype: None