Deploy-CFT-At-Scale-Tool 0.2.2
Tool for deploying Clumio Cloud Formation Template at Scale

Tool to Deploy CFT at Scale using Credentials or Role assumption approach


The  Tool to Deploy or Update Clumio Cloud Formation Template at Scale by using AWS Credentials or Role assumption approach. This tool should be deployed into your default environment which has access to all of your other AWS accounts.

In order for it to work your home directory should have ./aws/config file and ./aws/credentials file. This is mandatory.


AWS Credentials (Make sure ./aws/credentials file is present)

And 

AWS Role assumption approach ( Make sure ./aws/config file is present)

The other pre-requisites are it requires Python 3.8 and once the tool is installed using 

→ pip3 install Deploy-CFT-At-Scale-Tool 

The tool will automatically install boto3 and other dependencies by itself.  

Once the package is installed, please go to the folder where the tool is installed, which could be the local site-packages folder or the regular site-packages folder. If you are not able to find the location use the following command to find the location of the tool.

→ find / -name Deploy-CFT-At-Scale-Tool

Go to the tool installed location:

→ cd /usr/…….<site-package>/Deploy-CFT-At-Scale-Tool

→ Then make sure the Config file is populated: ClumioToolsConfig.ini

[AWS] 
lambdacft = deployClumioCFT (Name of the Lambda which will be deployed in default account)

accounts_to_act_on = * (If "*" it will act on all the accounts, otherwise provide profile names separated by "," and it will act on those particular accounts)

[CLUMIO]
clumioapiurl = (Provide the Clumio API URL)
clumioapitoken = (Provide the API Token key)


→ To run the tool:
python3 clumio_cft_deployer_tool.py

-->Tool run output:

1. Would you like to use Role Assumption(T/F):

The first thing it would ask is whether to use the Role assumption approach if it is False(F) then it would use the credentials approach. 

2. Enter the Role for the Lambda(Mandatory): 

This tool will deploy a Lambda function in the default AWS account as seen in the config file above. It needs to have a role that has Lambda execution role and Cloud Formation deployment access permissions. This is important !!!

3. Please provide the Clumio API URL: 

Here if the config file is not populated with clumioapiurl value it would ask to enter this information. 

4. Please provide the Clumio API Token:

Here if the config file is not populated with clumioapitoken value it would ask to enter this information. 

5. Please provide the Clumio Service Name(Default=ClumioService):

Here the name of the service which is the name of the cloud formation stack. We recommend going with the default ClumioService.

6. Please provide the description of Clumio Services:

Here you need to provide a description of this service.

Then it would deploy an AWS Lambda function in the default account and make sure you have permissions to do the same. 
It will go and act on the accounts specified in the config file accounts_to_act_on.

For the Updates, Cloud Formation templates should have the same name of the stack as the original stack name, 
otherwise, updates would fail!!!