{"action":"created","issue":{"url":"https://api.github.com/repos/kubernetes/kubernetes/issues/28435","repository_url":"https://api.github.com/repos/kubernetes/kubernetes","labels_url":"https://api.github.com/repos/kubernetes/kubernetes/issues/28435/labels{/name}","comments_url":"https://api.github.com/repos/kubernetes/kubernetes/issues/28435/comments","events_url":"https://api.github.com/repos/kubernetes/kubernetes/issues/28435/events","html_url":"https://github.com/kubernetes/kubernetes/issues/28435","id":163571820,"number":28435,"title":"Release tarballs are too big","user":{"login":"jbeda","id":37310,"avatar_url":"https://avatars.githubusercontent.com/u/37310?v=3","gravatar_id":"","url":"https://api.github.com/users/jbeda","html_url":"https://github.com/jbeda","followers_url":"https://api.github.com/users/jbeda/followers","following_url":"https://api.github.com/users/jbeda/following{/other_user}","gists_url":"https://api.github.com/users/jbeda/gists{/gist_id}","starred_url":"https://api.github.com/users/jbeda/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jbeda/subscriptions","organizations_url":"https://api.github.com/users/jbeda/orgs","repos_url":"https://api.github.com/users/jbeda/repos","events_url":"https://api.github.com/users/jbeda/events{/privacy}","received_events_url":"https://api.github.com/users/jbeda/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/kubernetes/kubernetes/labels/area/build-release","name":"area/build-release","color":"bfe5bf"},{"url":"https://api.github.com/repos/kubernetes/kubernetes/labels/area/cluster-lifecycle","name":"area/cluster-lifecycle","color":"d4c5f9"},{"url":"https://api.github.com/repos/kubernetes/kubernetes/labels/area/platform/gke","name":"area/platform/gke","color":"d4c5f9"},{"url":"https://api.github.com/repos/kubernetes/kubernetes/labels/priority/P1","name":"priority/P1","color":"eb6420"},{"url":"https://api.github.com/repos/kubernetes/kubernetes/labels/team/release-infra","name":"team/release-infra","color":"d2b48c"}],"state":"open","locked":false,"assignee":{"login":"ixdy","id":8061296,"avatar_url":"https://avatars.githubusercontent.com/u/8061296?v=3","gravatar_id":"","url":"https://api.github.com/users/ixdy","html_url":"https://github.com/ixdy","followers_url":"https://api.github.com/users/ixdy/followers","following_url":"https://api.github.com/users/ixdy/following{/other_user}","gists_url":"https://api.github.com/users/ixdy/gists{/gist_id}","starred_url":"https://api.github.com/users/ixdy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ixdy/subscriptions","organizations_url":"https://api.github.com/users/ixdy/orgs","repos_url":"https://api.github.com/users/ixdy/repos","events_url":"https://api.github.com/users/ixdy/events{/privacy}","received_events_url":"https://api.github.com/users/ixdy/received_events","type":"User","site_admin":false},"assignees":[{"login":"ixdy","id":8061296,"avatar_url":"https://avatars.githubusercontent.com/u/8061296?v=3","gravatar_id":"","url":"https://api.github.com/users/ixdy","html_url":"https://github.com/ixdy","followers_url":"https://api.github.com/users/ixdy/followers","following_url":"https://api.github.com/users/ixdy/following{/other_user}","gists_url":"https://api.github.com/users/ixdy/gists{/gist_id}","starred_url":"https://api.github.com/users/ixdy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ixdy/subscriptions","organizations_url":"https://api.github.com/users/ixdy/orgs","repos_url":"https://api.github.com/users/ixdy/repos","events_url":"https://api.github.com/users/ixdy/events{/privacy}","received_events_url":"https://api.github.com/users/ixdy/received_events","type":"User","site_admin":false}],"milestone":{"url":"https://api.github.com/repos/kubernetes/kubernetes/milestones/23","html_url":"https://github.com/kubernetes/kubernetes/milestones/v1.5","labels_url":"https://api.github.com/repos/kubernetes/kubernetes/milestones/23/labels","id":1945978,"number":23,"title":"v1.5","description":"","creator":{"login":"lavalamp","id":647318,"avatar_url":"https://avatars.githubusercontent.com/u/647318?v=3","gravatar_id":"","url":"https://api.github.com/users/lavalamp","html_url":"https://github.com/lavalamp","followers_url":"https://api.github.com/users/lavalamp/followers","following_url":"https://api.github.com/users/lavalamp/following{/other_user}","gists_url":"https://api.github.com/users/lavalamp/gists{/gist_id}","starred_url":"https://api.github.com/users/lavalamp/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/lavalamp/subscriptions","organizations_url":"https://api.github.com/users/lavalamp/orgs","repos_url":"https://api.github.com/users/lavalamp/repos","events_url":"https://api.github.com/users/lavalamp/events{/privacy}","received_events_url":"https://api.github.com/users/lavalamp/received_events","type":"User","site_admin":false},"open_issues":209,"closed_issues":86,"state":"open","created_at":"2016-08-16T21:47:28Z","updated_at":"2016-09-26T16:20:09Z","due_on":"2016-12-09T00:00:00Z","closed_at":null},"comments":16,"created_at":"2016-07-03T17:37:07Z","updated_at":"2016-09-26T16:30:04Z","closed_at":null,"body":"The Kubernetes 1.3 release tarball is 1.4G.  That is insane.  While we know that much of this is due to the fact that we include all architectures, it make kubernetes feel heavier than it is.\r\n\r\nMuch of the space is the fact that 4 server platforms are now created and packaged with everything else.  Each target is a ~325M tarball.  These tarballs include both individual binaries along with Docker images that include those binaries.  They include kubectl (which is available naked in the release).\r\n\r\nWe also have 9 copies of kubectl for various targets totaling 450MB.\r\n\r\nThings we can do to slim this down:\r\n* [ ] Start building release tars per-architecture.  Either include non-arch specific stuff in every tar or break that out too. (#28629, owner?)\r\n* [ ] Finish transition to hyperkube and deprecate the individual binaries.  . We could move the individual binaries into a different tar for those that still need them.  For `amd64` hyperkube is 132M uncompressed and 26M compressed.  This means we could go from a 350M compressed tar for the amd64 target down to 26M. (#16508, owner?)\r\n* [ ] Have the ability to build the Docker images on the fly.  It should be easy to automate (as part of the binary) creating a Dockerfile, referencing the running binary and driving docker.  `hyperkube admin create-container-image` could do this. We could also support `hyperkube admin create-container-image --aci` and `hyperkube admin create-container-image --docker --just-dockerfile`. (#28630, owner?)\r\n  * I understand that gzip does a decent job of de-duping stuff here.  But the uncompressed footprint balloons and looks bad.\r\n* [ ] Break out kubectl as a separate download from the server components.  `gcloud` already ships it separately.  The user cases here differ dramatically. (#28631, owner?)\r\n* [ ] Reevaluate all of our targets.  Do we really need 32bit Windows? (#28632, owner?)\r\n* [x] Why are the federation targets new binaries? They add 150M uncompressed for amd64. (I don't know enough to say here but could these be folded in to hyperkube?  I'm guessing they could.) (#28633, @madhusudancs)\r\n* [ ] Don't ship binaries that we don't really need.  We included `kubemark` here.  No end users will actually use that.  This is 100M uncompressed. (#28635, owner?)\r\n\r\nAlso related: #27444 (Builds are taking too long)\r\n"},"comment":{"url":"https://api.github.com/repos/kubernetes/kubernetes/issues/comments/249622336","html_url":"https://github.com/kubernetes/kubernetes/issues/28435#issuecomment-249622336","issue_url":"https://api.github.com/repos/kubernetes/kubernetes/issues/28435","id":249622336,"user":{"login":"zmerlynn","id":4942464,"avatar_url":"https://avatars.githubusercontent.com/u/4942464?v=3","gravatar_id":"","url":"https://api.github.com/users/zmerlynn","html_url":"https://github.com/zmerlynn","followers_url":"https://api.github.com/users/zmerlynn/followers","following_url":"https://api.github.com/users/zmerlynn/following{/other_user}","gists_url":"https://api.github.com/users/zmerlynn/gists{/gist_id}","starred_url":"https://api.github.com/users/zmerlynn/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/zmerlynn/subscriptions","organizations_url":"https://api.github.com/users/zmerlynn/orgs","repos_url":"https://api.github.com/users/zmerlynn/repos","events_url":"https://api.github.com/users/zmerlynn/events{/privacy}","received_events_url":"https://api.github.com/users/zmerlynn/received_events","type":"User","site_admin":false},"created_at":"2016-09-26T16:30:03Z","updated_at":"2016-09-26T16:30:03Z","body":"Yes, it was a legal requirement that the source, and not just a link to the source, appear on the machine."}}
{"actor":{"display_login":"zmerlynn"}}