Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/amazon-web-services/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Amazon web services 如何在更新/创建资源后运行AWS Glue Crawler?_Amazon Web Services_Terraform_Aws Glue_Terraform Provider Aws - Fatal编程技术网

Amazon web services 如何在更新/创建资源后运行AWS Glue Crawler?

Amazon web services 如何在更新/创建资源后运行AWS Glue Crawler?,amazon-web-services,terraform,aws-glue,terraform-provider-aws,Amazon Web Services,Terraform,Aws Glue,Terraform Provider Aws,我已经在Terraform中定义了一个资源来创建一个我不想调度的粘合爬虫。但我希望它在创建和更新后运行。我在文档中找不到任何关于如何触发的信息 resource "aws_glue_crawler" "my_crawler" { database_name = "my_db" name = "my_crawler" role = "arn:aws:iam::111111111111:role/service-role/someRole" s3

我已经在Terraform中定义了一个资源来创建一个我不想调度的粘合爬虫。但我希望它在创建和更新后运行。我在文档中找不到任何关于如何触发的信息

resource "aws_glue_crawler" "my_crawler" {
  database_name = "my_db"
  name          = "my_crawler"
  role          = "arn:aws:iam::111111111111:role/service-role/someRole"

  s3_target {
    path = "s3://my_bucket/key/prefix"
  }

}

如果terraform是ci/cd的一部分,则可以编写shell/python脚本以在部署爬虫程序后运行爬虫程序

如果terraform是ci/cd的一部分,则可以编写shell/python脚本以在部署爬虫程序后运行爬虫程序

一旦创建了爬虫程序,则可以使用AWS CLI触发爬虫程序:

resource "aws_glue_crawler" "my_crawler" {
  database_name = "my_db"
  name          = "my_crawler"
  role          = "arn:aws:iam::111111111111:role/service-role/someRole"

  s3_target {
    path = "s3://my_bucket/key/prefix"
  }

  provisioner "local-exec" {
    command = "aws glue start-crawler --name ${self.name}"
  }
}
这只会在创建爬虫程序时触发,而不会在任何其他点触发,例如,如果您更改了
s3\u target.path
或其他任何内容

如果您想在更改
s3\u target.path
时触发此操作,则需要使用:

创建胶水爬虫程序后,您可以使用来使用AWS CLI触发它:

resource "aws_glue_crawler" "my_crawler" {
  database_name = "my_db"
  name          = "my_crawler"
  role          = "arn:aws:iam::111111111111:role/service-role/someRole"

  s3_target {
    path = "s3://my_bucket/key/prefix"
  }

  provisioner "local-exec" {
    command = "aws glue start-crawler --name ${self.name}"
  }
}
这只会在创建爬虫程序时触发,而不会在任何其他点触发,例如,如果您更改了
s3\u target.path
或其他任何内容

如果您想在更改
s3\u target.path
时触发此操作,则需要使用:


谢谢当地的高级供应员工作了!非常感谢关于如何在s3补丁更改时触发爬虫程序的额外信息。谢谢!当地的高级供应员工作了!非常感谢关于如何在s3补丁更改时触发爬虫程序的额外信息。