uranusjr commented on code in PR #29548: URL: https://github.com/apache/airflow/pull/29548#discussion_r1113923418
########## airflow/providers/amazon/aws/operators/ec2.py: ########## @@ -116,3 +116,139 @@ def execute(self, context: Context): target_state="stopped", check_interval=self.check_interval, ) + + +class EC2CreateInstanceOperator(BaseOperator): + """ + Create and start an EC2 Instance using boto3 + + .. seealso:: + For more information on how to use this operator, take a look at the guide: + :ref:`howto/operator:EC2CreateInstanceOperator` + + :param image_id: ID of the AMI used to create the instance. + :param max_count: Maximum number of instances to launch. Defaults to 1. + :param min_count: Minimum number of instances to launch. Defaults to 1. + :param aws_conn_id: AWS connection to use + :param region_name: AWS region name associated with the client. + :param poll_interval: Number of seconds to wait before attempting to + check state of instance. Only used if wait_for_completion is True. Default is 20. + :param max_attempts: Maximum number of attempts when checking state of instance. + Only used if wait_for_completion is True. Default is 20. + :param config: Dictionary for arbitrary parameters to the boto3 run_instances call. + :param wait_for_completion: If True, the operator will wait for the instance to be + in the `running` state before returning. + """ + + template_fields: Sequence[str] = ( + "image_id", + "max_count", + "min_count", + "aws_conn_id", + "region_name", + "config", + "wait_for_completion", Review Comment: Currently template fields are also used for XComArg, where boolean makes sense. There’re talks to separate those two ideas but for now having the field can be useful. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: commits-unsubscr...@airflow.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org