aws-samples / aws-integrations-for-cloudknox
Duplication

Places in code with 6 or more lines that are exactly the same.

Intro
  • For duplication, we look at places in code where there are 6 or more lines of code that are exactly the same.
  • Before duplication is calculated, the code is cleaned to remove empty lines, comments, and frequently duplicated constructs such as imports.
  • You should aim at having as little as possible (<5%) of duplicated code as high-level of duplication can lead to maintenance difficulties, poor factoring, and logical contradictions.
Learn more...
Duplication Overall
  • 34% duplication:
    • 1,903 cleaned lines of cleaned code (without empty lines, comments, and frequently duplicated constructs such as imports)
    • 662 duplicated lines
  • 19 duplicates
system34% (662 lines)
Duplication per Extension
py49% (525 lines)
yaml16% (76 lines)
yml16% (61 lines)
Duplication per Component (primary)
aws-cloudknox-config/ssm100% (178 lines)
aws-cloudknox-config/lambda100% (178 lines)
aws-cloudknox-config/document67% (163 lines)
aws-cloudknox-config/cft17% (93 lines)
aws-cloudknox-controltower/cft15% (38 lines)
aws-cloudknox-config/configrule1% (6 lines)
aws-cloudknox-controltower/lambda4% (6 lines)

Duplication Between Components (50+ lines)

G aws-cloudknox-config/lambda aws-cloudknox-config/lambda aws-cloudknox-config/ssm aws-cloudknox-config/ssm aws-cloudknox-config/lambda--aws-cloudknox-config/ssm 356 aws-cloudknox-config/document aws-cloudknox-config/document aws-cloudknox-config/document--aws-cloudknox-config/lambda 314 aws-cloudknox-config/document--aws-cloudknox-config/ssm 314 aws-cloudknox-config/cft aws-cloudknox-config/cft aws-cloudknox-controltower/cft aws-cloudknox-controltower/cft aws-cloudknox-config/cft--aws-cloudknox-controltower/cft 91

Download: SVG DOT (open online Graphviz editor)

Open 3D force graph...

Show more details on duplication between components...
Longest Duplicates
The list of 19 longest duplicates.
See data for all 19 duplicates...
Size#FoldersFilesLinesCode
178 x 2 aws-cloudknox-config/lambda
aws-cloudknox-config/ssm
CloudKnox_IAMRightsize.py
CloudKnox_IAMRightsize.py
20:274 (100%)
20:274 (100%)
view
134 x 2 aws-cloudknox-config/document
aws-cloudknox-config/ssm
ck_right_size.py
CloudKnox_IAMRightsize.py
17:210 (84%)
53:246 (75%)
view
134 x 2 aws-cloudknox-config/document
aws-cloudknox-config/lambda
ck_right_size.py
CloudKnox_IAMRightsize.py
17:210 (84%)
53:246 (75%)
view
16 x 2 aws-cloudknox-config/document
aws-cloudknox-config/lambda
ck_right_size.py
CloudKnox_IAMRightsize.py
215:234 (10%)
255:274 (8%)
view
16 x 2 aws-cloudknox-config/cft
aws-cloudknox-controltower/cft
aws-cloudknox-prereq.yml
aws-cloudknox-controltower.yaml
129:144 (13%)
134:149 (6%)
view
16 x 2 aws-cloudknox-config/document
aws-cloudknox-config/ssm
ck_right_size.py
CloudKnox_IAMRightsize.py
215:234 (10%)
255:274 (8%)
view
10 x 2 aws-cloudknox-config/cft
aws-cloudknox-config/cft
aws-cloudknox-configremediation.yaml
aws-cloudknox-custom-config-rule.yml
76:85 (6%)
228:237 (3%)
view
9 x 2 aws-cloudknox-config/cft
aws-cloudknox-config/cft
aws-cloudknox-configremediation.yaml
aws-cloudknox-custom-config-rule.yml
56:64 (6%)
210:218 (3%)
view
9 x 2 aws-cloudknox-config/cft
aws-cloudknox-controltower/cft
aws-cloudknox-custom-config-rule.yml
aws-cloudknox-controltower.yaml
210:218 (3%)
242:250 (3%)
view
9 x 2 aws-cloudknox-config/cft
aws-cloudknox-controltower/cft
aws-cloudknox-configremediation.yaml
aws-cloudknox-controltower.yaml
56:64 (6%)
242:250 (3%)
view
7 x 2 aws-cloudknox-config/cft
aws-cloudknox-config/cft
aws-cloudknox-configremediation.yaml
aws-cloudknox-custom-config-rule.yml
88:94 (4%)
239:245 (2%)
view
7 x 2 aws-cloudknox-config/document
aws-cloudknox-config/ssm
ck_right_size.py
CloudKnox_IAMRightsize.py
8:14 (4%)
20:26 (3%)
view
7 x 2 aws-cloudknox-config/document
aws-cloudknox-config/lambda
ck_right_size.py
CloudKnox_IAMRightsize.py
8:14 (4%)
20:26 (3%)
view
7 x 2 aws-cloudknox-config/cft
aws-cloudknox-controltower/cft
aws-cloudknox-custom-config-rule.yml
aws-cloudknox-controltower.yaml
220:226 (2%)
252:258 (2%)
view
6 x 2 aws-cloudknox-config/configrule
aws-cloudknox-controltower/lambda
CLOUDKNOX_PCI.py
CloudKnox_TriggerLifecycleEvent.py
137:143 (1%)
105:111 (4%)
view
6 x 2 aws-cloudknox-config/cft
aws-cloudknox-controltower/cft
aws-cloudknox-configremediation.yaml
aws-cloudknox-controltower.yaml
77:82 (4%)
268:273 (2%)
view
6 x 2 aws-cloudknox-config/cft
aws-cloudknox-config/cft
aws-cloudknox-configremediation.yaml
aws-cloudknox-custom-config-rule.yml
100:105 (4%)
254:259 (2%)
view
6 x 2 aws-cloudknox-config/cft
aws-cloudknox-config/document
aws-cloudknox-prereq.yml
ck_right_size_iam_cfn.yaml
76:81 (4%)
46:51 (10%)
view
6 x 2 aws-cloudknox-config/cft
aws-cloudknox-controltower/cft
aws-cloudknox-custom-config-rule.yml
aws-cloudknox-controltower.yaml
229:234 (2%)
268:273 (2%)
view
Duplicated Units
The list of top 9 duplicated units.
See data for all 9 unit duplicates...
Size#FoldersFilesLinesCode
48 x 3 aws-cloudknox-config/document
aws-cloudknox-config/ssm
aws-cloudknox-config/lambda
ck_right_size.py
CloudKnox_IAMRightsize.py
CloudKnox_IAMRightsize.py
0:0 
0:0 
0:0 
view
32 x 3 aws-cloudknox-config/document
aws-cloudknox-config/ssm
aws-cloudknox-config/lambda
ck_right_size.py
CloudKnox_IAMRightsize.py
CloudKnox_IAMRightsize.py
0:0 
0:0 
0:0 
view
26 x 3 aws-cloudknox-config/document
aws-cloudknox-config/ssm
aws-cloudknox-config/lambda
ck_right_size.py
CloudKnox_IAMRightsize.py
CloudKnox_IAMRightsize.py
0:0 
0:0 
0:0 
view
20 x 2 aws-cloudknox-config/ssm
aws-cloudknox-config/lambda
CloudKnox_IAMRightsize.py
CloudKnox_IAMRightsize.py
0:0 
0:0 
view
20 x 2 aws-cloudknox-config/ssm
aws-cloudknox-config/lambda
CloudKnox_IAMRightsize.py
CloudKnox_IAMRightsize.py
0:0 
0:0 
view
19 x 3 aws-cloudknox-config/document
aws-cloudknox-config/ssm
aws-cloudknox-config/lambda
ck_right_size.py
CloudKnox_IAMRightsize.py
CloudKnox_IAMRightsize.py
0:0 
0:0 
0:0 
view
16 x 3 aws-cloudknox-config/document
aws-cloudknox-config/ssm
aws-cloudknox-config/lambda
ck_right_size.py
CloudKnox_IAMRightsize.py
CloudKnox_IAMRightsize.py
0:0 
0:0 
0:0 
view
15 x 3 aws-cloudknox-config/document
aws-cloudknox-config/ssm
aws-cloudknox-config/lambda
ck_right_size.py
CloudKnox_IAMRightsize.py
CloudKnox_IAMRightsize.py
0:0 
0:0 
0:0 
view
10 x 3 aws-cloudknox-config/document
aws-cloudknox-config/ssm
aws-cloudknox-config/lambda
ck_right_size.py
CloudKnox_IAMRightsize.py
CloudKnox_IAMRightsize.py
0:0 
0:0 
0:0 
view