11locals {
2- # If you want to track code changes in .js/.json:
32 sso_authenticator_files = fileset (local. sso_authenticator_dir , " *.{js,json}" )
4- sso_authenticator_sha = sha256 (join (" ," , [
3+ sso_authenticator_sha = sha256 (join (" ," , [
54 for file in local . sso_authenticator_files : filesha256 (" ${ local . sso_authenticator_dir } /${ file } " )
65 ]))
76
87 sso_callback_files = fileset (local. sso_callback_dir , " *.{js,json}" )
9- sso_callback_sha = sha256 (join (" ," , [
8+ sso_callback_sha = sha256 (join (" ," , [
109 for file in local . sso_callback_files : filesha256 (" ${ local . sso_callback_dir } /${ file } " )
1110 ]))
1211}
1312
14- # ##############################
15- # Package & deploy SSO Authenticator
16- # ##############################
17-
18- resource "null_resource" "sso_authenticator" {
19- # No local-exec block here anymore
13+ resource "null_resource" "prepare_lambda_dirs" {
2014 triggers = {
21- deployable_dir = local.sso_authenticator_sha
15+ authenticator_dir_sha = local.sso_authenticator_sha
16+ callback_dir_sha = local.sso_callback_sha
2217 }
2318}
2419
2520data "archive_file" "sso_authenticator" {
26- depends_on = [null_resource. sso_authenticator ]
21+ depends_on = [null_resource. prepare_lambda_dirs ]
2722 type = " zip"
2823 source_dir = local. sso_authenticator_dir
2924 output_path = " ${ local . sso_authenticator_dir } /payload.zip"
@@ -32,7 +27,7 @@ data "archive_file" "sso_authenticator" {
3227}
3328
3429resource "aws_lambda_function" "sso_authenticator" {
35- function_name = " ${ lower (var. project_code )} -sso-authenticator"
30+ function_name = " ${ lower (var. name_prefix ) } - ${ lower (var . app_code )} -sso-authenticator"
3631 role = aws_iam_role. lambda_edge . arn
3732 filename = data. archive_file . sso_authenticator . output_path
3833 runtime = var. lambda_runtime
@@ -41,19 +36,8 @@ resource "aws_lambda_function" "sso_authenticator" {
4136 publish = true
4237}
4338
44- # ##############################
45- # Package & deploy SSO Callback
46- # ##############################
47-
48- resource "null_resource" "sso_callback" {
49- # No local-exec block here anymore
50- triggers = {
51- deployable_dir = local.sso_callback_sha
52- }
53- }
54-
5539data "archive_file" "sso_callback" {
56- depends_on = [null_resource. sso_callback ]
40+ depends_on = [null_resource. prepare_lambda_dirs ]
5741 type = " zip"
5842 source_dir = local. sso_callback_dir
5943 output_path = " ${ local . sso_callback_dir } /payload.zip"
@@ -62,11 +46,11 @@ data "archive_file" "sso_callback" {
6246}
6347
6448resource "aws_lambda_function" "sso_callback" {
65- function_name = " ${ lower (var. project_code )} -sso-callback"
49+ function_name = " ${ lower (var. name_prefix ) } - ${ lower (var . app_code )} -sso-callback"
6650 role = aws_iam_role. lambda_edge . arn
6751 filename = data. archive_file . sso_callback . output_path
6852 runtime = var. lambda_runtime
6953 handler = " callback-handler.handler"
7054 source_code_hash = data. archive_file . sso_callback . output_base64sha256
7155 publish = true
72- }
56+ }
0 commit comments