GoogleCloudPlatform / click-to-deploy
Source Code Overview

Analysis scope, overview of main, test, generated, deployment, build, and other code.

Source Code Analysis Scope
Files includes and excluded from analyses
po
properties
txt
tpl
xsl
cfg
ini
htaccess
bash_aliases
sass
eml
vimrc
inputrc
Overview of Analyzed Files
Basic stats on analyzed files
Intro
For analysis purposes we separate files in scope into several categories: main, test, generated, deployment and build, and other.

  • The main category contains all manually created source code files that are being used in the production.
  • Files in the main category are used as input for other analyses: logical decomposition, concerns, duplication, file size, unit size, and conditional complexity.
  • Test source code files are used only for testing of the product. These files are normally not deployed to production.
  • Build and deployment source code files are used to configure or support build and deployment process.
  • Generated source code files are automatically generated files that have not been manually changed after generation.
  • While a source code folder may contain a number of files, we are primarily interested in the source code files that are being written and maintained by developers.
  • Files containing binaries, documentation, or third-party libraries, for instance, are excluded from analysis. The exception are third-party libraries that have been changed by developers.

main116063 LOC (<1%) 1,546 files
test1470051 LOC (11%) 15,209 files
generated0 LOC (0%) 0 files
build and deployment13884 LOC (<1%) 245 files
other10877023 LOC (87%) 17,706 files
Main Code
All manually created or maintained source code that defines logic of the product that is run in a production environment.
tpl
htaccess
cfg
Explore:   circles  |  sunburst
  • The following criteria are used to filter files:
    • files with paths like ".*".
  • 1546 files match defined criteria (116,063 LOC, 100.0% vs. main code):
    • 880 *.yaml files (75,979 LOC)
    • 552 *.rb files (34,796 LOC)
    • 27 *.tpl files (1,406 LOC)
    • 11 *.go files (1,302 LOC)
    • 49 *.erb files (1,063 LOC)
    • 4 *.py files (612 LOC)
    • 2 *.sql files (258 LOC)
    • 10 *.php files (249 LOC)
    • 1 *.htaccess files (136 LOC)
    • 3 *.cfg files (99 LOC)
    • 2 *.html files (80 LOC)
    • 4 *.toml files (52 LOC)
    • 1 *.css files (31 LOC)
  • " *.yaml" is biggest, containing 65.46% of LOC.
  • " *.css" is smallest, containing 0.03% of LOC.


*.yaml75979 LOC (65%) 880 files
*.rb34796 LOC (29%) 552 files
*.tpl1406 LOC (1%) 27 files
*.go1302 LOC (1%) 11 files
*.erb1063 LOC (<1%) 49 files
*.py612 LOC (<1%) 4 files
*.sql258 LOC (<1%) 2 files
*.php249 LOC (<1%) 10 files
*.htaccess136 LOC (<1%) 1 file
*.cfg99 LOC (<1%) 3 files
*.html80 LOC (<1%) 2 files
*.toml52 LOC (<1%) 4 files
*.css31 LOC (<1%) 1 file
Test Code
Used only for testing of the product. Normally not deployed in a production environment.
eml
sass
xsl
cfg
Explore:   circles  |  sunburst
  • The following criteria are used to filter files:
    • files with paths like ".*_test[.].*".
    • files with paths like ".*/test[.].*".
    • files with paths like ".*/[Tt]ests/.*".
    • files with paths like ".*[-]tests[-].*".
    • files with paths like ".*/test_.*".
    • files with paths like ".*/[Tt]est/.*".
    • files with paths like ".*_tests[.].*".
    • files with paths like ".*/mock[a-zA-Z0-9_\- ]+/.*".
    • files with paths like ".*[.][Tt]est[.].*".
    • files with paths like ".*[.]test[.].*".
    • files with paths like ".*_mock[.][a-zA-Z0-9_\-]+".
  • 15209 files match defined criteria (1,470,051 LOC, 1266.6% vs. main code):
    • 6,311 *.py files (572,658 LOC)
    • 3,121 *.js files (483,964 LOC)
    • 4,118 *.xml files (338,536 LOC)
    • 922 *.scss files (53,037 LOC)
    • 38 *.css files (6,068 LOC)
    • 418 *.rb files (4,882 LOC)
    • 150 *.yaml files (4,589 LOC)
    • 47 *.html files (2,333 LOC)
    • 1 *.eml files (1,592 LOC)
    • 32 *.sh files (1,304 LOC)
    • 1 *.sass files (463 LOC)
    • 43 *.sql files (335 LOC)
    • 5 *.xsl files (260 LOC)
    • 1 *.go files (29 LOC)
    • 1 *.cfg files (1 LOC)
  • " *.py" is biggest, containing 38.95% of LOC.
  • " *.cfg" is smallest, containing 0% of LOC.


*.py572658 LOC (38%) 6,311 files
*.js483964 LOC (32%) 3,121 files
*.xml338536 LOC (23%) 4,118 files
*.scss53037 LOC (3%) 922 files
*.css6068 LOC (<1%) 38 files
*.rb4882 LOC (<1%) 418 files
*.yaml4589 LOC (<1%) 150 files
*.html2333 LOC (<1%) 47 files
*.eml1592 LOC (<1%) 1 file
*.sh1304 LOC (<1%) 32 files
*.sass463 LOC (<1%) 1 file
*.sql335 LOC (<1%) 43 files
*.xsl260 LOC (<1%) 5 files
*.go29 LOC (<1%) 1 file
*.cfg1 LOC (<1%) 1 file
Build and Deployment Code
Source code used to configure or support build and deployment process.
Explore:   circles  |  sunburst
  • The following criteria are used to filter files:
    • files with paths like ".*[.]sh".
    • files with paths like ".*[.]git[a-z]+".
    • files with paths like ".*/[.]gitignore".
    • files with paths like ".*/jenkins/.*[.]groovy".
  • 245 files match defined criteria (13,884 LOC, 12.0% vs. main code):
    • 241 *.sh files (13,724 LOC)
    • 4 *.groovy files (160 LOC)
  • " *.sh" is biggest, containing 98.85% of LOC.
  • " *.groovy" is smallest, containing 1.15% of LOC.


*.sh13724 LOC (98%) 241 files
*.groovy160 LOC (1%) 4 files
Other Code
po
properties
txt
ini
bash_aliases
Explore:   circles  |  sunburst
  • The following criteria are used to filter files:
    • files with paths like ".*[.]md".
    • files with paths like ".*/README[.][a-z0-9]+".
    • files with paths like ".*/[Ee]xamples/.*".
    • files with paths like ".*[.]json".
    • files with paths like ".*/[.]gitignore".
    • files with paths like ".*[.]txt".
    • files with paths like ".*[.]ini".
    • files with paths like ".*[.]bash_[a-z]+".
    • files with paths like ".*[.]po".
    • files with paths like ".*/[Dd]emos?/.*".
    • files with paths like ".*[.]svg".
    • files with paths like ".*[.](rst|rest|resttxt|rsttxt)".
    • files with paths like ".*/LICENSE[.][a-z0-9]+".
    • files with paths like ".*[.]properties".
    • files with paths like ".*/[.]dockerignore".
  • 17706 files match defined criteria (10,877,023 LOC, 9371.7% vs. main code):
    • 16,354 *.po files (10,765,816 LOC)
    • 680 *.svg files (26,455 LOC)
    • 227 *.md files (25,103 LOC)
    • 94 *.json files (24,946 LOC)
    • 117 *.properties files (24,903 LOC)
    • 134 *.xml files (5,565 LOC)
    • 22 *.py files (1,858 LOC)
    • 58 *.txt files (1,857 LOC)
    • 12 *.rst files (398 LOC)
    • 4 *.yaml files (59 LOC)
    • 3 *.ini files (45 LOC)
    • 1 *.bash_aliases files (18 LOC)
  • " *.po" is biggest, containing 98.98% of LOC.
  • " *.bash_aliases" is smallest, containing 0% of LOC.


*.po10765816 LOC (98%) 16,354 files
*.svg26455 LOC (<1%) 680 files
*.md25103 LOC (<1%) 227 files
*.json24946 LOC (<1%) 94 files
*.properties24903 LOC (<1%) 117 files
*.xml5565 LOC (<1%) 134 files
*.py1858 LOC (<1%) 22 files
*.txt1857 LOC (<1%) 58 files
*.rst398 LOC (<1%) 12 files
*.yaml59 LOC (<1%) 4 files
*.ini45 LOC (<1%) 3 files
*.bash_aliases18 LOC (<1%) 1 file
Analyzers
Info about analyzers used for source code examinations.


2025-05-04 14:41