Amazon Connect > Dev -> UAT -> Production

0

Hi all.

Hope you're well.

Wondering if I'm able to pick your brains.

I'm currently deploying Amazon Connect, doing everything manually.

Let's say I have a blueprint design and I follow this design build, for every deployment I do.

The deployment of Amazon Connect is not only the configuration of Amazon Connect, including uploading around 15 flows, configuring the out of hours and so on, but it's also creating around 18 lambda functions, 6 DynamoDB tables, CloudFront, S3 buckets and so on.

As you can appreciate setting it up the first time was cool, until I've done quite a few of these.

I'd like to automate this process, taken into consideration several aspects.

  1. I want to deploy this whole architecture, or as much as possible from what I would call a golden image/blueprint. The only real change is the project name (where the connect deployment had the name of the project as well as all the lambda functions and so on) and the messages in the call flows change of course.

  2. I want to build this in a Dev/UAT environment and once signed off, I want to push the changes (call flows for example) to production.

  3. any further changes once project is live, it would be made in the Dev/UAT and pushed to production once ready. Therefore there is a copy of the Amazon Connect implementation in two places let's say.

I know there are several options/tools.

CloudFormation AWS SAM AWS SDK Terraform And so on.

My ask is two things basically.

  1. I want to automate as much as possible and run what I can from a script, where all I change for this initial build is the project name (variable)

  2. Copy call flows for example from UAT/Dev to Production.

I've gone through some of the documentation, specially the API stuff but it's a bit confusing how to put it all together and what ideally a good path is. Also for instance on CloudFormation it seems there are less amazon configurations than through the API but then for instance you can do a lot on AWS SDK, which then "converts" it to CloudFormation. I presumed that irrespective of using AWS Sam/AWS SDK/CloudFormation, the features/amazon connect functionality should be the same on all of them for instance configure out of hours ? Hope this makes sense.

What are your thoughts? Any input would really be appreciated and hopefully this can help others.

Thanks so much

2 Answers
0

Hello,

There are several options to deploy Amazon Connect as Infrastructure as Code. It depends on your needs you could use AWS CloudFormation, AWS SDK or others.

Said that, for your use case and customization probably you can not automate 100% directly because AWS is releasing new features constantly day by day.

I would suggest you to have a look into AWS CDK, a nice way to simplify automation (https://docs.aws.amazon.com/cdk/api/v2/docs/aws-cdk-lib.aws_connect-readme.html) and use AWS CDK custom resources available in CDK (https://docs.aws.amazon.com/cdk/api/v2/docs/aws-cdk-lib.custom_resources.AwsCustomResource.html) to deploy "non-supported" features with AWS api calls. With this you can probably automate in a single tool (AWS CDK) all your deployment.

Hope it helps.

Joan

Joan_B
answered 2 years ago
0
answered 7 months ago

You are not logged in. Log in to post an answer.

A good answer clearly answers the question and provides constructive feedback and encourages professional growth in the question asker.

Guidelines for Answering Questions