aws-samples / aws-secrets-manager-rotation-lambdas
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
  • 79% duplication:
    • 2,816 cleaned lines of cleaned code (without empty lines, comments, and frequently duplicated constructs such as imports)
    • 2,238 duplicated lines
  • 525 duplicates
system79% (2,238 lines)
Duplication per Extension
py79% (2,238 lines)
Duplication per Component (primary)
SecretsManagerRDSSQLServerRotationMultiUser53% (181 lines)
SecretsManagerRDSPostgreSQLRotationMultiUser91% (180 lines)
SecretsManagerRDSMariaDBRotationMultiUser89% (171 lines)
SecretsManagerRDSMySQLRotationMultiUser81% (170 lines)
SecretsManagerRDSPostgreSQLRotationSingleUser98% (164 lines)
SecretsManagerRDSSQLServerRotationSingleUser94% (164 lines)
SecretsManagerMongoDBRotationMultiUser95% (158 lines)
SecretsManagerMongoDBRotationSingleUser98% (157 lines)
SecretsManagerRDSMySQLRotationSingleUser92% (152 lines)
SecretsManagerRDSMariaDBRotationSingleUser96% (151 lines)
SecretsManagerRDSOracleRotationMultiUser80% (134 lines)
SecretsManagerRedshiftRotationMultiUser78% (131 lines)
SecretsManagerRedshiftRotationSingleUser98% (130 lines)
SecretsManagerRDSOracleRotationSingleUser93% (120 lines)
SecretsManagerRotationTemplate71% (41 lines)
SecretsManagerActiveDirectoryRotationSingleUser13% (34 lines)

Duplication Between Components (50+ lines)

G SecretsManagerRDSMariaDBRotationMultiUser SecretsManagerRDSMariaDBRotationMultiUser SecretsManagerRDSMySQLRotationMultiUser SecretsManagerRDSMySQLRotationMultiUser SecretsManagerRDSMariaDBRotationMultiUser--SecretsManagerRDSMySQLRotationMultiUser 332 SecretsManagerRDSPostgreSQLRotationMultiUser SecretsManagerRDSPostgreSQLRotationMultiUser SecretsManagerRDSMariaDBRotationMultiUser--SecretsManagerRDSPostgreSQLRotationMultiUser 304 SecretsManagerRDSSQLServerRotationMultiUser SecretsManagerRDSSQLServerRotationMultiUser SecretsManagerRDSMariaDBRotationMultiUser--SecretsManagerRDSSQLServerRotationMultiUser 302 SecretsManagerRDSMariaDBRotationSingleUser SecretsManagerRDSMariaDBRotationSingleUser SecretsManagerRDSMariaDBRotationMultiUser--SecretsManagerRDSMariaDBRotationSingleUser 252 SecretsManagerRDSMySQLRotationSingleUser SecretsManagerRDSMySQLRotationSingleUser SecretsManagerRDSMariaDBRotationMultiUser--SecretsManagerRDSMySQLRotationSingleUser 222 SecretsManagerRDSSQLServerRotationSingleUser SecretsManagerRDSSQLServerRotationSingleUser SecretsManagerRDSMariaDBRotationMultiUser--SecretsManagerRDSSQLServerRotationSingleUser 196 SecretsManagerRDSPostgreSQLRotationSingleUser SecretsManagerRDSPostgreSQLRotationSingleUser SecretsManagerRDSMariaDBRotationMultiUser--SecretsManagerRDSPostgreSQLRotationSingleUser 192 SecretsManagerRedshiftRotationMultiUser SecretsManagerRedshiftRotationMultiUser SecretsManagerRDSMariaDBRotationMultiUser--SecretsManagerRedshiftRotationMultiUser 222 SecretsManagerRDSOracleRotationMultiUser SecretsManagerRDSOracleRotationMultiUser SecretsManagerRDSMariaDBRotationMultiUser--SecretsManagerRDSOracleRotationMultiUser 216 SecretsManagerRDSMySQLRotationMultiUser--SecretsManagerRDSPostgreSQLRotationMultiUser 302 SecretsManagerRDSMySQLRotationMultiUser--SecretsManagerRDSSQLServerRotationMultiUser 302 SecretsManagerRDSMySQLRotationMultiUser--SecretsManagerRDSMySQLRotationSingleUser 250 SecretsManagerRDSMySQLRotationMultiUser--SecretsManagerRDSSQLServerRotationSingleUser 196 SecretsManagerRDSMySQLRotationMultiUser--SecretsManagerRDSPostgreSQLRotationSingleUser 192 SecretsManagerRDSMySQLRotationMultiUser--SecretsManagerRedshiftRotationMultiUser 222 SecretsManagerRDSMySQLRotationMultiUser--SecretsManagerRDSOracleRotationMultiUser 216 SecretsManagerRDSPostgreSQLRotationMultiUser--SecretsManagerRDSSQLServerRotationMultiUser 292 SecretsManagerRDSPostgreSQLRotationMultiUser--SecretsManagerRDSPostgreSQLRotationSingleUser 268 SecretsManagerRDSPostgreSQLRotationMultiUser--SecretsManagerRedshiftRotationMultiUser 230 SecretsManagerRDSSQLServerRotationMultiUser--SecretsManagerRDSSQLServerRotationSingleUser 276 SecretsManagerRDSSQLServerRotationMultiUser--SecretsManagerRedshiftRotationMultiUser 202 SecretsManagerRDSMariaDBRotationSingleUser--SecretsManagerRDSMySQLRotationMultiUser 224 SecretsManagerRDSMariaDBRotationSingleUser--SecretsManagerRDSSQLServerRotationMultiUser 196 SecretsManagerRDSMariaDBRotationSingleUser--SecretsManagerRDSMySQLRotationSingleUser 284 SecretsManagerRDSMariaDBRotationSingleUser--SecretsManagerRDSSQLServerRotationSingleUser 256 SecretsManagerRDSMariaDBRotationSingleUser--SecretsManagerRDSPostgreSQLRotationSingleUser 248 SecretsManagerRedshiftRotationSingleUser SecretsManagerRedshiftRotationSingleUser SecretsManagerRDSMariaDBRotationSingleUser--SecretsManagerRedshiftRotationSingleUser 212 SecretsManagerRDSMySQLRotationSingleUser--SecretsManagerRDSPostgreSQLRotationMultiUser 192 SecretsManagerRDSMySQLRotationSingleUser--SecretsManagerRDSSQLServerRotationMultiUser 196 SecretsManagerRDSMySQLRotationSingleUser--SecretsManagerRDSSQLServerRotationSingleUser 260 SecretsManagerRDSMySQLRotationSingleUser--SecretsManagerRDSPostgreSQLRotationSingleUser 254 SecretsManagerRDSMySQLRotationSingleUser--SecretsManagerRedshiftRotationSingleUser 220 SecretsManagerRDSSQLServerRotationSingleUser--SecretsManagerRedshiftRotationSingleUser 210 SecretsManagerRDSPostgreSQLRotationSingleUser--SecretsManagerRDSSQLServerRotationSingleUser 246 SecretsManagerRDSPostgreSQLRotationSingleUser--SecretsManagerRedshiftRotationSingleUser 216 SecretsManagerMongoDBRotationMultiUser SecretsManagerMongoDBRotationMultiUser SecretsManagerMongoDBRotationMultiUser--SecretsManagerRDSMariaDBRotationMultiUser 234 SecretsManagerMongoDBRotationMultiUser--SecretsManagerRDSMySQLRotationMultiUser 234 SecretsManagerMongoDBRotationMultiUser--SecretsManagerRDSPostgreSQLRotationMultiUser 224 SecretsManagerMongoDBRotationMultiUser--SecretsManagerRDSSQLServerRotationMultiUser 232 SecretsManagerMongoDBRotationSingleUser SecretsManagerMongoDBRotationSingleUser SecretsManagerMongoDBRotationMultiUser--SecretsManagerMongoDBRotationSingleUser 262 SecretsManagerMongoDBRotationMultiUser--SecretsManagerRedshiftRotationMultiUser 202 SecretsManagerMongoDBRotationSingleUser--SecretsManagerRDSMariaDBRotationSingleUser 242 SecretsManagerMongoDBRotationSingleUser--SecretsManagerRDSMySQLRotationSingleUser 246 SecretsManagerMongoDBRotationSingleUser--SecretsManagerRDSSQLServerRotationSingleUser 244 SecretsManagerMongoDBRotationSingleUser--SecretsManagerRDSPostgreSQLRotationSingleUser 232 SecretsManagerMongoDBRotationSingleUser--SecretsManagerRedshiftRotationSingleUser 194 SecretsManagerRedshiftRotationMultiUser--SecretsManagerRedshiftRotationSingleUser 202 SecretsManagerRDSOracleRotationMultiUser--SecretsManagerRDSPostgreSQLRotationMultiUser 206 SecretsManagerRDSOracleRotationMultiUser--SecretsManagerRDSSQLServerRotationMultiUser 216 SecretsManagerRDSOracleRotationSingleUser SecretsManagerRDSOracleRotationSingleUser SecretsManagerRDSOracleRotationMultiUser--SecretsManagerRDSOracleRotationSingleUser 196

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 525 duplicates...
Size#FoldersFilesLinesCode
83 x 2 SecretsManagerRDSPostgreSQLRotationMultiUser
SecretsManagerRDSPostgreSQLRotationSingleUser
lambda_function.py
lambda_function.py
223:457 (42%)
210:439 (49%)
view
80 x 2 SecretsManagerMongoDBRotationMultiUser
SecretsManagerMongoDBRotationSingleUser
lambda_function.py
lambda_function.py
206:435 (48%)
203:429 (50%)
view
78 x 2 SecretsManagerRDSSQLServerRotationMultiUser
SecretsManagerRDSSQLServerRotationSingleUser
lambda_function.py
lambda_function.py
220:450 (23%)
226:451 (44%)
view
75 x 2 SecretsManagerRDSMariaDBRotationMultiUser
SecretsManagerRDSMariaDBRotationSingleUser
lambda_function.py
lambda_function.py
223:448 (39%)
203:425 (48%)
view
57 x 2 SecretsManagerRDSMariaDBRotationSingleUser
SecretsManagerRDSMySQLRotationMultiUser
lambda_function.py
lambda_function.py
241:415 (36%)
273:450 (27%)
view
57 x 2 SecretsManagerRDSMariaDBRotationMultiUser
SecretsManagerRDSMySQLRotationMultiUser
lambda_function.py
lambda_function.py
261:438 (29%)
273:450 (27%)
view
53 x 2 SecretsManagerRDSMySQLRotationSingleUser
SecretsManagerRDSSQLServerRotationSingleUser
lambda_function.py
lambda_function.py
10:158 (32%)
10:158 (30%)
view
53 x 2 SecretsManagerRDSMariaDBRotationSingleUser
SecretsManagerRDSSQLServerRotationSingleUser
lambda_function.py
lambda_function.py
10:158 (33%)
10:158 (30%)
view
53 x 2 SecretsManagerRDSMariaDBRotationSingleUser
SecretsManagerRDSMySQLRotationSingleUser
lambda_function.py
lambda_function.py
10:158 (33%)
10:158 (32%)
view
52 x 2 SecretsManagerMongoDBRotationSingleUser
SecretsManagerRDSSQLServerRotationSingleUser
lambda_function.py
lambda_function.py
11:159 (32%)
10:157 (29%)
view
52 x 2 SecretsManagerRDSMySQLRotationMultiUser
SecretsManagerRDSMySQLRotationSingleUser
lambda_function.py
lambda_function.py
235:386 (24%)
206:354 (31%)
view
52 x 2 SecretsManagerMongoDBRotationSingleUser
SecretsManagerRDSMariaDBRotationSingleUser
lambda_function.py
lambda_function.py
11:159 (32%)
10:157 (33%)
view
52 x 2 SecretsManagerMongoDBRotationSingleUser
SecretsManagerRDSMySQLRotationSingleUser
lambda_function.py
lambda_function.py
11:159 (32%)
10:157 (31%)
view
50 x 2 SecretsManagerRDSMariaDBRotationMultiUser
SecretsManagerRDSSQLServerRotationMultiUser
lambda_function.py
lambda_function.py
10:161 (26%)
10:161 (14%)
view
50 x 2 SecretsManagerRDSMySQLRotationMultiUser
SecretsManagerRDSSQLServerRotationMultiUser
lambda_function.py
lambda_function.py
10:161 (23%)
10:161 (14%)
view
50 x 2 SecretsManagerRDSMariaDBRotationMultiUser
SecretsManagerRDSMySQLRotationMultiUser
lambda_function.py
lambda_function.py
10:161 (26%)
10:161 (23%)
view
49 x 2 SecretsManagerMongoDBRotationMultiUser
SecretsManagerRDSMySQLRotationMultiUser
lambda_function.py
lambda_function.py
11:161 (29%)
10:160 (23%)
view
49 x 2 SecretsManagerMongoDBRotationMultiUser
SecretsManagerRDSMariaDBRotationMultiUser
lambda_function.py
lambda_function.py
11:161 (29%)
10:160 (25%)
view
49 x 2 SecretsManagerMongoDBRotationMultiUser
SecretsManagerRDSSQLServerRotationMultiUser
lambda_function.py
lambda_function.py
11:161 (29%)
10:160 (14%)
view
47 x 2 SecretsManagerRDSOracleRotationMultiUser
SecretsManagerRDSOracleRotationSingleUser
lambda_function.py
lambda_function.py
235:376 (28%)
207:345 (36%)
view
Duplicated Units
The list of top 20 duplicated units.
See data for all 22 unit duplicates...
Size#FoldersFilesLinesCode
32 x 2 SecretsManagerRDSPostgreSQLRotationSingleUser
SecretsManagerRDSPostgreSQLRotationMultiUser
lambda_function.py
lambda_function.py
0:0 
0:0 
view
28 x 5 SecretsManagerRDSSQLServerRotationMultiUser
SecretsManagerRDSMariaDBRotationMultiUser
SecretsManagerRDSPostgreSQLRotationMultiUser
SecretsManagerRDSMySQLRotationMultiUser
SecretsManagerRDSOracleRotationMultiUser
lambda_function.py
lambda_function.py
lambda_function.py
lambda_function.py
lambda_function.py
0:0 
0:0 
0:0 
0:0 
0:0 
view
32 x 10 SecretsManagerRDSMariaDBRotationSingleUser
SecretsManagerMongoDBRotationSingleUser
SecretsManagerRDSMySQLRotationSingleUser
SecretsManagerRDSSQLServerRotationMultiUser
SecretsManagerRDSPostgreSQLRotationSingleUser
SecretsManagerRDSMariaDBRotationMultiUser
SecretsManagerRDSPostgreSQLRotationMultiUser
SecretsManagerRDSSQLServerRotationSingleUser
SecretsManagerMongoDBRotationMultiUser
SecretsManagerRDSMySQLRotationMultiUser
lambda_function.py
lambda_function.py
lambda_function.py
lambda_function.py
lambda_function.py
lambda_function.py
lambda_function.py
lambda_function.py
lambda_function.py
lambda_function.py
0:0 
0:0 
0:0 
0:0 
0:0 
0:0 
0:0 
0:0 
0:0 
0:0 
view
29 x 2 SecretsManagerRDSMariaDBRotationSingleUser
SecretsManagerRDSMariaDBRotationMultiUser
lambda_function.py
lambda_function.py
0:0 
0:0 
view
29 x 2 SecretsManagerMongoDBRotationSingleUser
SecretsManagerMongoDBRotationMultiUser
lambda_function.py
lambda_function.py
0:0 
0:0 
view
29 x 2 SecretsManagerRDSMySQLRotationSingleUser
SecretsManagerRDSMySQLRotationMultiUser
lambda_function.py
lambda_function.py
0:0 
0:0 
view
29 x 2 SecretsManagerRDSOracleRotationSingleUser
SecretsManagerRDSOracleRotationMultiUser
lambda_function.py
lambda_function.py
0:0 
0:0 
view
28 x 2 SecretsManagerRDSSQLServerRotationMultiUser
SecretsManagerRDSSQLServerRotationSingleUser
lambda_function.py
lambda_function.py
0:0 
0:0 
view
27 x 2 SecretsManagerMongoDBRotationSingleUser
SecretsManagerMongoDBRotationMultiUser
lambda_function.py
lambda_function.py
0:0 
0:0 
view
21 x 7 SecretsManagerRDSMariaDBRotationSingleUser
SecretsManagerMongoDBRotationSingleUser
SecretsManagerRDSMySQLRotationSingleUser
SecretsManagerRDSOracleRotationSingleUser
SecretsManagerRedshiftRotationSingleUser
SecretsManagerRDSPostgreSQLRotationSingleUser
SecretsManagerRDSSQLServerRotationSingleUser
lambda_function.py
lambda_function.py
lambda_function.py
lambda_function.py
lambda_function.py
lambda_function.py
lambda_function.py
0:0 
0:0 
0:0 
0:0 
0:0 
0:0 
0:0 
view
23 x 3 SecretsManagerRedshiftRotationMultiUser
SecretsManagerRDSSQLServerRotationMultiUser
SecretsManagerRDSPostgreSQLRotationMultiUser
lambda_function.py
lambda_function.py
lambda_function.py
0:0 
0:0 
0:0 
view
28 x 3 SecretsManagerRDSMariaDBRotationMultiUser
SecretsManagerMongoDBRotationMultiUser
SecretsManagerRDSMySQLRotationMultiUser
lambda_function.py
lambda_function.py
lambda_function.py
0:0 
0:0 
0:0 
view
23 x 4 SecretsManagerRDSMariaDBRotationMultiUser
SecretsManagerMongoDBRotationMultiUser
SecretsManagerRDSMySQLRotationMultiUser
SecretsManagerRDSOracleRotationMultiUser
lambda_function.py
lambda_function.py
lambda_function.py
lambda_function.py
0:0 
0:0 
0:0 
0:0 
view
26 x 4 SecretsManagerRDSMariaDBRotationSingleUser
SecretsManagerMongoDBRotationSingleUser
SecretsManagerRDSMySQLRotationSingleUser
SecretsManagerRDSSQLServerRotationSingleUser
lambda_function.py
lambda_function.py
lambda_function.py
lambda_function.py
0:0 
0:0 
0:0 
0:0 
view
24 x 2 SecretsManagerRDSMariaDBRotationSingleUser
SecretsManagerRDSMariaDBRotationMultiUser
lambda_function.py
lambda_function.py
0:0 
0:0 
view
22 x 2 SecretsManagerRDSMariaDBRotationSingleUser
SecretsManagerRDSMariaDBRotationMultiUser
lambda_function.py
lambda_function.py
0:0 
0:0 
view
22 x 2 SecretsManagerMongoDBRotationSingleUser
SecretsManagerMongoDBRotationMultiUser
lambda_function.py
lambda_function.py
0:0 
0:0 
view
22 x 2 SecretsManagerRDSMySQLRotationSingleUser
SecretsManagerRDSMySQLRotationMultiUser
lambda_function.py
lambda_function.py
0:0 
0:0 
view
22 x 2 SecretsManagerRDSSQLServerRotationMultiUser
SecretsManagerRDSSQLServerRotationSingleUser
lambda_function.py
lambda_function.py
0:0 
0:0 
view
22 x 2 SecretsManagerRDSPostgreSQLRotationSingleUser
SecretsManagerRDSPostgreSQLRotationMultiUser
lambda_function.py
lambda_function.py
0:0 
0:0 
view