Created
December 22, 2021 22:04
-
-
Save hmarcelodn/76582d9fa2ebd6b419470fb9cc294044 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| #------------------------------- | |
| # AWS Provider | |
| #------------------------------- | |
| provider "aws" { | |
| profile = "default" | |
| region = "us-east-2" | |
| } | |
| #------------------------------- | |
| # Elastic Beanstalk Application | |
| #------------------------------- | |
| resource "aws_elastic_beanstalk_application" "mudbay-application" { | |
| name = "mudbay-storeops-application" | |
| description = "mudbay-storeops-application" | |
| tags = { | |
| Name = "mudbay-storeops-application" | |
| } | |
| } | |
| #------------------------------- | |
| # Elastic Beanstalk Environment | |
| #------------------------------- | |
| resource "aws_elastic_beanstalk_environment" "mudbay-environment" { | |
| name = "development" | |
| application = aws_elastic_beanstalk_application.mudbay-application.name | |
| solution_stack_name = "64bit Amazon Linux 2 v5.3.1 running Node.js 14" | |
| setting { | |
| namespace = "aws:autoscaling:launchconfiguration" | |
| name = "IamInstanceProfile" | |
| value = "aws-elasticbeanstalk-ec2-role" | |
| } | |
| setting { | |
| namespace = "aws:elb:listener:443" | |
| name = "ListenerProtocol" | |
| value = "HTTPS" | |
| } | |
| setting { | |
| namespace = "aws:elb:listener:443" | |
| name = "InstancePort" | |
| value = 80 | |
| } | |
| setting { | |
| namespace = "aws:elb:listener:443" | |
| name = "InstanceProtocol" | |
| value = "HTTP" | |
| } | |
| setting { | |
| namespace = "aws:elb:listener:443" | |
| name = "SSLCertificateId" | |
| value = "" | |
| } | |
| setting { | |
| namespace = "aws:elb:listener:443" | |
| name = "ListenerEnabled" | |
| value = true | |
| } | |
| setting { | |
| namespace = "aws:elasticbeanstalk:application:environment" | |
| name = "COGNITO_CLIENT_ID" | |
| value = "" | |
| } | |
| setting { | |
| namespace = "aws:elasticbeanstalk:application:environment" | |
| name = "COGNITO_CLIENT_SECRET" | |
| value = "" | |
| } | |
| setting { | |
| namespace = "aws:elasticbeanstalk:application:environment" | |
| name = "COGNITO_USERINFO_URL" | |
| value = "" | |
| } | |
| setting { | |
| namespace = "aws:elasticbeanstalk:application:environment" | |
| name = "COGNITO_TOKEN_URL" | |
| value = "" | |
| } | |
| setting { | |
| namespace = "aws:elasticbeanstalk:application:environment" | |
| name = "COGNITO_WELLKNOWN_URL" | |
| value = "n" | |
| } | |
| setting { | |
| namespace = "aws:elasticbeanstalk:application:environment" | |
| name = "COGNITO_CALLBACK_URL" | |
| value = "" | |
| } | |
| setting { | |
| namespace = "aws:elasticbeanstalk:application:environment" | |
| name = "SENTRY_DSN" | |
| value = "" | |
| } | |
| setting { | |
| namespace = "aws:elasticbeanstalk:application:environment" | |
| name = "SENTRY_ENVIRONMENT_TAG" | |
| value = "" | |
| } | |
| setting { | |
| namespace = "aws:elasticbeanstalk:application:environment" | |
| name = "SALESFORCE_SOM_CONSUMER_KEY" | |
| value = "" | |
| } | |
| setting { | |
| namespace = "aws:elasticbeanstalk:application:environment" | |
| name = "SALESFORCE_SOM_USERNAME" | |
| value = "" | |
| } | |
| setting { | |
| namespace = "aws:elasticbeanstalk:application:environment" | |
| name = "SALESFORCE_LOGIN_AUDIENCE" | |
| value = "" | |
| } | |
| setting { | |
| namespace = "aws:elasticbeanstalk:application:environment" | |
| name = "SALESFORCE_SOM_ENDPOINT" | |
| value = "" | |
| } | |
| setting { | |
| namespace = "aws:elasticbeanstalk:application:environment" | |
| name = "ENCRYPTION_KEY" | |
| value = "" | |
| } | |
| setting { | |
| namespace = "aws:elasticbeanstalk:application:environment" | |
| name = "CORS_DOMAIN" | |
| value = "" | |
| } | |
| } | |
| resource "aws_elastic_beanstalk_environment" "mudbay-environment-uat" { | |
| name = "stage" | |
| application = aws_elastic_beanstalk_application.mudbay-application.name | |
| solution_stack_name = "64bit Amazon Linux 2 v5.3.1 running Node.js 14" | |
| setting { | |
| namespace = "aws:autoscaling:launchconfiguration" | |
| name = "IamInstanceProfile" | |
| value = "aws-elasticbeanstalk-ec2-role" | |
| } | |
| setting { | |
| namespace = "aws:elb:listener:443" | |
| name = "ListenerProtocol" | |
| value = "HTTPS" | |
| } | |
| setting { | |
| namespace = "aws:elb:listener:443" | |
| name = "InstancePort" | |
| value = 80 | |
| } | |
| setting { | |
| namespace = "aws:elb:listener:443" | |
| name = "InstanceProtocol" | |
| value = "HTTP" | |
| } | |
| setting { | |
| namespace = "aws:elb:listener:443" | |
| name = "SSLCertificateId" | |
| value = "" | |
| } | |
| setting { | |
| namespace = "aws:elb:listener:443" | |
| name = "ListenerEnabled" | |
| value = true | |
| } | |
| setting { | |
| namespace = "aws:elasticbeanstalk:application:environment" | |
| name = "COGNITO_CLIENT_ID" | |
| value = "" | |
| } | |
| setting { | |
| namespace = "aws:elasticbeanstalk:application:environment" | |
| name = "COGNITO_CLIENT_SECRET" | |
| value = "" | |
| } | |
| setting { | |
| namespace = "aws:elasticbeanstalk:application:environment" | |
| name = "COGNITO_USERINFO_URL" | |
| value = "" | |
| } | |
| setting { | |
| namespace = "aws:elasticbeanstalk:application:environment" | |
| name = "COGNITO_TOKEN_URL" | |
| value = "" | |
| } | |
| setting { | |
| namespace = "aws:elasticbeanstalk:application:environment" | |
| name = "COGNITO_WELLKNOWN_URL" | |
| value = "" | |
| } | |
| setting { | |
| namespace = "aws:elasticbeanstalk:application:environment" | |
| name = "COGNITO_CALLBACK_URL" | |
| value = "" | |
| } | |
| setting { | |
| namespace = "aws:elasticbeanstalk:application:environment" | |
| name = "SENTRY_DSN" | |
| value = "" | |
| } | |
| setting { | |
| namespace = "aws:elasticbeanstalk:application:environment" | |
| name = "SENTRY_ENVIRONMENT_TAG" | |
| value = "" | |
| } | |
| setting { | |
| namespace = "aws:elasticbeanstalk:application:environment" | |
| name = "SALESFORCE_SOM_CONSUMER_KEY" | |
| value = "" | |
| } | |
| setting { | |
| namespace = "aws:elasticbeanstalk:application:environment" | |
| name = "SALESFORCE_SOM_USERNAME" | |
| value = "" | |
| } | |
| setting { | |
| namespace = "aws:elasticbeanstalk:application:environment" | |
| name = "SALESFORCE_LOGIN_AUDIENCE" | |
| value = "" | |
| } | |
| setting { | |
| namespace = "aws:elasticbeanstalk:application:environment" | |
| name = "SALESFORCE_SOM_ENDPOINT" | |
| value = "" | |
| } | |
| setting { | |
| namespace = "aws:elasticbeanstalk:application:environment" | |
| name = "ENCRYPTION_KEY" | |
| value = "" | |
| } | |
| setting { | |
| namespace = "aws:elasticbeanstalk:application:environment" | |
| name = "CORS_DOMAIN" | |
| value = "" | |
| } | |
| } | |
| resource "aws_elastic_beanstalk_environment" "mudbay-environment-prod" { | |
| name = "prod" | |
| application = aws_elastic_beanstalk_application.mudbay-application.name | |
| solution_stack_name = "64bit Amazon Linux 2 v5.3.1 running Node.js 14" | |
| setting { | |
| namespace = "aws:autoscaling:launchconfiguration" | |
| name = "IamInstanceProfile" | |
| value = "aws-elasticbeanstalk-ec2-role" | |
| } | |
| setting { | |
| namespace = "aws:elasticbeanstalk:command" | |
| name = "DeploymentPolicy" | |
| value = "Rolling" | |
| } | |
| setting { | |
| namespace = "aws:autoscaling:asg" | |
| name = "MinSize" | |
| value = "2" | |
| } | |
| setting { | |
| namespace = "aws:autoscaling:asg" | |
| name = "MaxSize" | |
| value = "4" | |
| } | |
| setting { | |
| namespace = "aws:autoscaling:updatepolicy:rollingupdate" | |
| name = "RollingUpdateType" | |
| value = "Health" | |
| } | |
| setting { | |
| namespace = "aws:elasticbeanstalk:command" | |
| name = "BatchSizeType" | |
| value = "Fixed" | |
| } | |
| setting { | |
| namespace = "aws:elasticbeanstalk:command" | |
| name = "BatchSize" | |
| value = "1" | |
| } | |
| setting { | |
| namespace = "aws:elb:loadbalancer" | |
| name = "CrossZone" | |
| value = "true" | |
| } | |
| setting { | |
| namespace = "aws:elb:policies" | |
| name = "ConnectionDrainingEnabled" | |
| value = "true" | |
| } | |
| // Env Variables + HTTPs certificate + Cognito | |
| setting { | |
| namespace = "aws:elb:listener:443" | |
| name = "ListenerProtocol" | |
| value = "HTTPS" | |
| } | |
| setting { | |
| namespace = "aws:elb:listener:443" | |
| name = "InstancePort" | |
| value = 80 | |
| } | |
| setting { | |
| namespace = "aws:elb:listener:443" | |
| name = "InstanceProtocol" | |
| value = "HTTP" | |
| } | |
| setting { | |
| namespace = "aws:elb:listener:443" | |
| name = "SSLCertificateId" | |
| value = "" | |
| } | |
| setting { | |
| namespace = "aws:elb:listener:443" | |
| name = "ListenerEnabled" | |
| value = true | |
| } | |
| setting { | |
| namespace = "aws:elasticbeanstalk:application:environment" | |
| name = "COGNITO_CLIENT_ID" | |
| value = "" | |
| } | |
| setting { | |
| namespace = "aws:elasticbeanstalk:application:environment" | |
| name = "COGNITO_CLIENT_SECRET" | |
| value = "" | |
| } | |
| setting { | |
| namespace = "aws:elasticbeanstalk:application:environment" | |
| name = "COGNITO_USERINFO_URL" | |
| value = "" | |
| } | |
| setting { | |
| namespace = "aws:elasticbeanstalk:application:environment" | |
| name = "COGNITO_TOKEN_URL" | |
| value = "" | |
| } | |
| setting { | |
| namespace = "aws:elasticbeanstalk:application:environment" | |
| name = "COGNITO_WELLKNOWN_URL" | |
| value = "" | |
| } | |
| setting { | |
| namespace = "aws:elasticbeanstalk:application:environment" | |
| name = "COGNITO_CALLBACK_URL" | |
| value = "" | |
| } | |
| setting { | |
| namespace = "aws:elasticbeanstalk:application:environment" | |
| name = "SENTRY_DSN" | |
| value = "" | |
| } | |
| setting { | |
| namespace = "aws:elasticbeanstalk:application:environment" | |
| name = "SENTRY_ENVIRONMENT_TAG" | |
| value = "" | |
| } | |
| setting { | |
| namespace = "aws:elasticbeanstalk:application:environment" | |
| name = "SALESFORCE_SOM_CONSUMER_KEY" | |
| value = "" | |
| } | |
| setting { | |
| namespace = "aws:elasticbeanstalk:application:environment" | |
| name = "SALESFORCE_SOM_USERNAME" | |
| value = "" | |
| } | |
| setting { | |
| namespace = "aws:elasticbeanstalk:application:environment" | |
| name = "SALESFORCE_LOGIN_AUDIENCE" | |
| value = "" | |
| } | |
| setting { | |
| namespace = "aws:elasticbeanstalk:application:environment" | |
| name = "SALESFORCE_SOM_ENDPOINT" | |
| value = "" | |
| } | |
| setting { | |
| namespace = "aws:elasticbeanstalk:application:environment" | |
| name = "ENCRYPTION_KEY" | |
| value = "" | |
| } | |
| setting { | |
| namespace = "aws:elasticbeanstalk:application:environment" | |
| name = "CORS_DOMAIN" | |
| value = "" | |
| } | |
| } |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment