awslabs / kubernetes-iteration-toolkit
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 104 files with 14,297 lines of code.
    • 1 very long files (6,920 lines of code)
    • 0 long files (0 lines of code)
    • 7 medium size files (2,005 lines of codeclsfd_ftr_w_mp_ins)
    • 17 small files (2,290 lines of code)
    • 79 very small files (3,082 lines of code)
48% | 0% | 14% | 16% | 21%
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
yaml87% | 0% | 6% | 1% | 5%
go0% | 0% | 25% | 34% | 39%
ts0% | 0% | 0% | 28% | 71%
hcl0% | 0% | 0% | 0% | 100%
File Size per Logical Decomposition
primary
1001+
501-1000
201-500
101-200
1-100
operator/charts/kit-operator93% | 0% | 0% | 1% | 4%
operator/pkg/controllers0% | 0% | 41% | 32% | 25%
testbed/addons/tekton-dashboard0% | 0% | 99% | 0% | <1%
substrate/pkg/controller0% | 0% | 22% | 41% | 36%
operator/pkg/awsprovider0% | 0% | 34% | 49% | 16%
operator/pkg/pki0% | 0% | 0% | 100% | 0%
substrate/pkg/apis0% | 0% | 0% | 71% | 29%
operator/pkg/apis0% | 0% | 0% | 29% | 70%
testbed0% | 0% | 0% | 100% | 0%
operator/pkg/utils0% | 0% | 0% | 0% | 100%
substrate/cmd0% | 0% | 0% | 0% | 100%
testbed/addons/karpenter0% | 0% | 0% | 0% | 100%
testbed/addons/kit0% | 0% | 0% | 0% | 100%
testbed/addons0% | 0% | 0% | 0% | 100%
operator/cmd/webhook0% | 0% | 0% | 0% | 100%
testbed/addons/flux0% | 0% | 0% | 0% | 100%
operator/cmd/controller0% | 0% | 0% | 0% | 100%
operator/pkg/errors0% | 0% | 0% | 0% | 100%
testbed/addons/awslb0% | 0% | 0% | 0% | 100%
substrate/pkg/utils0% | 0% | 0% | 0% | 100%
operator/pkg/kubeprovider0% | 0% | 0% | 0% | 100%
operator/hack0% | 0% | 0% | 0% | 100%
operator/tools0% | 0% | 0% | 0% | 100%
operator/pkg/results0% | 0% | 0% | 0% | 100%
testbed/addons/tekton-triggers0% | 0% | 0% | 0% | 100%
testbed/addons/tekton-pipelines0% | 0% | 0% | 0% | 100%
Longest Files (Top 50)
File# lines# units
control-plane-crd.yaml
in operator/charts/kit-operator/crds
6920 -
release.yaml
in testbed/addons/tekton-dashboard
490 -
kubeapiserver.go
in operator/pkg/controllers/master
317 5
config.go
in substrate/pkg/controller/substrate/cluster
258 13
kubeproxy.go
in operator/pkg/controllers/addons
248 16
reconciler.go
in operator/pkg/awsprovider/instances
246 14
coredns.go
in operator/pkg/controllers/addons
238 10
kubecontrollermanager.go
in operator/pkg/controllers/master
208 6
pod.go
in operator/pkg/controllers/etcd
184 9
reconciler.go
in operator/pkg/awsprovider/launchtemplate
179 11
reconciler.go
in operator/pkg/awsprovider/iam
176 11
authenticatorconfig.go
in operator/pkg/controllers/master
157 5
pki.go
in operator/pkg/pki
156 10
zz_generated.deepcopy.go
in substrate/pkg/apis/v1alpha1
142 13
launchtemplate.go
in substrate/pkg/controller/substrate/cluster
135 2
zz_generated.deepcopy.go
in operator/pkg/apis/controlplane/v1alpha1
130 14
kubeconfigs.go
in operator/pkg/controllers/master
127 10
instanceprofile.go
in substrate/pkg/controller/substrate/cluster
123 2
subnets.go
in substrate/pkg/controller/substrate/infrastructure
120 5
stack.ts
in testbed
117 1
rbac.yaml
in operator/charts/kit-operator/templates/controller
116 -
certificates.go
in operator/pkg/controllers/master
114 12
kubescheduler.go
in operator/pkg/controllers/master
107 4
instance.go
in substrate/pkg/controller/substrate/cluster
104 3
secret.go
in operator/pkg/controllers/etcd
103 11
internetgateway.go
in substrate/pkg/controller/substrate/infrastructure
96 3
zz_generated.deepcopy.go
in operator/pkg/apis/dataplane/v1alpha1
93 10
construct.ts
in testbed/addons/karpenter
91 1
data-plane-crd.yaml
in operator/charts/kit-operator/crds
88 -
rbac.yaml
in operator/charts/kit-operator/templates/webhook
87 -
controller.go
in substrate/pkg/controller/substrate
83 2
dataplane.go
in operator/pkg/controllers/dataplane
82 6
securitygroup.go
in substrate/pkg/controller/substrate/infrastructure
79 3
secrets.go
in operator/pkg/utils/secrets
79 5
construct.ts
in testbed/addons/kit
78 1
awsprovider.go
in operator/pkg/awsprovider
77 8
controller.go
in operator/pkg/controllers
73 2
addons.go
in operator/pkg/controllers/addons
71 4
patch.go
in operator/pkg/utils/patch
71 5
reconciler.go
in operator/pkg/utils/kubeconfigs
70 3
routetable.go
in substrate/pkg/controller/substrate/infrastructure
69 3
main.go
in operator/cmd/webhook
66 4
endpoint.go
in operator/pkg/controllers/master
63 6
reconciler.go
in operator/pkg/utils/keypairs
61 4
construct.ts
in testbed/addons/flux
60 1
master.go
in operator/pkg/controllers/master
58 4
main.go
in operator/cmd/controller
56 1
webhook.yaml
in operator/charts/kit-operator/templates/webhook
55 -
vpc.go
in substrate/pkg/controller/substrate/infrastructure
52 2
controlplane.go
in operator/pkg/controllers/controlplane
52 5
Files With Most Units (Top 20)
File# lines# units
kubeproxy.go
in operator/pkg/controllers/addons
248 16
reconciler.go
in operator/pkg/awsprovider/instances
246 14
zz_generated.deepcopy.go
in operator/pkg/apis/controlplane/v1alpha1
130 14
zz_generated.deepcopy.go
in substrate/pkg/apis/v1alpha1
142 13
config.go
in substrate/pkg/controller/substrate/cluster
258 13
certificates.go
in operator/pkg/controllers/master
114 12
secret.go
in operator/pkg/controllers/etcd
103 11
reconciler.go
in operator/pkg/awsprovider/launchtemplate
179 11
reconciler.go
in operator/pkg/awsprovider/iam
176 11
coredns.go
in operator/pkg/controllers/addons
238 10
kubeconfigs.go
in operator/pkg/controllers/master
127 10
pki.go
in operator/pkg/pki
156 10
zz_generated.deepcopy.go
in operator/pkg/apis/dataplane/v1alpha1
93 10
pod.go
in operator/pkg/controllers/etcd
184 9
imageprovider.go
in operator/pkg/utils/imageprovider
42 9
errors.go
in operator/pkg/errors
41 8
awsprovider.go
in operator/pkg/awsprovider
77 8
kubecontrollermanager.go
in operator/pkg/controllers/master
208 6
endpoint.go
in operator/pkg/controllers/master
63 6
dataplane.go
in operator/pkg/controllers/dataplane
82 6
Files With Long Lines (Top 20)

There are 36 files with lines longer than 120 characters. In total, there are 157 long lines.

File# lines# units# long lines
control-plane-crd.yaml
in operator/charts/kit-operator/crds
6920 - 36
instanceprofile.go
in substrate/pkg/controller/substrate/cluster
123 2 17
subnets.go
in substrate/pkg/controller/substrate/infrastructure
120 5 13
internetgateway.go
in substrate/pkg/controller/substrate/infrastructure
96 3 10
launchtemplate.go
in substrate/pkg/controller/substrate/cluster
135 2 8
instance.go
in substrate/pkg/controller/substrate/cluster
104 3 8
config.go
in substrate/pkg/controller/substrate/cluster
258 13 8
securitygroup.go
in substrate/pkg/controller/substrate/infrastructure
79 3 6
stack.ts
in testbed
117 1 5
address.go
in substrate/pkg/controller/substrate/cluster
49 2 5
reconciler.go
in operator/pkg/awsprovider/launchtemplate
179 11 4
routetable.go
in substrate/pkg/controller/substrate/infrastructure
69 3 3
addons.go
in operator/pkg/controllers/addons
71 4 3
authenticatorconfig.go
in operator/pkg/controllers/master
157 5 3
data-plane-crd.yaml
in operator/charts/kit-operator/crds
88 - 3
vpc.go
in substrate/pkg/controller/substrate/infrastructure
52 2 2
pod.go
in operator/pkg/controllers/etcd
184 9 2
reconciler.go
in operator/pkg/awsprovider/instances
246 14 2
main.go
in operator/cmd/controller
56 1 2
construct.ts
in testbed/addons/flux
60 1 1