Source code for airflow.providers.amazon.aws.example_dags.example_ecs_fargate
# Licensed to the Apache Software Foundation (ASF) under one# or more contributor license agreements. See the NOTICE file# distributed with this work for additional information# regarding copyright ownership. The ASF licenses this file# to you under the Apache License, Version 2.0 (the# "License"); you may not use this file except in compliance# with the License. You may obtain a copy of the License at## http://www.apache.org/licenses/LICENSE-2.0## Unless required by applicable law or agreed to in writing,# software distributed under the License is distributed on an# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY# KIND, either express or implied. See the License for the# specific language governing permissions and limitations# under the License."""This is an example dag for ECSOperator.The task "hello_world" runs `hello-world` task in `c` cluster.It overrides the command in the `hello-world-container` container."""importdatetimeimportosfromairflowimportDAGfromairflow.providers.amazon.aws.operators.ecsimportECSOperatordag=DAG(dag_id="ecs_fargate_dag",default_args={"owner":"airflow","depends_on_past":False,"email":["airflow@example.com"],"email_on_failure":False,"email_on_retry":False,},default_view="graph",schedule_interval=None,start_date=datetime.datetime(2020,1,1),tags=["example"],)# generate dag documentationdag.doc_md=__doc__# [START howto_operator_ecs]hello_world=ECSOperator(task_id="hello_world",dag=dag,aws_conn_id="aws_ecs",cluster="c",task_definition="hello-world",launch_type="FARGATE",overrides={"containerOverrides":[{"name":"hello-world-container","command":["echo","hello","world"],},],},network_configuration={"awsvpcConfiguration":{"securityGroups":[os.environ.get("SECURITY_GROUP_ID","sg-123abc")],"subnets":[os.environ.get("SUBNET_ID","subnet-123456ab")],},},tags={"Customer":"X","Project":"Y","Application":"Z","Version":"0.0.1","Environment":"Development",},awslogs_group="/ecs/hello-world",awslogs_stream_prefix="prefix_b/hello-world-container",# prefix with container name)# [END howto_operator_ecs]