Skip to content
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

Community support for building releases (anago) #268

Closed
jbeda opened this issue Mar 4, 2017 · 17 comments
Closed

Community support for building releases (anago) #268

jbeda opened this issue Mar 4, 2017 · 17 comments
Assignees
Labels
area/release-eng Issues or PRs related to the Release Engineering subproject lifecycle/frozen Indicates that an issue or PR should not be auto-closed due to staleness. priority/important-longterm Important over the long term, but may not be staffed and/or may need multiple releases to complete. sig/release Categorizes an issue or PR as relevant to SIG Release.
Milestone

Comments

@jbeda
Copy link
Contributor

jbeda commented Mar 4, 2017

It should be possible and documented for privileged developers to create "unofficial" releases that mirror the official release process. This should include container images, debs/rpms and release download locations.

Not only will this let others contribute to these tools, but it will allow those working on install tools (like kubeadm) to test the entire flow before we integrate everything at release time.

Anago also just doesn't work if you aren't a Googler. I'm going to be looking to address some of those issues also.

@jbeda
Copy link
Contributor Author

jbeda commented Mar 5, 2017

I'll update this comment as I find issues:

Issues:

  • annoying --basedir defaults to /usr/local/google/$USER. This is a goobuntu-ism that shouldn't be in this script. At the very least we should have a better error here as this isn't writable on most systems and we only error out after picking a build (slow).
  • Users cannot override GCRIO_REPO.
    • Also, this should probably default to something that is writable to the user. A better default would be the repo that goes with the default project.

@mwielgus
Copy link

mwielgus commented Mar 6, 2017

This will be also needed for the process described in kubernetes/community#126.

@david-mcmahon david-mcmahon changed the title Support building releases from and to custom paths Community support for building releases (anago) May 3, 2017
@fejta-bot
Copy link

Issues go stale after 90d of inactivity.
Mark the issue as fresh with /remove-lifecycle stale.
Stale issues rot after an additional 30d of inactivity and eventually close.

Prevent issues from auto-closing with an /lifecycle frozen comment.

If this issue is safe to close now please do so with /close.

Send feedback to sig-testing, kubernetes/test-infra and/or @fejta.
/lifecycle stale

@k8s-ci-robot k8s-ci-robot added the lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale. label Dec 24, 2017
@cblecker
Copy link
Member

/remove-lifecycle stale
This is still relevant.

@k8s-ci-robot k8s-ci-robot removed the lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale. label Dec 24, 2017
@david-mcmahon david-mcmahon added priority/important-longterm Important over the long term, but may not be staffed and/or may need multiple releases to complete. sig/release Categorizes an issue or PR as relevant to SIG Release. labels Jan 3, 2018
@fejta-bot
Copy link

Issues go stale after 90d of inactivity.
Mark the issue as fresh with /remove-lifecycle stale.
Stale issues rot after an additional 30d of inactivity and eventually close.

If this issue is safe to close now please do so with /close.

Send feedback to sig-testing, kubernetes/test-infra and/or fejta.
/lifecycle stale

@k8s-ci-robot k8s-ci-robot added the lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale. label Apr 3, 2018
@cblecker
Copy link
Member

cblecker commented Apr 3, 2018

/remove-lifecycle stale
/lifecycle frozen

This is still needed.

@k8s-ci-robot k8s-ci-robot added lifecycle/frozen Indicates that an issue or PR should not be auto-closed due to staleness. and removed lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale. labels Apr 3, 2018
@tpepper
Copy link
Member

tpepper commented Jul 24, 2018

/cc @calebamiles
/cc @BenTheElder

Can we get a short list of remaining to-do's here? This is almost done right? We've got non-Google branch managers now for 1.11.x and 1.12, so any final issues should get worked through.

But also we need a next level issue for documenting the back end machinery and plumbing so it's maintainable by non-Googlers. If gcb makes for a push button that's usable by community release team folks, we still should aspire to the machinery also being more community supported and that will start with documenting what metadata feeds what machinery to generate what artifacts, and probably also should add test cases on artifact creation/publication so SIG-Cluster-Lifecycle's not pointing out that some part of the artifacts didn't build/publish correctly.

@BenTheElder
Copy link
Member

I don't have any major updates or a list of to-dos other than I know the owners are working on fixing some of this, and that push-button GCB should work for the release managers, Google or otherwise for Anago at least AFAIK. My understanding is that it had already, but we regressed a bit WRT the docker images and that is being fixed.

I'd tend to agree on all of those points. I'll hopefully defer to Caleb for the moment on a more specific list.

marpaia pushed a commit to marpaia/release that referenced this issue Feb 21, 2019
…d_for_milestone

remove references to status/approved-for-milestone
@justaugustus
Copy link
Member

/assign @tpepper @justaugustus @timothysc @dims
/milestone v1.15
/priority critical-urgent
/area release-eng

@k8s-ci-robot k8s-ci-robot added priority/critical-urgent Highest priority. Must be actively worked on as someone's top priority right now. area/release-eng Issues or PRs related to the Release Engineering subproject labels May 1, 2019
@dims dims removed their assignment Jul 8, 2019
@idealhack idealhack modified the milestones: v1.15, v1.16 Jul 29, 2019
@justaugustus
Copy link
Member

/remove-priority critical-urgent

@k8s-ci-robot k8s-ci-robot removed the priority/critical-urgent Highest priority. Must be actively worked on as someone's top priority right now. label Jul 30, 2019
@justaugustus
Copy link
Member

We're moving the needle here and I'll have a write-up for this in 1.18.

/unassign @timothysc @david-mcmahon
/milestone v1.18

@justaugustus
Copy link
Member

I'm closing this out, as I think we've served much of the intent of the original request.

For stories on artifact management (including debs/rpms), see this epic: kubernetes/sig-release#1372

And this project board: https://github.com/orgs/kubernetes/projects/48

deb/rpm tooling in progress here: #1027

/close

@k8s-ci-robot
Copy link
Contributor

@justaugustus: Closing this issue.

In response to this:

I'm closing this out, as I think we've served much of the intent of the original request.

For stories on artifact management (including debs/rpms), see this epic: kubernetes/sig-release#1372

And this project board: https://github.com/orgs/kubernetes/projects/48

deb/rpm tooling in progress here: #1027

/close

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.

@BenTheElder
Copy link
Member

anago has been removed and reimagined in Golang as krel

And more importantly both have been executed by non-googlers, we have had releases without googlers for some time now *

* Unlike the rest of the release, for debian / RPMs packages this is not the case. The community continues to rely on google's package host. #1027 is linked there, but doesn't seem to cover that. Currently a community member could build a deb/rpm (sources are public, no dependency on infrastructure in particular) but in practice they are built + signed by my team and uploaded to Google's package host still. I believe this should be tracked somewhere, as it ultimately still requires Googlers to fully ship a release.

@justaugustus
Copy link
Member

I believe this should be tracked somewhere, as it ultimately still requires Googlers to fully ship a release.

Tracked on the Artifact Management project board as #281.

@BenTheElder
Copy link
Member

Thanks Stephen! ❤️ That's exactly what I was looking for 👍

Also want to add: We don't mind doing this in the slightest, my team is happy to help! but I believe for the future of the project it is best to make sure releases in particular are a common effort with ~neutral access and publicly auditable infra (config in git like the rest of our wg-k8s-infra / SIG testing / release efforts).

(also for context: I'm certain @justaugustus beleives this too :-), more of a comment for anyone reading along)

@justaugustus
Copy link
Member

@BenTheElder -- Right you are!

My biggest focus for v1.21 is refining the plan around artifact management on all axes (roughly in order of what's already been started):

  • Cleaning up image promotion tooling/processes
  • Continuing the file promotion work in earnest
  • deb/rpm generation, signing, hosting

One of the first things I'm planning is making it faster/easier for the @kubernetes/build-admins to sign and publish.
I already have a branch in progress and I'll tag you on the PR when it's closer.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/release-eng Issues or PRs related to the Release Engineering subproject lifecycle/frozen Indicates that an issue or PR should not be auto-closed due to staleness. priority/important-longterm Important over the long term, but may not be staffed and/or may need multiple releases to complete. sig/release Categorizes an issue or PR as relevant to SIG Release.
Projects
None yet
Development

No branches or pull requests