Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add project API Gateway #18

Merged
merged 12 commits into from
Apr 5, 2023
Prev Previous commit
Next Next commit
undo changes to service level api gateway deployment
  • Loading branch information
ryanghunter committed Apr 5, 2023
commit 5c9e353a3109900d95aa9c9ac2819e78088b8851
Original file line number Diff line number Diff line change
Expand Up @@ -42,34 +42,6 @@ data "aws_ssm_parameter" "api_gateway_integration_uds_collections_create_dapa_fu
name = var.ssm_param_api_gateway_integration_uds_collections_create_dapa_function_name
}

module "api_gateway_integration_uds_auth_add_function_name"{
source = "BardiaN/ssm-parameter-with-default-value/aws"
version = "0.1.1"
ssm_key = var.ssm_param_api_gateway_integration_uds_auth_add_function_name_function_name
ssm_default_value = ""
}

module "api_gateway_integration_uds_auth_list_function_name"{
source = "BardiaN/ssm-parameter-with-default-value/aws"
version = "0.1.1"
ssm_key = var.ssm_param_api_gateway_integration_uds_auth_list_function_name_function_name
ssm_default_value = ""
}

module "api_gateway_integration_uds_auth_delete_function_name"{
source = "BardiaN/ssm-parameter-with-default-value/aws"
version = "0.1.1"
ssm_key = var.ssm_param_api_gateway_integration_uds_auth_delete_function_name_function_name
ssm_default_value = ""
}

module "api_gateway_integration_uds_setup_es_function_name"{
source = "BardiaN/ssm-parameter-with-default-value/aws"
version = "0.1.1"
ssm_key = var.ssm_param_api_gateway_integration_uds_setup_es_function_name_function_name
ssm_default_value = ""
}
/*
data "aws_ssm_parameter" "api_gateway_integration_uds_auth_add_function_name" {
name = var.ssm_param_api_gateway_integration_uds_auth_add_function_name_function_name
}
Expand All @@ -82,7 +54,6 @@ data "aws_ssm_parameter" "api_gateway_integration_uds_auth_delete_function_name"
data "aws_ssm_parameter" "api_gateway_integration_uds_setup_es_function_name" {
name = var.ssm_param_api_gateway_integration_uds_setup_es_function_name_function_name
}
*/

data "template_file" "api_template" {
template = file("./terraform-modules/api-gateway/unity-rest-api-gateway-oas30.yaml")
Expand Down Expand Up @@ -113,14 +84,6 @@ resource "aws_api_gateway_deployment" "api-gateway-deployment" {
}
}

resource "aws_ssm_parameter" "api_gateway_rest_api_id_parameter"{
name = format("/unity/%s/%s-%s/api-gateway/rest-api-id", var.rest_api_stage, var.namespace, var.counter)
type = "String"
value = "${aws_api_gateway_rest_api.rest_api.id}"
overwrite = true
depends_on = [aws_api_gateway_rest_api.rest_api]
}

resource "aws_lambda_permission" "uds_granules_dapa_lambda_permission" {
statement_id = "AllowUDSGranulesDapaInvoke"
action = "lambda:InvokeFunction"
Expand Down Expand Up @@ -156,28 +119,25 @@ resource "aws_lambda_permission" "uds_collections_ingest_dapa_lambda_permission"


resource "aws_lambda_permission" "uds_setup_es_lambda_permission" {
count = module.api_gateway_integration_uds_setup_es_function_name.value != "" ? 1 : 0
statement_id = "AllowUDSCollectionsIngestDapaInvoke"
action = "lambda:InvokeFunction"
function_name = module.api_gateway_integration_uds_setup_es_function_name.value
function_name = data.aws_ssm_parameter.api_gateway_integration_uds_setup_es_function_name.value
principal = "apigateway.amazonaws.com"
source_arn = "${aws_api_gateway_rest_api.rest_api.execution_arn}/*/PUT/am-uds-dapa/collections/auth/setup_es"
}

resource "aws_lambda_permission" "uds_auth_list_lambda_permission" {
count = module.api_gateway_integration_uds_auth_list_function_name.value != "" ? 1 : 0
statement_id = "AllowUDSCollectionsIngestDapaInvoke"
action = "lambda:InvokeFunction"
function_name = module.api_gateway_integration_uds_auth_list_function_name.value
function_name = data.aws_ssm_parameter.api_gateway_integration_uds_auth_list_function_name.value
principal = "apigateway.amazonaws.com"
source_arn = "${aws_api_gateway_rest_api.rest_api.execution_arn}/*/GET/am-uds-dapa/collections/auth/admin"
}

resource "aws_lambda_permission" "uds_auth_delete_lambda_permission" {
count = module.api_gateway_integration_uds_auth_delete_function_name.value != "" ? 1 : 0
statement_id = "AllowUDSCollectionsIngestDapaInvoke"
action = "lambda:InvokeFunction"
function_name = module.api_gateway_integration_uds_auth_delete_function_name.value
function_name = data.aws_ssm_parameter.api_gateway_integration_uds_auth_delete_function_name.value
principal = "apigateway.amazonaws.com"
source_arn = "${aws_api_gateway_rest_api.rest_api.execution_arn}/*/DELETE/am-uds-dapa/collections/auth/admin"
}
Expand All @@ -191,5 +151,5 @@ resource "aws_lambda_permission" "uds_collections_create_dapa_lambda_permission"
}

output "url" {
value = "${aws_api_gateway_deployment.api-gateway-deployment.invoke_url}"
value = "${aws_api_gateway_deployment.api-gateway-deployment.invoke_url}/api"
}
Original file line number Diff line number Diff line change
Expand Up @@ -729,7 +729,7 @@ paths:
schema:
type: "string"
security:
- Unity_API_Gateway_Cognito_Authorizer: []
- Unity_API_Gateway_Lambda_Authorizer: []
x-amazon-apigateway-request-validator: "Validate body, query string parameters,\
\ and headers"
x-amazon-apigateway-integration:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,18 +16,6 @@ variable "rest_api_stage" {
default = "dev"
}

variable "namespace" {
description = "Namespace for the Unity SPS HySDS-related Kubernetes resources"
type = string
default = "unity-sps"
}

variable "counter" {
description = "value"
type = number
default = 1
}

# -----------------------------------------------------------------
# SSM Params
# -----------------------------------------------------------------
Expand Down Expand Up @@ -105,4 +93,4 @@ variable "ssm_param_api_gateway_integration_uds_auth_delete_function_name_functi
type = string
description = "SSM Param for Authorization Record Deletion Function Name"
default = "/unity/unity-ds/api-gateway/integrations/cumulus_auth_delete-function-name"
}
}