aws-ia / terraform-aws-control_tower_account_factory
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:
    • 11,146 cleaned lines of cleaned code (without empty lines, comments, and frequently duplicated constructs such as imports)
    • 3,866 duplicated lines
  • 995 duplicates
system34% (3,866 lines)
Duplication per Extension
tf28% (1,517 lines)
tpl57% (1,121 lines)
py22% (710 lines)
yml70% (351 lines)
jinja93% (167 lines)
Duplication per Component (primary)
modules/aft-customizations47% (830 lines)
modules/aft-code-repositories70% (737 lines)
modules/aft-account-request-framework26% (622 lines)
modules/aft-account-provisioning-framework44% (449 lines)
sources/aft-customizations-common69% (356 lines)
modules/aft-feature-options27% (282 lines)
sources/aft-customizations-repos66% (182 lines)
sources/scripts24% (108 lines)
modules/aft-lambda-layer32% (106 lines)
ROOT9% (64 lines)
modules/aft-backend18% (51 lines)
modules/aft-ssm-parameters8% (45 lines)
modules/aft-iam-roles16% (22 lines)
sources/aft-lambda-layer1% (12 lines)

Duplication Between Components (50+ lines)

G modules/aft-code-repositories modules/aft-code-repositories modules/aft-customizations modules/aft-customizations modules/aft-code-repositories--modules/aft-customizations 880 modules/aft-feature-options modules/aft-feature-options modules/aft-code-repositories--modules/aft-feature-options 54 modules/aft-lambda-layer modules/aft-lambda-layer modules/aft-code-repositories--modules/aft-lambda-layer 166 sources/aft-customizations-common sources/aft-customizations-common modules/aft-code-repositories--sources/aft-customizations-common 54 modules/aft-ssm-parameters modules/aft-ssm-parameters modules/aft-code-repositories--modules/aft-ssm-parameters 70 modules/aft-customizations--modules/aft-feature-options 409 modules/aft-customizations--modules/aft-lambda-layer 344 modules/aft-account-provisioning-framework modules/aft-account-provisioning-framework modules/aft-account-provisioning-framework--modules/aft-code-repositories 60 modules/aft-account-provisioning-framework--modules/aft-customizations 505 modules/aft-account-request-framework modules/aft-account-request-framework modules/aft-account-provisioning-framework--modules/aft-account-request-framework 557 modules/aft-account-provisioning-framework--modules/aft-feature-options 385 modules/aft-account-provisioning-framework--modules/aft-lambda-layer 52 modules/aft-account-request-framework--modules/aft-code-repositories 78 modules/aft-account-request-framework--modules/aft-customizations 399 modules/aft-account-request-framework--modules/aft-feature-options 304 sources/aft-customizations-repos sources/aft-customizations-repos sources/aft-customizations-common--sources/aft-customizations-repos 75 ROOT ROOT ROOT--sources/aft-customizations-repos 62

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 995 duplicates...
Size#FoldersFilesLinesCode
144 x 2 sources/aft-customizatio...customizations_pipeline
sources/aft-customizatio...customizations_pipeline
codepipeline.tf
codepipeline.tf
49:208 (39%)
262:421 (39%)
view
47 x 2 modules/aft-code-repositories/iam/role-policies
modules/aft-customizations/iam/role-policies
tpl
ct_aft_codebuild_policy.tpl
aft_codebuild_customizations_policy.tpl
41:87 (47%)
32:78 (43%)
view
42 x 2 modules/aft-code-repositories/buildspecs
modules/aft-code-repositories/buildspecs
ct-aft-account-provisioning-customiza...
ct-aft-account-request.yml
1:43 (53%)
1:43 (53%)
view
38 x 2 modules/aft-customizations/buildspecs
modules/aft-customizations/buildspecs
aft-account-customizations-terraform.yml
aft-global-customizations-terraform.yml
1:39 (42%)
1:39 (49%)
view
37 x 2 modules/aft-feature-options/iam/role-policies
modules/aft-feature-options/iam/role-policies
tpl
aft_enable_cloudtrail.tpl
aft_enroll_support.tpl
1:37 (100%)
1:37 (100%)
view
34 x 2 modules/aft-feature-options/iam/role-policies
modules/aft-feature-options/iam/role-policies
tpl
aft_delete_default_vpc_lambda.tpl
aft_enroll_support.tpl
24:57 (59%)
4:37 (91%)
view
34 x 2 modules/aft-feature-options/iam/role-policies
modules/aft-feature-options/iam/role-policies
tpl
aft_delete_default_vpc_lambda.tpl
aft_enable_cloudtrail.tpl
24:57 (59%)
4:37 (91%)
view
30 x 2 modules/aft-code-repositories/iam/role-policies
modules/aft-customizations/iam/role-policies
tpl
ct_aft_codebuild_policy.tpl
aft_codebuild_customizations_policy.tpl
7:36 (30%)
7:36 (27%)
view
29 x 2 modules/aft-code-repositories/buildspecs
modules/aft-customizations/buildspecs
ct-aft-account-provisioning-customiza...
aft-global-customizations-terraform.yml
15:43 (36%)
16:44 (37%)
view
29 x 2 modules/aft-code-repositories/buildspecs
modules/aft-customizations/buildspecs
ct-aft-account-request.yml
aft-global-customizations-terraform.yml
15:43 (37%)
16:44 (37%)
view
27 x 2 modules/aft-code-repositories/iam/role-policies
modules/aft-customizations/iam/role-policies
tpl
ct_aft_codebuild_oss_backend_policy.tpl
ct_aft_codebuild_oss_backend_policy.tpl
1:27 (71%)
1:27 (71%)
view
26 x 2 modules/aft-account-prov...ework/iam/role-policies
modules/aft-account-requ...ework/iam/role-policies
tpl
lambda-aft-account-provisioning-frame...
lambda-invoke-aft-account-provisionin...
17:42 (40%)
11:36 (41%)
view
25 x 2 sources/aft-customizatio...OUNT_TEMPLATE/terraform
sources/aft-customizatio...ustomizations/terraform
backend.jinja
backend.jinja
1:26 (100%)
1:26 (100%)
view
25 x 2 sources/aft-customizatio...ustomizations/terraform
sources/aft-customizatio...count-request/terraform
backend.jinja
backend.jinja
1:26 (100%)
1:26 (100%)
view
25 x 2 sources/aft-customizatio...ustomizations/terraform
sources/aft-customizatio...ustomizations/terraform
backend.jinja
backend.jinja
1:26 (100%)
1:26 (100%)
view
25 x 2 sources/aft-customizatio...OUNT_TEMPLATE/terraform
sources/aft-customizatio...ustomizations/terraform
backend.jinja
backend.jinja
1:26 (100%)
1:26 (100%)
view
25 x 2 sources/aft-customizatio...OUNT_TEMPLATE/terraform
sources/aft-customizatio...count-request/terraform
backend.jinja
backend.jinja
1:26 (100%)
1:26 (100%)
view
25 x 2 sources/aft-customizatio...count-request/terraform
sources/aft-customizatio...ustomizations/terraform
backend.jinja
backend.jinja
1:26 (100%)
1:26 (100%)
view
24 x 2 modules/aft-code-repositories/buildspecs
modules/aft-customizations/buildspecs
ct-aft-account-request.yml
aft-account-customizations-terraform.yml
15:38 (30%)
16:39 (26%)
view
24 x 2 modules/aft-code-repositories/buildspecs
modules/aft-customizations/buildspecs
ct-aft-account-provisioning-customiza...
aft-account-customizations-terraform.yml
15:38 (30%)
16:39 (26%)
view
Duplicated Units
The list of top 1 duplicated units.
See data for all 1 unit duplicate
Size#FoldersFilesLinesCode
11 x 2 modules/aft-customizatio...ations-identify-targets
modules/aft-account-prov...mework-validate-request
aft_customizations_identify_targets.py
aft_account_provisioning_framework_va...
0:0 
0:0 
view