@@ -6,89 +6,94 @@ resource "random_string" "build_name" {
6
6
}
7
7
8
8
locals {
9
- build = " ${ file (format (" %s/%s" , var. source_dir , " /Dockerfile" ))} "
9
+ build = file (format (" %s/%s" , var. source_dir , " /Dockerfile" ))
10
10
}
11
11
12
12
resource "null_resource" "task_build" {
13
- triggers {
14
- build = " ${ local . build } "
13
+ triggers = {
14
+ build = local.build
15
15
}
16
16
17
17
provisioner "local-exec" {
18
- working_dir = " ${ var . source_dir } "
18
+ working_dir = var. source_dir
19
19
20
20
command = << EOF
21
21
docker build -t ${ random_string . build_name . result } .
22
22
EOF
23
+
23
24
}
24
25
}
25
26
26
27
resource "null_resource" "task_tag" {
27
- triggers {
28
- build = " ${ local . build } "
28
+ triggers = {
29
+ build = local.build
29
30
}
30
31
31
32
provisioner "local-exec" {
32
- working_dir = " ${ var . source_dir } "
33
+ working_dir = var. source_dir
33
34
34
35
command = << EOF
35
36
docker tag ${ random_string . build_name . result } :latest ${ var . repository_url } :latest
36
37
EOF
38
+
37
39
}
38
40
39
- depends_on = [" null_resource.task_build" ]
41
+ depends_on = [null_resource. task_build ]
40
42
}
41
43
42
44
resource "null_resource" "task_push" {
43
- count = " ${ var . assume_role_arn == " " ? 1 : 0 } "
45
+ count = var. assume_role_arn == " " ? 1 : 0
44
46
45
- triggers {
46
- build = " ${ local . build } "
47
+ triggers = {
48
+ build = local.build
47
49
}
48
50
49
51
provisioner "local-exec" {
50
- working_dir = " ${ var . source_dir } "
52
+ working_dir = var. source_dir
51
53
52
54
environment = {
53
- REGISTRY_ID = " ${ var . registry_id } "
54
- REPOSITORY_URL = " ${ var . repository_url } "
55
+ REGISTRY_ID = var.registry_id
56
+ REPOSITORY_URL = var.repository_url
55
57
}
56
58
57
59
command = << EOF
58
- aws ecr get-login --no-include-email --registry-ids "$$ REGISTRY_ID" | /bin/sh
59
- docker push "$$ REPOSITORY_URL:latest"
60
+ aws ecr get-login --no-include-email --registry-ids "$REGISTRY_ID" | /bin/sh
61
+ docker push "$REPOSITORY_URL:latest"
60
62
EOF
63
+
61
64
}
62
65
63
- depends_on = [" null_resource.task_tag" ]
66
+ depends_on = [null_resource. task_tag ]
64
67
}
65
68
66
69
resource "null_resource" "task_push_with_role" {
67
- count = " ${ var . assume_role_arn == " " ? 0 : 1 } "
70
+ count = var. assume_role_arn == " " ? 0 : 1
68
71
69
- triggers {
70
- build = " ${ local . build } "
72
+ triggers = {
73
+ build = local.build
71
74
}
72
75
73
76
provisioner "local-exec" {
74
- working_dir = " ${ var . source_dir } "
77
+ working_dir = var. source_dir
75
78
76
79
environment = {
77
- REGISTRY_ID = " ${ var . registry_id } "
78
- REPOSITORY_URL = " ${ var . repository_url } "
79
- ASSUME_ROLE_ARN = " ${ var . assume_role_arn } "
80
+ REGISTRY_ID = var.registry_id
81
+ REPOSITORY_URL = var.repository_url
82
+ ASSUME_ROLE_ARN = var.assume_role_arn
80
83
}
81
84
82
85
command = << EOF
83
- CONFIG=$$ (aws sts assume-role --role-arn "$ $ASSUME_ROLE_ARN" --role-session-name tf-tmp --output json)
84
- export AWS_ACCESS_KEY_ID=$$ (echo "$ $CONFIG" | jq -r .Credentials.AccessKeyId)
85
- export AWS_SECRET_ACCESS_KEY=$$ (echo "$ $CONFIG" | jq -r .Credentials.SecretAccessKey)
86
- export AWS_SESSION_TOKEN=$$ (echo "$ $CONFIG" | jq -r .Credentials.SessionToken)
86
+ CONFIG=$(aws sts assume-role --role-arn "$ASSUME_ROLE_ARN" --role-session-name tf-tmp --output json)
87
+ export AWS_ACCESS_KEY_ID=$(echo "$CONFIG" | jq -r .Credentials.AccessKeyId)
88
+ export AWS_SECRET_ACCESS_KEY=$(echo "$CONFIG" | jq -r .Credentials.SecretAccessKey)
89
+ export AWS_SESSION_TOKEN=$(echo "$CONFIG" | jq -r .Credentials.SessionToken)
87
90
88
- aws ecr get-login --no-include-email --registry-ids "$$ REGISTRY_ID" | /bin/sh
89
- docker push "$$ REPOSITORY_URL:latest"
91
+ aws ecr get-login --no-include-email --registry-ids "$REGISTRY_ID" | /bin/sh
92
+ docker push "$REPOSITORY_URL:latest"
90
93
EOF
94
+
91
95
}
92
96
93
- depends_on = [" null_resource.task_tag" ]
97
+ depends_on = [null_resource. task_tag ]
94
98
}
99
+
0 commit comments