-
Notifications
You must be signed in to change notification settings - Fork 423
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Build improvements #598
Build improvements #598
Conversation
The current default is to compile all functionality into the aws-iam-authenticator binary, however the tool is often used as exclusively client-only (on nodes / local machines) or exclusively server-only (ie in the EKS control plane). We can dramatically reduce unneeded binary size by adding the option to exclude subcommand which are known to be unneeeded at build time. ``` > make bin && ls -la _output/bin -rwxrwxr-x 1 emily emily 53559296 May 13 13:54 _output/bin/aws-iam-authenticator > make bin GOTAGS="no_init no_verify no_add no_server" -rwxrwxr-x 1 emily emily 18907136 May 13 13:54 _output/bin/aws-iam-authenticator ```
This strips off build host specific prefixes from the debug paths compiled into the binary.
Welcome @EmilyShepherd! |
Hi @EmilyShepherd. Thanks for your PR. I'm waiting for a kubernetes-sigs member to verify that this patch is reasonable to test. If it is, they should reply with Once the patch is verified, the new status will be reflected by the I understand the commands that are listed here. Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. |
At the moment, this is a noop, however if the changes in the [upstream pull request][PR] are merged, this will result in only the token generation code being included in the final binary. [PR]: kubernetes-sigs/aws-iam-authenticator#598
/ok-to-test |
/retest |
/assign @nnmin-aws @DanielCKennedy @dims |
@EmilyShepherd: GitHub didn't allow me to assign the following users: DanielCKennedy. Note that only kubernetes-sigs members with read permissions, repo collaborators and people who have commented on this issue/PR can be assigned. Additionally, issues/PRs can only have 10 assignees at the same time. In response to this:
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. |
/approve |
/approve |
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: dims, EmilyShepherd, nckturner The full list of commands accepted by this bot can be found here. The pull request process is described here
Needs approval from an approver in each of these files:
Approvers can indicate their approval by writing |
What this PR does / why we need it:
This PR makes two changes to the build system:
-trimpath
to strip host build specific prefixes from the debug paths embedded into the final binaryGOTAGS
to affect the build. Tags have been added to optionally exclude each of the sub commands (excepthelp
andversion
). For normal builds, this has no effect, as the default remains to build all. However it allows users who are custom building the binary for specific purposes to exclude features which are not required.