You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
[DEV-3762] GitHub action deploy ivs function (#2115)
* github action to deploy ivs function
* Github action to deploy ivs lambda
* missed paramenter github repository
* fix missed variables and output parameter
* fix missed artifact to deploy the lambda function at the first time
* update readme and arcive file
* fix archive file
* update iam role in deploy action
|[archive_file.webinar_metrics](https://registry.terraform.io/providers/hashicorp/archive/latest/docs/data-sources/file)| data source |
64
84
|[aws_caller_identity.current](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/data-sources/caller_identity)| data source |
85
+
|[aws_iam_policy_document.deploy_github](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/data-sources/iam_policy_document)| data source |
65
86
|[aws_ivs_stream_key.channels](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/data-sources/ivs_stream_key)| data source |
66
87
|[aws_route53_zone.selected](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/data-sources/route53_zone)| data source |
67
88
@@ -70,12 +91,15 @@ No modules.
70
91
| Name | Description | Type | Default | Required |
| <aname="input_github_repository"></a> [github\_repository](#input\_github\_repository)| The GitHub repository (e.g., org/repo) allowed to assume the deploy role via OIDC. |`string`| n/a | yes |
73
95
| <aname="input_project_name"></a> [project\_name](#input\_project\_name)| A name for the project to prefix resources. |`string`| n/a | yes |
74
96
| <aname="input_strapi_api_url"></a> [strapi\_api\_url](#input\_strapi\_api\_url)| The URL of the Strapi API. |`string`| n/a | yes |
75
97
| <aname="input_aws_region"></a> [aws\_region](#input\_aws\_region)| The AWS region to deploy resources in. |`string`|`"eu-central-1"`| no |
76
98
| <aname="input_custom_domain_name"></a> [custom\_domain\_name](#input\_custom\_domain\_name)| The custom domain name (e.g., video.example.com) to assign to the CloudFront distribution. |`string`|`null`| no |
77
99
| <aname="input_ivs_channels"></a> [ivs\_channels](#input\_ivs\_channels)| A map of IVS channels to create. The key will be used for resource identification. | <pre>map(object({<br/> name = string<br/> latency_mode = optional(string, "LOW")<br/> type = optional(string, "STANDARD")<br/> }))</pre> |`{}`| no |
78
100
| <aname="input_route53_zone_id"></a> [route53\_zone\_id](#input\_route53\_zone\_id)| The ID of the existing Route 53 hosted zone for the custom domain. |`string`|`null`| no |
101
+
| <aname="input_webinar_metrics_channel_key"></a> [webinar\_metrics\_channel\_key](#input\_webinar\_metrics\_channel\_key)| The key from ivs\_channels to use for the webinar metrics Lambda. If null, IVS\_CHANNEL\_ARN is not set and the Lambda uses its default. |`string`|`null`| no |
102
+
| <aname="input_webinar_metrics_stage_name"></a> [webinar\_metrics\_stage\_name](#input\_webinar\_metrics\_stage\_name)| The api webinar metrics stage name. |`string`|`"v1"`| no |
79
103
80
104
## Outputs
81
105
@@ -85,5 +109,10 @@ No modules.
85
109
| <aname="output_athena_results_bucket_name"></a> [athena\_results\_bucket\_name](#output\_athena\_results\_bucket\_name)| The name of the S3 bucket where Athena query results are stored. |
86
110
| <aname="output_athena_workgroup_name"></a> [athena\_workgroup\_name](#output\_athena\_workgroup\_name)| The name of the Athena workgroup for running queries. |
87
111
| <aname="output_cloudfront_logs_bucket_name"></a> [cloudfront\_logs\_bucket\_name](#output\_cloudfront\_logs\_bucket\_name)| The name of the S3 bucket where CloudFront access logs are stored. |
112
+
| <aname="output_deploy_lambda_role_arn"></a> [deploy\_lambda\_role\_arn](#output\_deploy\_lambda\_role\_arn)| The ARN of the IAM role used by GitHub Actions to deploy the IVS video processing Lambda. |
88
113
| <aname="output_ivs_channel_details"></a> [ivs\_channel\_details](#output\_ivs\_channel\_details)| A map containing the details for each created IVS channel. |
89
114
| <aname="output_s3_recording_bucket_name"></a> [s3\_recording\_bucket\_name](#output\_s3\_recording\_bucket\_name)| The name of the S3 bucket where all recordings will be stored. |
115
+
| <aname="output_webinar_metrics_api_key_id"></a> [webinar\_metrics\_api\_key\_id](#output\_webinar\_metrics\_api\_key\_id)| The ID of the API key for the webinar metrics API. Retrieve the value with: aws apigateway get-api-key --api-key <id> --include-value |
116
+
| <aname="output_webinar_metrics_api_url"></a> [webinar\_metrics\_api\_url](#output\_webinar\_metrics\_api\_url)| The invoke URL of the webinar metrics API Gateway. |
117
+
| <aname="output_webinar_metrics_lambda_arn"></a> [webinar\_metrics\_lambda\_arn](#output\_webinar\_metrics\_lambda\_arn)| The ARN of the webinar metrics Lambda function. |
118
+
| <aname="output_webinar_metrics_lambda_name"></a> [webinar\_metrics\_lambda\_name](#output\_webinar\_metrics\_lambda\_name)| The name of the webinar metrics Lambda function. |
0 commit comments