Terraform-provider-aws: data.aws_ecs_task_definition : μž‘μ—… μ •μ˜λ₯Ό κ°€μ Έ μ˜€μ§€ λͺ»ν–ˆμŠ΅λ‹ˆλ‹€.

에 λ§Œλ“  2017λ…„ 07μ›” 28일  Β·  25μ½”λ©˜νŠΈ  Β·  좜처: hashicorp/terraform-provider-aws

Terraform 버전

0.9.11.

  • aws_ecs_task_definition

Terraform ꡬ성 파일

data "aws_ecs_task_definition" "my-service" {
  task_definition = "${aws_ecs_task_definition.my-service.family}"
}

resource "aws_ecs_task_definition" "my-service" {
  family                = "${var.environment_name}-${var.service_name}-${var.instance_name}"
  network_mode          = "bridge"
  container_definitions = "${data.template_file.my-service.rendered}"
}

resource "aws_ecs_service" "my-service" {
 ...
  #Track the latest ACTIVE revision
  task_definition = "${aws_ecs_task_definition.my-services.family}:${max("${aws_ecs_task_definition.my-service.revision}", "${data.aws_ecs_task_definition.my-service.revision}")}"
...
}

μ˜ˆμƒλ˜λŠ” λ™μž‘

λ¦¬μ†ŒμŠ€κ°€μ—†λŠ” 경우 μƒˆ aws_ecs_task_definition 생성 그렇지 μ•ŠμœΌλ©΄ μ΅œμ‹  aws_ecs_task_definition 버전 μ‚¬μš©

이 μ½”λ“œλŠ” Terraform v0.9.2μ—μ„œ 잘 μž‘λ™ν•©λ‹ˆλ‹€.

μ‹€μ œ 행동

: μž‘μ—… μ •μ˜λ₯Ό κ°€μ Έ μ˜€μ§€ λͺ»ν–ˆμŠ΅λ‹ˆλ‹€. ClientException : μž‘μ—… μ •μ˜λ₯Ό μ„€λͺ… ν•  수 μ—†μŠ΅λ‹ˆλ‹€.
μƒνƒœ μ½”λ“œ : 400, μš”μ²­ ID : "my-service"

μž¬ν˜„ 단계

  1. terraform apply
bug servicecs

κ°€μž₯ μœ μš©ν•œ λŒ“κΈ€

데이터 μ†ŒμŠ€μ— "depends_on"을 μΆ”κ°€ν•˜μ—¬μ΄ 문제λ₯Ό ν•΄κ²°ν•  μˆ˜μžˆμ—ˆμŠ΅λ‹ˆλ‹€.

resource "aws_ecs_task_definition" "task" {
...
}
data "aws_ecs_task_definition" "task" {
  depends_on = [ "aws_ecs_task_definition.task" ]
  ...
}

도움이 λ˜μ—ˆκΈ°λ₯Ό λ°”λžλ‹ˆλ‹€.

λͺ¨λ“  25 λŒ“κΈ€

terraform 1.0μ—μ„œλ„ μž¬ν˜„

λ‚˜λ„ 같은 λ¬Έμ œκ°€ λ°œμƒν•©λ‹ˆλ‹€! ν₯미둜운 점은 바닐라 μƒνƒœ (μ™„μ „νžˆ λΉ„μ–΄ 있음)λ₯Ό μ‚¬μš©ν•˜μ—¬ 검색을 μ‹œλ„ ν•  λ•Œ μ˜ˆμƒλŒ€λ‘œ μž‘μ—…μ„ κ³„νšν•˜κ³  μ μš©ν•œλ‹€λŠ” κ²ƒμž…λ‹ˆλ‹€. μž‘λ™ν•˜μ§€ μ•ŠλŠ” κΈ°μ‘΄ μƒνƒœ νŒŒμΌμ΄μžˆμ„ λ•Œλ§Œ λ°œμƒν•©λ‹ˆλ‹€.

더 κΆκΈˆν•œ 것은 λ¦¬μ†ŒμŠ€κ°€ μ–΄λ–»κ²Œ λ“  μƒνƒœ νŒŒμΌμ— μ‘΄μž¬ν•˜μ§€ μ•Šμ§€λ§Œ μ‹€νŒ¨ν•œλ‹€λŠ” κ²ƒμž…λ‹ˆλ‹€. πŸ€”

디버깅에 λŒ€ν•΄ μžμ„Ένžˆ μ‚΄νŽ΄λ³΄λ©΄ func dataSourceAwsEcsTaskDefinitionRead κ°€ 바닐라 ν”„λ‘œμ νŠΈμ—μ„œ ν˜ΈμΆœλ˜μ§€ μ•Šκ³  κΈ°μ‘΄ ν”„λ‘œμ νŠΈμ—μ„œ ν˜ΈμΆœλœλ‹€λŠ” 것을 μ•Œκ²Œλ˜μ—ˆμŠ΅λ‹ˆλ‹€. 이것은 ν…ŒλΌ 폼 νŒ¨ν„΄μœΌλ‘œ λ³΄μž…λ‹ˆλ‹€. λ¨Όμ € κ°„λ‹¨ν•œ λ¦¬μ†ŒμŠ€ (λ³΄μ•ˆ κ·Έλ£Ή)λ₯Ό λ§Œλ“  λ‹€μŒ 쑰회λ₯Ό μ‹œλ„ν•˜μ—¬μ΄λ₯Ό μž¬ν˜„ ν•  μˆ˜μžˆμ—ˆμŠ΅λ‹ˆλ‹€. λ¦¬μ†ŒμŠ€κ°€ μƒνƒœ 파일 (이 경우 λ³΄μ•ˆ κ·Έλ£Ή)에 μ΄λ―Έμžˆμ„ λ•Œ κ³„νšμ΄ μ‹€νŒ¨ν–ˆμŠ΅λ‹ˆλ‹€. μ‘΄μž¬ν•˜μ§€ μ•ŠλŠ” λ³΄μ•ˆ 그룹을 μ‘°νšŒν•˜λŠ” λ‹€λ₯Έ 데이터 μ†ŒμŠ€λ„ μƒμ„±ν•˜μ—¬ λ‚΄ 가섀을 ν™•μΈν–ˆμŠ΅λ‹ˆλ‹€. 이에 λŒ€ν•œ κ³„νšλ„ μ‹€νŒ¨ν–ˆμŠ΅λ‹ˆλ‹€.

데이터 μΈμŠ€ν„΄μŠ€μ˜ μΈμˆ˜μ— 아직 μƒμ„±λ˜μ§€ μ•Šμ€ λ¦¬μ†ŒμŠ€μ˜ 속성과 같은 계산 된 값에 λŒ€ν•œ μ°Έμ‘°κ°€ ν¬ν•¨λ˜μ§€ μ•Šμ€ 경우 데이터 μΈμŠ€ν„΄μŠ€λ₯Ό 읽고 ν•΄λ‹Ή μƒνƒœκ°€ Terraform의 "μƒˆλ‘œ κ³ μΉ¨"단계 λ™μ•ˆ μ—…λ°μ΄νŠΈλ©λ‹ˆλ‹€.이 λ‹¨κ³„λŠ” 기본적으둜 이전에 μ‹€ν–‰λ©λ‹ˆλ‹€. κ³„νš λ§Œλ“€κΈ°. μ΄λ ‡κ²Œν•˜λ©΄ κ²€μƒ‰λœ 데이터λ₯Ό κ³„νš 쀑에 μ‚¬μš©ν•  수 있으며 diffλŠ” 얻은 μ‹€μ œ 값을 ν‘œμ‹œν•©λ‹ˆλ‹€.

데이터 μΈμŠ€ν„΄μŠ€ μΈμˆ˜λŠ” 계산 된 값을 μ°Έμ‘° ν•  수 있으며,이 경우 λͺ¨λ“  μΈμˆ˜κ°€ μ •μ˜ 될 λ•ŒκΉŒμ§€ μΈμŠ€ν„΄μŠ€ 자체의 속성을 확인할 수 μ—†μŠ΅λ‹ˆλ‹€. 이 경우 데이터 μΈμŠ€ν„΄μŠ€ μƒˆλ‘œ 고침은 "적용"λ‹¨κ³„κΉŒμ§€ μ—°κΈ°λ˜λ©° 데이터 μΈμŠ€ν„΄μŠ€ μ†μ„±μ˜ λͺ¨λ“  보간은 값이 아직 μ•Œλ €μ§€μ§€ μ•Šμ•˜κΈ° λ•Œλ¬Έμ— κ³„νšμ—μ„œ "계산 됨"으둜 ν‘œμ‹œλ©λ‹ˆλ‹€.

이것은 λ‚˜μ—κ²Œ 두 배둜 ν₯λ―Έ λ‘­μŠ΅λ‹ˆλ‹€. μœ„μ˜ λ¬Έμ„œλ₯Ό 기반으둜 data.aws_ecs_task_definition.my-service 이 aws_ecs_task_definition.my-service.family 에 μ˜μ‘΄ν•˜κΈ° λ•Œλ¬Έμ— OP의 ꡬ성이 μ‹€νŒ¨ν•΄μ„œλŠ” μ•ˆλ˜μ§€λ§Œ κ³„νš * λ‹¨κ³„μ—μ„œ μ‹€νŒ¨ν–ˆμŠ΅λ‹ˆλ‹€ (λ‚΄ λ¬Έμ œλ„ λ§ˆμ°¬κ°€μ§€μž…λ‹ˆλ‹€). μ•„λ§ˆλ„ 이것은 κ³΅κΈ‰μž μˆ˜μ€€μ΄ μ•„λ‹Œ ν…ŒλΌ 폼 μˆ˜μ€€μ˜ λ²„κ·ΈμΌκΉŒμš”?

  • νŽΈμ§‘ : κ³„νš 단계 λŒ€μ‹  적용 λ‹¨κ³„μ—μ„œ μ‹€νŒ¨ν–ˆλ‹€κ³  잘λͺ» λ§ν–ˆμŠ΅λ‹ˆλ‹€.

@radeksimko μš°λ¦¬κ°€ 이것에 λ‹Ήμ‹ μ˜ λˆˆμ„ 얻을 수 μžˆμŠ΅λ‹ˆκΉŒ? ν…ŒλΌ 폼 λ¬Έμ œκ°€ μ•„λ‹Œ 경우 메인 μ €μž₯μ†Œλ₯Ό μŠ€νŒΈν•˜κ³  싢지 μ•ŠμŠ΅λ‹ˆλ‹€.

이 λ¬Έμ œλ„λ³΄κ³  μžˆμŠ΅λ‹ˆλ‹€.

μ‹€μ œλ‘œ λ™μΌν•œ νŒŒμΌμ—μ„œ λ™μΌν•œ 데이터와 λ¦¬μ†ŒμŠ€κ°€ ν•„μš”ν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€. λ‚˜λŠ” 데이터λ₯Ό 주석 μ²˜λ¦¬ν–ˆμœΌλ©° 이제 더 잘 μž‘λ™ν•˜λŠ” 것 κ°™μŠ΅λ‹ˆλ‹€.

데이터 μ†ŒμŠ€μ— "depends_on"을 μΆ”κ°€ν•˜μ—¬μ΄ 문제λ₯Ό ν•΄κ²°ν•  μˆ˜μžˆμ—ˆμŠ΅λ‹ˆλ‹€.

resource "aws_ecs_task_definition" "task" {
...
}
data "aws_ecs_task_definition" "task" {
  depends_on = [ "aws_ecs_task_definition.task" ]
  ...
}

도움이 λ˜μ—ˆκΈ°λ₯Ό λ°”λžλ‹ˆλ‹€.

μ‹€μ œλ‘œ 버그가 μ•„λ‹ˆλ©° @parruda 의 μ†”λ£¨μ…˜μ΄ μ •ν™•ν•©λ‹ˆλ‹€. resource aws_ecs_service 및 data aws_ecs_task_definition λͺ¨λ‘ κ΄€λ ¨ resource aws_ecs_task_definition 이 (κ°€) 이미 μƒμ„±λ˜μ–΄ μžˆμ–΄μ•Όν•œλ‹€κ³  μ˜ˆμƒν•©λ‹ˆλ‹€.

λ™μΌν•œ λ¬Έμ œκ°€ λ°œμƒν–ˆκΈ° λ•Œλ¬Έμ— @KIVagant κ°€ μ˜λ―Έκ°€ μžˆμŠ΅λ‹ˆλ‹€.

data κ°œμ²΄μ™€ ν•¨κ»˜ μ‚¬μš©λ˜λŠ” resource ν‘œμ‹œμ— λŒ€ν•œ Terraform λ¬Έμ„œλŠ”μ΄λ₯Ό λ°˜μ˜ν•˜λ„λ‘ μ—…λ°μ΄νŠΈν•΄μ•Όν•œλ‹€κ³  λ§ν•˜κ³  μ‹ΆμŠ΅λ‹ˆλ‹€. ν˜„μž¬ λ¬Έμ„œλŠ” λ¦¬μ†ŒμŠ€κ°€ μ‘΄μž¬ν•˜μ§€ μ•ŠμœΌλ©΄ μ‹€νŒ¨ν•˜μ§€ μ•Šμ•„μ•Ό 함을 μ•”μ‹œν•©λ‹ˆλ‹€.

그렇지 μ•ŠμœΌλ©΄ @parruda μ†”λ£¨μ…˜μ΄ λ‚˜μ—κ²Œ μ˜λ―Έκ°€ μžˆμŠ΅λ‹ˆλ‹€.

Ya λ‚˜λŠ” μ•„λ§ˆλ„ λ‹΅μž₯ν•˜κΈ° 전에 μˆ˜μ •μ„ μ‹œλ„ν•΄μ•Όν–ˆμ§€λ§Œ μž‘λ™ν•˜μ§€λ§Œ 지속적인 λ³€κ²½ 감지가 λ°œμƒν•©λ‹ˆλ‹€.
μ˜ˆμƒ / μ›ν•˜λŠ” κ²°κ³Όκ°€ μ•„λ‹˜

@parruda 의 μˆ˜μ •μ΄ μ €μ—κ²Œ depends_on κ°€ λͺ¨λ“  tf μ‹€ν–‰μ—μ„œ λ‚΄ μž‘μ—… μ •μ˜μ— λŒ€ν•œ μ—…λ°μ΄νŠΈλ₯Ό νŠΈλ¦¬κ±°ν•©λ‹ˆλ‹€. 이λ₯Ό λ°©μ§€ν•˜κΈ°μœ„ν•œ λͺ¨λ²” 사둀가 μžˆμŠ΅λ‹ˆκΉŒ? Terraform v0.11.5λ₯Ό μ‚¬μš©ν•˜κ³  μžˆμŠ΅λ‹ˆλ‹€.
및 provider.aws v1.10.0.

@dendrochronology , λ‚˜λŠ” λ‹€μŒκ³Ό 같이 μ‚¬μš©ν•©λ‹ˆλ‹€.

data "aws_ecs_task_definition" "blabla" {
  task_definition = "${aws_ecs_task_definition.blabla.family}"
  depends_on = [ "aws_ecs_task_definition.blabla" ]
}


resource "aws_ecs_task_definition" "..." {
  family                = "..."
  task_role_arn         = "${aws_iam_role.blabla.arn}"

  container_definitions = "${data.template_file.task_definition.rendered}"

  depends_on = [
    "data.template_file.task_definition",
  ]

  lifecycle {
    ignore_changes = [
      "container_definitions" # if template file changed, do nothing, believe that human's changes are source of truth
    ]
  }
}


resource "aws_ecs_service" "blabla" {
  name            = "blabla"
  cluster         = "${aws_ecs_cluster.cluster_name.id}"
  task_definition = "${aws_ecs_task_definition.blabla.family}:${max("${aws_ecs_task_definition.blabla.revision}", "${data.aws_ecs_task_definition.blabla.revision}")}"
  desired_count   = 1
  iam_role        = "${aws_iam_role.ecs_service.name}"

// Not compatible with placement_constraints:distinctInstance, commented
//  placement_strategy {
//    type  = "binpack"
//    field = "cpu"
//  }

  placement_constraints {
    type  = "distinctInstance"
  }

  load_balancer {
    elb_name       = "${aws_elb.blabla.name}"
    container_name = "internal"
    container_port = "${var.blabla_port}"
  }

  depends_on = [
    "aws_iam_role.ecs_service",
    "aws_elb.blabla",
    "aws_iam_role.blabla",
    "aws_ecs_task_definition.blabla"
  ]

  lifecycle {
    ignore_changes = ["task_definition"] # the same here, do nothing if it was already installed
  }
}

@KIVagant μ•„ , μ €λŠ” ignore_changes 라이프 사이클 후크λ₯Ό 가지고 λ†€κ² μŠ΅λ‹ˆλ‹€!

μ•„, μ’‹μ•„, λ‚˜λ„ κ·Έκ±Έ 가지고 λ†€κ²Œ. 그러면 μž‘μ—… μ •μ˜ ν…œν”Œλ¦Ώ νŒŒμΌμ„ λ³€κ²½ν•  λ•Œ μˆ˜λ™μœΌλ‘œ taint ν•΄μ•Όν•©λ‹ˆκΉŒ?

그것은 λ‹Ήμ‹ μ˜ λͺ©ν‘œμ— 달렀 μžˆμŠ΅λ‹ˆλ‹€. 우리의 경우 ν…œν”Œλ¦Ώμ—λŠ” Terraform이 처음 μ„€μΉ˜ ν•œ ν›„ μ±„μš°λŠ” 비밀에 λŒ€ν•œ 빈 곡간이 ν¬ν•¨λ˜μ–΄ 있으며 κΈ°μ‘΄ μž‘μ—… μ •μ˜λ₯Ό λ³€κ²½ν•˜λŠ” 것을 ν—ˆμš©ν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€. 그리고 처음 μ„€μΉ˜ ν›„ μˆ˜λ™μœΌλ‘œ μ œμ–΄ν•©λ‹ˆλ‹€.

@dendrochronology 응닡이 μ—†μ–΄μ„œ μ£„μ†‘ν•©λ‹ˆλ‹€. 맀 μ‹€ν–‰λ§ˆλ‹€ μž‘μ—… μ •μ˜λ₯Ό μ—…λ°μ΄νŠΈν•˜κΈ°λ₯Ό μ›ν•˜κΈ° λ•Œλ¬Έμ— μ‹€μ œλ‘œ 문제λ₯Ό λ°œκ²¬ν•˜μ§€ λͺ»ν–ˆμŠ΅λ‹ˆλ‹€. 해결책을 찾으 μ…¨κΈ°λ₯Ό λ°”λžλ‹ˆλ‹€.

이것은 μ—¬μ „νžˆ β€‹β€‹λ¬Έμ œμΈ 것 κ°™μŠ΅λ‹ˆλ‹€. λ¬Έμ„œμ—μžˆλŠ” 것을 μ‚¬μš©ν•˜λ©΄ λ‹€μŒκ³Ό 같은 κ²°κ³Όλ₯Ό 얻을 수 μžˆμŠ΅λ‹ˆλ‹€.

Error: Error running plan: 1 error(s) occurred:

* module.frontshop_staging.data.aws_ecs_task_definition.frontshop: 1 error(s) occurred:

* module.frontshop_staging.data.aws_ecs_task_definition.frontshop: Resource 'aws_ecs_task_definition.frontshop' not found for variable 'aws_ecs_task_definition.frontshop.family'

μœ μΌν•œ λ³€κ²½ 사항은 이것이 λͺ¨λ“ˆ 내뢀에 있고 이름이 frontshopμ΄λΌλŠ” κ²ƒμž…λ‹ˆλ‹€. λͺ¨λ“ˆκ³Ό 관련이 μžˆμŠ΅λ‹ˆκΉŒ?
λ‚˜λŠ” λ˜ν•œ dependent_on으둜 μ‹œλ„ν–ˆμ§€λ§Œ μž‘λ™ν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€. λ¦¬μ†ŒμŠ€λ₯Ό μƒμ„±ν•˜κΈ° μœ„ν•΄ 첫 번째 버전을 μ μš©ν•œ λ‹€μŒ max와 ν•¨κ»˜ 데이터λ₯Ό μ‚¬μš©ν•˜μ—¬ μ΅œμ‹  버전을 κ°€μ Έμ˜¬ μƒκ°μž…λ‹ˆλ‹€.

사싀, λ‚΄κ°€ λ§ν•œ 것은 κ±°μ§“μž…λ‹ˆλ‹€. μ»¨ν…Œμ΄λ„ˆ μ •μ˜μ— 잘λͺ»λœ JSON이 있고 λ‚΄ 것이 heredoc ꡬ문을 μ‚¬μš©ν•˜μ§€ μ•Šκ³  ν…œν”Œλ¦Ώμ΄μžˆλŠ” json νŒŒμΌμ„ μ‚¬μš©ν•˜λŠ” 경우 λ¬Έμ œκ°€μžˆλŠ” κ²ƒμ²˜λŸΌ 보이며 μ»¨ν…Œμ΄λ„ˆμ˜ λ°°μ—΄μ΄μ–΄μ•Όν•©λ‹ˆλ‹€. 단 ν•˜λ‚˜μ˜ μ£Όμš” 개체.
μ—¬κΈ°μ—μ„œ λ‚΄κ°€ 찾은 κ³³ https://github.com/terraform-providers/terraform-provider-aws/issues/2026

쒋은 μ‚¬λžŒ @jaysonsantos. 제 κ²½μš°μ—λŠ” json ꡬ문 였λ₯˜λ‘œ 인해 였λ₯˜κ°€ λ°œμƒν–ˆμŠ΅λ‹ˆλ‹€.

κ³΅κΈ‰μžλ₯Ό 1.59 및 terraform 11.11둜 μ—…κ·Έλ ˆμ΄λ“œν•΄λ„ μ—¬μ „νžˆμ΄ 였λ₯˜κ°€ ν‘œμ‹œλ©λ‹ˆλ‹€.

terraform destroyκ°€ 였λ₯˜μ—†μ΄ μ™„λ£Œλ˜λ©΄ dependent_on없이 μ •μƒμ μœΌλ‘œ μž‘λ™ν•©λ‹ˆλ‹€.

κ·ΈλŸ¬λ‚˜ 예λ₯Ό λ“€μ–΄ terraform destroyκ°€ λ‹€λ₯Έ μž‘μ—…μ—μ„œ μ‹€νŒ¨ν•˜λŠ” 경우 :

 Error removing user, role, or group list from IAM Policy Detach bootstrap-iam-group-attach1:
– NoSuchEntity

ecs μ„œλΉ„μŠ€μ™€ 관련이 μ—†μŠ΅λ‹ˆλ‹€. ν…ŒλΌ 폼을 μ‹€ν–‰ν•˜λ©΄ 두 번째둜 νŒŒκ΄΄λ˜λŠ” λ¬Έμ œκ°€ ν•΄κ²°λ©λ‹ˆλ‹€. 두 번째 νŒ¨μŠ€μ—μ„œ

Failed getting task definition ClientException: Unable to describe task definition.

였λ₯˜κ°€ λ‹€μ‹œ λ°œμƒν•˜κ³  μƒνƒœ 파일이 μ†μƒλ˜μ—ˆμŠ΅λ‹ˆλ‹€.

이 λ¬Έμ œλŠ” μ €μ—κ²Œ λͺ…ν™•ν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€. 일뢀 μ‚¬λžŒλ“€μ€ μž‘μ—… μ •μ˜λ₯Ό μœ„ν•΄ 데이터 μ†ŒμŠ€μ—μ„œ dependent_on을 μ‚¬μš©ν•΄μ„œλŠ” μ•ˆλœλ‹€κ³  μ£Όμž₯ν•˜λŠ” κ²ƒμ²˜λŸΌ λ³΄μ΄μ§€λ§Œ 처음 μ‹€ν–‰ν•˜λ©΄ λ¦¬μ†ŒμŠ€κ°€ μ‘΄μž¬ν•˜μ§€ μ•ŠκΈ° λ•Œλ¬Έμ— 항상 μ‹€νŒ¨ν•©λ‹ˆλ‹€.

이 문제λ₯Ό ν•΄κ²°ν•˜λŠ” λ‹€λ₯Έ λͺ¨λ“  μ‚¬λžŒμ„μœ„ν•œ μ°Έκ³  자료 : @skorfmann 은이 MR https://github.com/terraform-providers/terraform-provider-aws/pull/10247에 μ„€λͺ…λ˜μ–΄ 있으며 aws_ecs_task_definition.self.revision μ‚¬μš©ν•˜λŠ” 더 λ‚˜μ€ ν•΄κ²° 방법 κ³Ό κ·Έ 이유λ₯Ό μ„€λͺ…ν•©λ‹ˆλ‹€. λ…Όμ˜ 된 depends_on μ ‘κ·Ό 방식은 당신이 μ›ν•˜λŠ” 것이 μ•„λ‹™λ‹ˆλ‹€!

이것은 μžμ›μ΄ μ²˜μŒμ— 둀아웃 될 λ•Œ μž‘μ—… μ •μ˜κ°€μ—†λŠ” 문제λ₯Ό ν•΄κ²°ν•˜λŠ” κ²ƒμž…λ‹ˆλ‹€. "task_family"λ₯Ό 직접 μ°Έμ‘°ν•˜λŠ” λ¬Έμ„œν™” μ˜ˆμ œλŠ” μž‘λ™ν•˜μ§€ μ•Šκ³  처음 적용 ν•  λ•Œ 였λ₯˜μ™€ ν•¨κ»˜ μ’…λ£Œλ©λ‹ˆλ‹€. 이 호 # 1274 μ°Έμ‘°

κ·Έ μ΄μœ λŠ” 데이터 μ†ŒμŠ€κ°€ λˆ„λ½ 된 데이터λ₯Ό μ •μƒμ μœΌλ‘œ μ²˜λ¦¬ν•˜μ§€ μ•ŠκΈ° λ•Œλ¬Έμž…λ‹ˆλ‹€. λΆˆν–‰νžˆλ„ 여기에 μ–ΈκΈ‰ λœλŒ€λ‘œ hashicorp / terraform # 16380 (주석)은 ν•΄κ²°λ˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€. μ œμ•ˆ 된 ν•΄κ²° 방법 쀑 ν•˜λ‚˜λŠ” depends_on 을 μΆ”κ°€ν•˜λŠ” κ²ƒμž…λ‹ˆλ‹€. κ·ΈλŸ¬λ‚˜ 이둜 인해 μ‹€μ œλ‘œ λ³€κ²½λ˜μ§€λŠ” μ•Šλ”λΌλ„ ν…ŒλΌ 폼 κ³„νš 좜λ ₯에 잠재적 인 변경이 λ°œμƒν•©λ‹ˆλ‹€. λ˜ν•œ Terraform λ¬Έμ„œ μžμ²΄μ— μ˜ν•΄ ꢌμž₯λ˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€.

이 μŠ€λ ˆλ“œλŠ” λͺ‡ 가지 λ‹€λ₯Έ ν•΄κ²° 방법을 μ–ΈκΈ‰ν•˜μ§€λ§Œ 그쀑 μ–΄λŠ 것도 μ μ ˆν•œ hashicorp / terraform # 16380으둜 보이지 μ•ŠμŠ΅λ‹ˆλ‹€.

aws_ecs_task_definition.self.revision λŠ” λ¦¬μ†ŒμŠ€κ°€ 생성 된 후에 만 ​​참쑰 ν•  수 μžˆμŠ΅λ‹ˆλ‹€ (μ½”λ“œμ— μ΄λ―ΈμžˆλŠ” νŒ¨λ°€λ¦¬μ™€ 달리). λΆ„λͺ…νžˆ 이것은 Terraform이 쒅속성을 μ˜¬λ°”λ₯΄κ²Œ ν•΄κ²°ν•˜κ³  데이터 μ†ŒμŠ€κ°€ μ˜ˆμƒλŒ€λ‘œ μž‘λ™ν•˜λ„λ‘ν•©λ‹ˆλ‹€.

이 νŽ˜μ΄μ§€κ°€ 도움이 λ˜μ—ˆλ‚˜μš”?
0 / 5 - 0 λ“±κΈ‰