aws / eks-anywhere
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 416 files with 46,763 lines of code.
    • 7 very long files (11,851 lines of code)
    • 6 long files (3,764 lines of code)
    • 32 medium size files (10,259 lines of codeclsfd_ftr_w_mp_ins)
    • 65 small files (8,720 lines of code)
    • 306 very small files (12,169 lines of code)
25% | 8% | 21% | 18% | 26%
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
yaml70% | 0% | 6% | 9% | 14%
go9% | 10% | 27% | 22% | 29%
yml0% | 0% | 0% | 0% | 100%
File Size per Logical Decomposition
primary
1001+
501-1000
201-500
101-200
1-100
config/manifest100% | 0% | 0% | 0% | 0%
pkg/providers38% | 8% | 27% | 15% | 10%
config/crd64% | 0% | 8% | 3% | 22%
release/config91% | 0% | 0% | 8% | 0%
pkg/api28% | 0% | 22% | 18% | 30%
pkg/executables30% | 21% | 16% | 10% | 21%
pkg/clustermanager0% | 59% | 30% | 0% | 9%
pkg/addonmanager0% | 57% | 0% | 26% | 15%
release/pkg0% | 11% | 29% | 25% | 34%
release/api0% | 58% | 0% | 31% | 9%
pkg/diagnostics0% | 0% | 82% | 0% | 17%
pkg/workflows0% | 0% | 82% | 11% | 6%
controllers/controllers0% | 0% | 53% | 23% | 23%
pkg/git0% | 0% | 37% | 48% | 13%
pkg/cluster0% | 0% | 59% | 0% | 40%
release/cmd0% | 0% | 87% | 0% | 12%
internal/pkg0% | 0% | 17% | 30% | 51%
config/rbac0% | 0% | 55% | 0% | 44%
cmd/eksctl-anywhere0% | 0% | 0% | 61% | 38%
pkg/awsiamauth0% | 0% | 0% | 89% | 10%
pkg/validations0% | 0% | 0% | 29% | 70%
pkg/bootstrapper0% | 0% | 0% | 100% | 0%
pkg/clusterapi0% | 0% | 0% | 37% | 62%
pkg/networking0% | 0% | 0% | 30% | 69%
controllers0% | 0% | 0% | 93% | 6%
cmd/eks-a-tool0% | 0% | 0% | 29% | 70%
config/webhook0% | 0% | 0% | 73% | 26%
pkg/task0% | 0% | 0% | 71% | 28%
cmd/integration_test0% | 0% | 0% | 23% | 76%
pkg/crypto0% | 0% | 0% | 0% | 100%
pkg/filewriter0% | 0% | 0% | 0% | 100%
pkg/types0% | 0% | 0% | 0% | 100%
config/default0% | 0% | 0% | 0% | 100%
pkg/features0% | 0% | 0% | 0% | 100%
conformance/template0% | 0% | 0% | 0% | 100%
pkg/templater0% | 0% | 0% | 0% | 100%
pkg/logger0% | 0% | 0% | 0% | 100%
pkg/files0% | 0% | 0% | 0% | 100%
pkg/semver0% | 0% | 0% | 0% | 100%
pkg/retrier0% | 0% | 0% | 0% | 100%
pkg/networkutils0% | 0% | 0% | 0% | 100%
config/manager0% | 0% | 0% | 0% | 100%
pkg/clustermarshaller0% | 0% | 0% | 0% | 100%
config/certmanager0% | 0% | 0% | 0% | 100%
pkg/constants0% | 0% | 0% | 0% | 100%
pkg/clients0% | 0% | 0% | 0% | 100%
release/buildspecs0% | 0% | 0% | 0% | 100%
pkg/eksctl0% | 0% | 0% | 0% | 100%
config/prod0% | 0% | 0% | 0% | 100%
pkg/version0% | 0% | 0% | 0% | 100%
config/tilt0% | 0% | 0% | 0% | 100%
release0% | 0% | 0% | 0% | 100%
Longest Files (Top 50)
File# lines# units
eksa-components.yaml
in config/manifest
3508 -
anywhere.eks.amazonaws.com_bundles.yaml
in config/crd/bases
1922 -
anywhere.eks.amazonaws.com_bundles.yaml
in release/config/crd/bases
1922 -
template-cp.yaml
in pkg/providers/vsphere/config
1237 -
vsphere.go
in pkg/providers/vsphere
1136 56
zz_generated.deepcopy.go
in pkg/api/v1alpha1
1099 142
kubectl.go
in pkg/executables
1027 90
cluster_manager.go
in pkg/clustermanager
860 41
govc.go
in pkg/executables
737 43
fluxaddonclient.go
in pkg/addonmanager/addonclients
570 39
generate_spec.go
in release/pkg
537 9
zz_generated.deepcopy.go
in release/api/v1alpha1
537 70
client.go
in pkg/providers/vsphere/mocks
523 90
clients.go
in pkg/workflows/interfaces/mocks
454 80
client_and_networking.go
in pkg/clustermanager/mocks
443 80
cluster.go
in pkg/api/v1alpha1
440 33
cluster_types.go
in pkg/api/v1alpha1
434 35
prepare_release.go
in release/pkg
422 11
spec.go
in pkg/cluster
413 28
diagnostics.go
in pkg/diagnostics/interfaces/mocks
403 72
providers.go
in pkg/providers/mocks
400 74
docker.go
in pkg/providers/docker
390 42
upgrade.go
in pkg/workflows
387 34
fetcher.go
in controllers/controllers/resource
356 27
tinkerbell.go
in pkg/providers/tinkerbell
350 36
gogit.go
in pkg/git/gogit
341 29
clusterctl.go
in pkg/executables
336 10
diagnostic_bundle.go
in pkg/diagnostics
330 23
assets_capi.go
in release/pkg
324 5
validator.go
in pkg/providers/vsphere
321 14
create.go
in pkg/workflows
288 21
resource.go
in controllers/controllers/resource/mocks
281 48
release.go
in release/cmd
278 1
file_reader.go
in release/pkg
270 15
vsphere.go
in internal/pkg/api
266 20
collectors.go
in pkg/diagnostics
263 20
anywhere.eks.amazonaws.com_clusters.yaml
in config/crd/bases
262 -
template-cp.yaml
in pkg/providers/docker/config
248 -
analyzers.go
in pkg/diagnostics
247 19
template.go
in controllers/controllers/resource
238 6
manager_extraroles_patch.yaml
in config/rbac
228 -
assets_eksd.go
in release/pkg
218 2
kind.go
in pkg/executables
214 16
github.go
in pkg/git/providers/github/mocks
212 38
clients.go
in release/pkg/clients
202 3
client.go
in pkg/git/gogit/mocks
196 34
gogithub.go
in pkg/git/gogithub
181 18
aws-iam-authenticator.yaml
in pkg/awsiamauth/config
180 -
bundle_types.go
in release/api/v1alpha1
179 1
github.go
in pkg/git/providers/github
176 18
Files With Most Units (Top 20)
File# lines# units
zz_generated.deepcopy.go
in pkg/api/v1alpha1
1099 142
kubectl.go
in pkg/executables
1027 90
client.go
in pkg/providers/vsphere/mocks
523 90
client_and_networking.go
in pkg/clustermanager/mocks
443 80
clients.go
in pkg/workflows/interfaces/mocks
454 80
providers.go
in pkg/providers/mocks
400 74
diagnostics.go
in pkg/diagnostics/interfaces/mocks
403 72
zz_generated.deepcopy.go
in release/api/v1alpha1
537 70
vsphere.go
in pkg/providers/vsphere
1136 56
resource.go
in controllers/controllers/resource/mocks
281 48
govc.go
in pkg/executables
737 43
docker.go
in pkg/providers/docker
390 42
cluster_manager.go
in pkg/clustermanager
860 41
fluxaddonclient.go
in pkg/addonmanager/addonclients
570 39
github.go
in pkg/git/providers/github/mocks
212 38
tinkerbell.go
in pkg/providers/tinkerbell
350 36
cluster_types.go
in pkg/api/v1alpha1
434 35
client.go
in pkg/git/gogit/mocks
196 34
upgrade.go
in pkg/workflows
387 34
cluster.go
in pkg/api/v1alpha1
440 33
Files With Long Lines (Top 20)

There are 177 files with lines longer than 120 characters. In total, there are 1466 long lines.

File# lines# units# long lines
kubectl.go
in pkg/executables
1027 90 97
vsphere.go
in pkg/providers/vsphere
1136 56 86
cluster_manager.go
in pkg/clustermanager
860 41 78
client.go
in pkg/providers/vsphere/mocks
523 90 74
clients.go
in pkg/workflows/interfaces/mocks
454 80 66
client_and_networking.go
in pkg/clustermanager/mocks
443 80 61
diagnostics.go
in pkg/diagnostics/interfaces/mocks
403 72 42
resource.go
in controllers/controllers/resource/mocks
281 48 38
providers.go
in pkg/providers/mocks
400 74 34
fetcher.go
in controllers/controllers/resource
356 27 34
tinkerbell.go
in pkg/providers/tinkerbell
350 36 30
validator.go
in pkg/providers/vsphere
321 14 28
kubectl.go
in pkg/validations/mocks
173 30 28
docker.go
in pkg/providers/docker
390 42 26
upgrade.go
in pkg/workflows
387 34 23
eksa-components.yaml
in config/manifest
3508 - 22
prepare_release.go
in release/pkg
422 11 19
interfaces.go
in pkg/workflows/interfaces
54 - 18
github.go
in pkg/git/providers/github/mocks
212 38 17
create.go
in pkg/workflows
288 21 17