tektoncd / tektoncd/cli

Reduce the size of the binary

Open
#2,109 6 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

good first issue help wanted kind/cleanup
Dominant language
Go
Stars
461
Forks
277
Avg merge
16h 48m
Merged PRs (30d)
95

Description

As of today, tkn is a very big binary.

$ du bin/tkn
147M	bin/tkn
$ strip bin/tkn
$ du bin/tkn
118M	bin/tkn

We should try to find some ways to reduce the size of it somehow 👼🏼 🙏🏼. Some ideas:

  • Track tektoncd/pipeline deps and understand where we can limit pulling k8s.io ones
  • Have our own "struct" representing the types ? (generated)

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the built bin/tkn artifact and inspect the tektoncd/pipeline dependencies, especially the k8s.io packages being pulled in. Compare the 147M binary with the stripped 118M result and evaluate whether generated structs could replace broader types; done means a documented, reproducible reduction in binary size.

Written by the indexing model from the issue text.

Assessment

Tech stack
go, kubernetes
Domain
build-system, cli, performance
Issue type
Refactor
Difficulty
5/5
Estimated time
Over a week
Activity status
Quiet
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.