awslabs / aws-deployment-framework
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
  • 21% duplication:
    • 10,122 cleaned lines of cleaned code (without empty lines, comments, and frequently duplicated constructs such as imports)
    • 2,209 duplicated lines
  • 317 duplicates
system21% (2,209 lines)
Duplication per Extension
yml33% (1,240 lines)
py15% (969 lines)
Duplication per Component (primary)
src/lambda_codebase/initial_commit/bootstrap_repository18% (1,260 lines)
src29% (459 lines)
src/lambda_codebase/initial_commit90% (272 lines)
src/lambda_codebase/account36% (66 lines)
src/lambda_codebase/organization37% (51 lines)
src/lambda_codebase/organization_unit43% (51 lines)
src/lambda_codebase/cross_region_bucket22% (42 lines)
src/lambda_codebase/account_processing2% (8 lines)
src/lambda_codebase0% (0 lines)
resources0% (0 lines)

Duplication Between Components (50+ lines)

G src/lambda_codebase/initial_commit/bootstrap_repository src/lambda_codebase/initial_commit/bootstrap_repository src/lambda_codebase/initial_commit src/lambda_codebase/initial_commit src/lambda_codebase/initial_commit/bootstrap_repository--src/lambda_codebase/initial_commit 544 src src src/lambda_codebase/initial_commit/bootstrap_repository--src 386 src/lambda_codebase/organization src/lambda_codebase/organization src/lambda_codebase/initial_commit/bootstrap_repository--src/lambda_codebase/organization 52 src/lambda_codebase/organization_unit src/lambda_codebase/organization_unit src/lambda_codebase/initial_commit/bootstrap_repository--src/lambda_codebase/organization_unit 52 src/lambda_codebase/initial_commit--src/lambda_codebase/organization 52 src/lambda_codebase/initial_commit--src/lambda_codebase/organization_unit 52 src/lambda_codebase/organization--src/lambda_codebase/organization_unit 102 src/lambda_codebase/account src/lambda_codebase/account src/lambda_codebase/account--src/lambda_codebase/initial_commit/bootstrap_repository 50 src/lambda_codebase/account--src/lambda_codebase/initial_commit 50 src/lambda_codebase/account--src/lambda_codebase/organization 76 src/lambda_codebase/account--src/lambda_codebase/organization_unit 76 src/lambda_codebase/cross_region_bucket src/lambda_codebase/cross_region_bucket src/lambda_codebase/account--src/lambda_codebase/cross_region_bucket 50 src/lambda_codebase/cross_region_bucket--src/lambda_codebase/initial_commit/bootstrap_repository 52 src/lambda_codebase/cross_region_bucket--src/lambda_codebase/initial_commit 52 src/lambda_codebase/cross_region_bucket--src/lambda_codebase/organization 52 src/lambda_codebase/cross_region_bucket--src/lambda_codebase/organization_unit 52

Download: SVG DOT (open online Graphviz editor)

Open 3D force graph...

Show more details on duplication between components...
Longest Duplicates
The list of 20 longest duplicates.
See data for all 317 duplicates...
Size#FoldersFilesLinesCode
136 x 2 src/lambda_codebase/init...codebase/initial_commit
src/lambda_codebase/initial_commit
initial_commit.py
initial_commit.py
44:203 (52%)
48:207 (49%)
view
68 x 2 src/lambda_codebase/init...codebase/initial_commit
src/lambda_codebase/initial_commit
initial_commit.py
initial_commit.py
207:285 (26%)
217:295 (24%)
view
46 x 2 src/lambda_codebase/init...df-bootstrap/deployment
src/lambda_codebase/init...epository/adf-bootstrap
global.yml
global.yml
575:620 (3%)
220:265 (15%)
view
45 x 2 src/lambda_codebase/init...df-bootstrap/deployment
src/lambda_codebase/init...df-bootstrap/deployment
global.yml
regional.yml
75:119 (3%)
47:91 (45%)
view
26 x 2 src/lambda_codebase/cross_region_bucket
src/lambda_codebase/organization_unit
handler.py
handler.py
8:40 (100%)
8:40 (100%)
view
26 x 2 src/lambda_codebase/organization
src/lambda_codebase/organization_unit
handler.py
handler.py
8:40 (100%)
8:40 (100%)
view
26 x 2 src/lambda_codebase/initial_commit
src/lambda_codebase/organization
handler.py
handler.py
5:37 (100%)
8:40 (100%)
view
26 x 2 src/lambda_codebase/cross_region_bucket
src/lambda_codebase/initial_commit
handler.py
handler.py
8:40 (100%)
5:37 (100%)
view
26 x 2 src/lambda_codebase/init...codebase/initial_commit
src/lambda_codebase/organization_unit
handler.py
handler.py
5:37 (100%)
8:40 (100%)
view
26 x 2 src/lambda_codebase/initial_commit
src/lambda_codebase/organization_unit
handler.py
handler.py
5:37 (100%)
8:40 (100%)
view
26 x 2 src/lambda_codebase/init...codebase/initial_commit
src/lambda_codebase/organization
handler.py
handler.py
5:37 (100%)
8:40 (100%)
view
26 x 2 src/lambda_codebase/init...codebase/initial_commit
src/lambda_codebase/initial_commit
handler.py
handler.py
5:37 (100%)
5:37 (100%)
view
26 x 2 src/lambda_codebase/cross_region_bucket
src/lambda_codebase/init...codebase/initial_commit
handler.py
handler.py
8:40 (100%)
5:37 (100%)
view
26 x 2 src/lambda_codebase/cross_region_bucket
src/lambda_codebase/organization
handler.py
handler.py
8:40 (100%)
8:40 (100%)
view
26 x 2 src/lambda_codebase/init...df-bootstrap/deployment
src/lambda_codebase/init...df-bootstrap/deployment
global.yml
global.yml
212:237 (1%)
302:327 (1%)
view
22 x 2 src/lambda_codebase/init...codebase/initial_commit
src/lambda_codebase/initial_commit
initial_commit.py
initial_commit.py
290:322 (8%)
299:330 (8%)
view
20 x 2 src/lambda_codebase/init...codebase/initial_commit
src/lambda_codebase/initial_commit
initial_commit.py
initial_commit.py
14:43 (7%)
14:43 (7%)
view
20 x 2 src/lambda_codebase/init...df-bootstrap/deployment
src/lambda_codebase/init...epository/adf-bootstrap
global.yml
global.yml
158:177 (1%)
39:58 (6%)
view
18 x 2 src/lambda_codebase/account
src/lambda_codebase/organization
handler.py
handler.py
25:42 (64%)
23:40 (69%)
view
18 x 2 src/lambda_codebase/account
src/lambda_codebase/initial_commit
handler.py
handler.py
25:42 (64%)
20:37 (69%)
view
Duplicated Units
The list of top 9 duplicated units.
See data for all 9 unit duplicates...
Size#FoldersFilesLinesCode
41 x 2 src/lambda_codebase/init...codebase/initial_commit
src/lambda_codebase/initial_commit
initial_commit.py
initial_commit.py
0:0 
0:0 
view
21 x 5 src/lambda_codebase/organization_unit
src/lambda_codebase/init...codebase/initial_commit
src/lambda_codebase/initial_commit
src/lambda_codebase/cross_region_bucket
src/lambda_codebase/organization
handler.py
handler.py
handler.py
handler.py
handler.py
0:0 
0:0 
0:0 
0:0 
0:0 
view
13 x 2 src/lambda_codebase/init...codebase/initial_commit
src/lambda_codebase/initial_commit
initial_commit.py
initial_commit.py
0:0 
0:0 
view
11 x 2 src/lambda_codebase/init...codebase/initial_commit
src/lambda_codebase/initial_commit
initial_commit.py
initial_commit.py
0:0 
0:0 
view
10 x 2 src/lambda_codebase/init...codebase/initial_commit
src/lambda_codebase/initial_commit
initial_commit.py
initial_commit.py
0:0 
0:0 
view
7 x 2 src/lambda_codebase/init...codebase/initial_commit
src/lambda_codebase/initial_commit
initial_commit.py
initial_commit.py
0:0 
0:0 
view
6 x 2 src/lambda_codebase/init...codebase/initial_commit
src/lambda_codebase/initial_commit
initial_commit.py
initial_commit.py
0:0 
0:0 
view
7 x 3 src/lambda_codebase/init...df-build/shared/helpers
src/lambda_codebase/init...ared/cdk/cdk_constructs
src/lambda_codebase/init...adf-build/shared/python
retrieve_organization_accounts.py
adf_codepipeline.py
partition.py
0:0 
0:0 
0:0 
view
7 x 2 src/lambda_codebase/init...codebase/initial_commit
src/lambda_codebase/initial_commit
initial_commit.py
initial_commit.py
0:0 
0:0 
view