Skip to content

Commit 9199aed

Browse files
authored
Update readme.MD
1 parent 12dafeb commit 9199aed

File tree

1 file changed

+23
-15
lines changed

1 file changed

+23
-15
lines changed

README.md

Lines changed: 23 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -16,13 +16,13 @@ chmod +x ./deployment/run-unit-tests.sh
1616
## Building the customized solution
1717
* Configure the solution name, version number and bucket name of your target Amazon S3 distribution bucket
1818
```
19-
export DIST_OUTPUT_BUCKET_PREFIX=my-source-code-bucket-name_prefix # Prefix for the S3 bucket where customized code will reside
20-
export TEMPLATE_OUTPUT_BUCKET=my-template-bucket-name # Name for the S3 bucket where the template will be located
21-
export SOLUTION_NAME=customizations-for-aws-control-tower # name of the solution
22-
export VERSION=my-version # version number for the customized code
19+
export DIST_OUTPUT_BUCKET_PREFIX=my-bucket-prefix # Prefix for the S3 bucket where customized code will be stored
20+
export TEMPLATE_OUTPUT_BUCKET=my-bucket-name # Name for the S3 bucket where the template will be stored
21+
export SOLUTION_NAME= my-solution-name # name of the solution (e.g. customizations-for-aws-control-tower)
22+
export VERSION=my-version # version number for the customized code (e.g. 2.1.0)
2323
export REGION=aws-region-code # the AWS region to test the solution (e.g. us-east-1)
2424
```
25-
_Note:_ You would need to create one global bucket and one regional bucket. The global bucket TEMPLATE_OUTPUT_BUCKET, for example "my-bucket-name", is used to store the AWS CloudFormation template. The regional bucket <DIST_OUTPUT_BUCKET_PREFIX>-<REGION>, for example "my-bucket-name-us-east-1", is used to store your customized source code zip packages (lambda code). The solution's CloudFormation template will expect the source code to be located in a bucket matching that name. Also, the assets in bucket should be publicly accessible.
25+
_Note:_ You would need to create one global bucket and one regional bucket. The global bucket TEMPLATE_OUTPUT_BUCKET, for example "my-bucket-name", is used to store the AWS CloudFormation template. The regional bucket $DIST_OUTPUT_BUCKET_PREFIX-$REGION, for example "my-bucket-name-us-east-1", is used to store your customized source code zip packages (lambda code). The solution's CloudFormation template will expect the source code to be located in a bucket matching that name. Also, the assets in bucket should be publicly accessible.
2626

2727
* Now build the distributable
2828
```
@@ -39,7 +39,7 @@ chmod +x ./build-s3-dist.sh
3939
4040
* Upload the customized source code zip packages to your regional bucket in the following pattern
4141
```
42-
s3://my-bucket-name-<REGION>/$SOLUTION_NAME/$VERSION/
42+
s3://my-bucket-name-$REGION/$SOLUTION_NAME/$VERSION/
4343
```
4444
4545
## Deploying the customized solution
@@ -52,18 +52,26 @@ The File structure of the Customizations for AWS Control Tower solution consist
5252
```
5353
customizations-for-aws-control-tower
5454
├── deployment
55-
   ├── build-s3-dist.sh [ shell script for packaging distribution assets ]
55+
├── build-s3-dist.sh [ shell script for packaging distribution assets ]
5656
│ ├── run-unit-tests.sh [ shell script for executing unit tests ]
5757
│ ├── custom-control-tower-initiation.template [ solution CloudFormation deployment template ]
58-
  └── custom_control_tower_configuration [ custom configuration examples ]
59-
   └── example-configuration
58+
└── custom_control_tower_configuration [ custom configuration examples ]
59+
└── example-configuration
6060
└── source
61+
├── aws [ AWS services APIs and other utils used in the solution]
6162
├── bin
62-
│   ├── build_scripts [ python scripts for packaging the source code ]
63-
│   └── codebuild_scripts [ shell and python scripts for codebuild project ]
64-
├── lib [ dependencies used in the solution ]
63+
│ ├── build_scripts [ python scripts for packaging the source code ]
64+
│ └── codebuild_scripts [ shell and python scripts for codebuild project ]
65+
├── manifest [ python code for processing manifest file]
66+
├── metrics [ python code for sending anonymous solution operatioal metrics]
6567
├── tests [ unit tests ]
66-
└── validation [ shell and python scripts for validating manifest schema and cfn template]
68+
├── utils [ dependencies used in the solution ]
69+
├── validation [ shell and python scripts for validating manifest schema and cfn template]
70+
├── config_deployer.py [ Python code used by lambda to deploy configurations at solution deployment]
71+
├── lifecycle_event_handler.py [ Python code used by lambda to process AWS Control Tower lifecycle event]
72+
├── state_machine_handler.py [ Python code used by state machine to deploy SCPs and StackSets]
73+
├── state_machine_router.py [ Python code used by lambda to invoke state machine functions]
74+
└── state_machine_trigger.py [ Python code used by CodePipeline to trigger state machine]
6775
```
6876
6977
Below shows the file structure of a custom configuration package which can be found in the github source code. Note that this is an example, therefore file path, folder and file names can be modified by customers to match what is defined in the manifest file.
@@ -75,7 +83,7 @@ custom_control_tower_configuration
7583
│ ├── create-ssm-parameter-keys-1.json [ json file one containing input parameters used in the template file, if any. Optional ]
7684
│ └── create-ssm-parameter-keys-2.json [ json file two containing input parameters used in the template file, if any. Optional ]
7785
├── policies
78-
  └── preventive-guardrails.json [ json file containing service control policies (preventive guardrails). required for SCPs ]
86+
└── preventive-guardrails.json [ json file containing service control policies (preventive guardrails). required for SCPs ]
7987
└── templates
8088
├── create-ssm-parameter-keys-1.template [ CloudFormation template one for creating ssm parameter resources. required for StackSet ]
8189
└── create-ssm-parameter-keys-2.template [ CloudFormation template two for creating ssm parameter resources. required for StackSet ]
@@ -88,4 +96,4 @@ This solution collects anonymous operational metrics to help AWS improve the qua
8896
8997
## License
9098
91-
See license [here](https://github.com/aws-solutions/aws-control-tower-customizations/blob/main/LICENSE.txt)
99+
See license [here](https://github.com/aws-solutions/aws-control-tower-customizations/blob/main/LICENSE.txt)

0 commit comments

Comments
 (0)