kubernetes / test-infra
File Size

The distribution of size of files (measured in lines of code).

Intro
  • File size measurements show the distribution of size of files.
  • Files are classified in four categories based on their size (lines of code): 1-100 (very small files), 101-200 (small files), 201-500 (medium size files), 501-1000 (long files), 1001+(very long files).
  • It is a good practice to keep files small. Long files may become "bloaters", code that have increased to such gargantuan proportions that they are hard to work with.
Learn more...
File Size Overall
  • There are 1,365 files with 311,509 lines of code.
    • 41 very long files (143,488 lines of code)
    • 50 long files (34,584 lines of code)
    • 210 medium size files (63,553 lines of codeclsfd_ftr_w_mp_ins)
    • 259 small files (36,904 lines of code)
    • 805 very small files (32,980 lines of code)
46% | 11% | 20% | 11% | 10%
Legend:
1001+
501-1000
201-500
101-200
1-100


explore: zoomable circles | sunburst | 3D view
File Size per Extension
1001+
501-1000
201-500
101-200
1-100
yaml62% | 8% | 13% | 7% | 8%
go17% | 14% | 34% | 20% | 12%
bzl89% | 0% | 4% | 0% | 5%
py11% | 15% | 23% | 28% | 20%
ts0% | 36% | 28% | 18% | 16%
css0% | 48% | 14% | 6% | 30%
js0% | 0% | 93% | 0% | 6%
jsonnet0% | 0% | 49% | 28% | 22%
html0% | 0% | 11% | 22% | 65%
jinja0% | 0% | 0% | 0% | 100%
tf0% | 0% | 0% | 0% | 100%
toml0% | 0% | 0% | 0% | 100%
File Size per Logical Decomposition
primary
1001+
501-1000
201-500
101-200
1-100
config62% | 8% | 13% | 7% | 7%
prow19% | 15% | 33% | 17% | 14%
ROOT97% | 0% | 0% | 0% | 2%
label_sync68% | 27% | 0% | 0% | 3%
kubetest15% | 46% | 23% | 8% | 5%
jenkins0% | 100% | 0% | 0% | 0%
scenarios0% | 41% | 16% | 31% | 11%
triage0% | 0% | 60% | 32% | 7%
experiment0% | 0% | 37% | 39% | 23%
gubernator0% | 0% | 33% | 25% | 40%
robots0% | 0% | 48% | 23% | 27%
kettle0% | 0% | 63% | 10% | 25%
testgrid0% | 0% | 50% | 34% | 14%
pkg0% | 0% | 50% | 25% | 24%
gcsweb0% | 0% | 75% | 24% | <1%
releng0% | 0% | 61% | 38% | 0%
images0% | 0% | 43% | 0% | 56%
boskos0% | 0% | 100% | 0% | 0%
gopherage0% | 0% | 18% | 35% | 46%
ghproxy0% | 0% | 27% | 56% | 16%
logexporter0% | 0% | 58% | 0% | 41%
gencred0% | 0% | 0% | 80% | 19%
maintenance0% | 0% | 0% | 100% | 0%
hack0% | 0% | 0% | 72% | 27%
greenhouse0% | 0% | 0% | 53% | 46%
jobs0% | 0% | 0% | 38% | 61%
metrics0% | 0% | 0% | 19% | 80%
linkcheck0% | 0% | 0% | 100% | 0%
def0% | 0% | 0% | 0% | 100%
Longest Files (Top 50)
File# lines# units
kops-periodics-grid.yaml
in config/jobs/kubernetes/kops
40111 -
prowjob_customresourcedefinition.yaml
in config/prow/cluster/prowjob-crd
20576 -
redhat-openshift-ocp-release-4.10-informing.yaml
in config/testgrids/openshift
5755 -
repos.bzl
in root
5673 -
redhat-openshift-ocp-release-4.11-informing.yaml
in config/testgrids/openshift
4465 -
monitoring.coreos.com_prometheuses.yaml
in config/prow/cluster/monitoring/prometheus-operator-crds
4423 -
redhat-openshift-ocp-release-4.9-informing.yaml
in config/testgrids/openshift
4319 -
client.go
in prow/github
3613 210
monitoring.coreos.com_thanosrulers.yaml
in config/prow/cluster/monitoring/prometheus-operator-crds
3338 -
redhat-openshift-ocp-release-4.8-informing.yaml
in config/testgrids/openshift
3240 -
monitoring.coreos.com_alertmanagers.yaml
in config/prow/cluster/monitoring/prometheus-operator-crds
3214 -
redhat-openshift-ocp-release-4.7-informing.yaml
in config/testgrids/openshift
2590 -
config.go
in prow/config
2125 107
redhat-openshift-ocp-release-4.6-informing.yaml
in config/testgrids/openshift
2106 -
1.22.yaml
in config/jobs/kubernetes/sig-release/release-branch-jobs
1998 -
1.23.yaml
in config/jobs/kubernetes/sig-release/release-branch-jobs
1971 -
labels.yaml
in label_sync
1962 -
csi-driver-host-path-config.yaml
in config/jobs/kubernetes-csi/csi-driver-host-path
1867 -
1.21.yaml
in config/jobs/kubernetes/sig-release/release-branch-jobs
1830 -
monitoring.coreos.com_alertmanagerconfigs.yaml
in config/prow/cluster/monitoring/prometheus-operator-crds
1826 -
tide.go
in prow/tide
1808 70
1.20.yaml
in config/jobs/kubernetes/sig-release/release-branch-jobs
1601 -
kops-periodics-misc2.yaml
in config/jobs/kubernetes/kops
1437 -
config.go
in prow/plugins
1425 59
redhat-openshift-ocp-release-4.5-informing.yaml
in config/testgrids/openshift
1416 -
kops-presubmits-e2e.yaml
in config/jobs/kubernetes/kops
1385 -
main.go
in prow/cmd/deck
1383 48
starter-s3.yaml
in config/prow/cluster/starter
1331 -
starter-azure.yaml
in config/prow/cluster/starter
1315 -
containerd.yaml
in config/jobs/kubernetes/sig-node
1291 -
starter-gcs.yaml
in config/prow/cluster/starter
1215 -
main.go
in prow/cmd/checkconfig
1194 47
aksengine.go
in kubetest
1160 37
redhat-openshift-ocp-release-4.3-informing.yaml
in config/testgrids/openshift
1130 -
dedicated.yaml
in config/testgrids/openshift
1124 -
main.go
in prow/cmd/peribolos
1115 27
bugzilla.go
in prow/plugins/bugzilla
1081 22
redhat-openshift-ocp-release-4.4-informing.yaml
in config/testgrids/openshift
1035 -
build_jobs.py
in config/jobs/kubernetes/kops
1028 13
sig-node-presubmit.yaml
in config/jobs/kubernetes/sig-node
1011 -
types.go
in prow/github
1001 18
k8s-staging-sig-storage.yaml
in config/jobs/image-pushing
974 -
cloud-provider-azure-config.yaml
in config/jobs/kubernetes-sigs/cloud-provider-azure
958 -
pr.ts
in prow/cmd/deck/static/pr
956 34
sig-scalability-periodic-jobs.yaml
in config/jobs/kubernetes/sig-scalability
945 -
secrets-store-csi-driver-config.yaml
in config/jobs/kubernetes-sigs/secrets-store-csi-driver
909 -
gcp-gce.yaml
in config/jobs/kubernetes/sig-cloud-provider/gcp
892 -
fakegithub.go
in prow/github/fakegithub
881 79
bootstrap.py
in jenkins
875 46
redhat-openshift-ocp-release-4.2-informing.yaml
in config/testgrids/openshift
861 -
Files With Most Units (Top 20)
File# lines# units
client.go
in prow/github
3613 210
config.go
in prow/config
2125 107
fakegithub.go
in prow/github/fakegithub
881 79
tide.go
in prow/tide
1808 70
config.go
in prow/plugins
1425 59
main.go
in prow/cmd/deck
1383 48
main.go
in prow/cmd/checkconfig
1194 47
bootstrap.py
in jenkins
875 46
client.go
in prow/bugzilla
824 44
repoowners.go
in prow/repoowners
641 44
zz_generated.deepcopy.go
in prow/apis/prowjobs/v1
529 44
owners.go
in prow/plugins/approve/approvers
494 42
main.go
in prow/cmd/tackle
795 39
bumper.go
in prow/cmd/generic-autobumper/bumper
547 38
aksengine.go
in kubetest
1160 37
git.go
in prow/git
440 37
pr.ts
in prow/cmd/deck/static/pr
956 34
podspec.go
in prow/pod-utils/decorate
748 33
plugins.go
in prow/plugins
403 31
jenkins.go
in prow/jenkins
524 31
Files With Long Lines (Top 20)

There are 594 files with lines longer than 120 characters. In total, there are 7757 long lines.

File# lines# units# long lines
kops-periodics-grid.yaml
in config/jobs/kubernetes/kops
40111 - 868
monitoring.coreos.com_prometheuses.yaml
in config/prow/cluster/monitoring/prometheus-operator-crds
4423 - 637
monitoring.coreos.com_thanosrulers.yaml
in config/prow/cluster/monitoring/prometheus-operator-crds
3338 - 523
monitoring.coreos.com_alertmanagers.yaml
in config/prow/cluster/monitoring/prometheus-operator-crds
3214 - 516
prowjob_customresourcedefinition.yaml
in config/prow/cluster/prowjob-crd
20576 - 335
redhat-openshift-ocp-release-4.10-informing.yaml
in config/testgrids/openshift
5755 - 272
redhat-openshift-ocp-release-4.9-informing.yaml
in config/testgrids/openshift
4319 - 209
redhat-openshift-ocp-release-4.11-informing.yaml
in config/testgrids/openshift
4465 - 183
monitoring.coreos.com_alertmanagerconfigs.yaml
in config/prow/cluster/monitoring/prometheus-operator-crds
1826 - 151
redhat-openshift-ocp-release-4.8-informing.yaml
in config/testgrids/openshift
3240 - 135
redhat-openshift-ocp-release-4.7-informing.yaml
in config/testgrids/openshift
2590 - 102
redhat-openshift-ocp-release-4.6-informing.yaml
in config/testgrids/openshift
2106 - 79
conformance-all.yaml
in config/testgrids/conformance
330 - 71
config.yaml
in config/testgrids/gardener
723 - 70
bugzilla.go
in prow/plugins/bugzilla
1081 22 65
containerd.yaml
in config/jobs/kubernetes/sig-node
1291 - 59
config.go
in prow/config
2125 107 53
cloud-provider-azure-config.yaml
in config/jobs/kubernetes-sigs/cloud-provider-azure
958 - 52
kops-periodics-misc2.yaml
in config/jobs/kubernetes/kops
1437 - 52
redhat-openshift-ocp-release-4.5-informing.yaml
in config/testgrids/openshift
1416 - 49