knative / community

Knative governance and community material.

Home Page:https://knative.dev/community

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

New Repo: `serving-progressive-rollout`

houshengbo opened this issue · comments

Use this issue type to request a new repo in knative-extensions (or
knative, which may require additional discussion).

Repo information

Org: knative-extensions

Repo: serving-progressive-rollout

Go module (Optional): knative.dev/serving

Purpose (Description): This project targets to create an extension for the Knative Serving project, to implement the rollout of a new revision progressively and incrementally, based on the existing old revision. The purpose is to save the compute resource during the phase of rolling out a new revision.

Related issue: knative/serving#12971
Existing design doc: https://docs.google.com/document/d/1C5iwrdC66axepm9iGVp_KrwbSnkbzfgx4iaQ_-QWc1I/edit

As the conclusion of the discussion in the Serving work group, we decided to implement the progressive rollout as an extension for serving.

Sponsoring WG: Serving and Operations.

Actions to fulfill

This area is used to track the repo creation process.
The requestor and sponsoring WG lead should perform the steps listed below and cross out the checkmarks when done.
The TOC is involved only in the TOC Gate steps.

  • Add this issue to the TOC project board for review. You are responsible for moving your entry on the board to "Needs Discussion" or "In Progress" as you move forward in this checklist.

You may not be able to use the Projects quick menu on this page. In that case, go to the project board and use the Add cards interface.

  • Send a PR adding entries for this repo in /peribolos/knative-extensions.yaml. Please mind the alphabetical order when adding to a list.
    • Add the repository and a description.
    • Grant Knative Admin the admin privilege.
    • Grant the sponsoring WG the write privilege.

TOC Gate: Once the TOC has approved the above, it will merge and Peribolos will create an empty repository.

  • Ask Steering to add the repo to EasyCLA in Slack.

  • (golang) Send a PR to add aliases for knative.dev/$REPONAME import paths (sample).

  • Have a lead from the sponsoring WG bootstrap the Git repository by pushing an
    appropriate "template" repository (basic,
    sample-controller,
    sample-source) to the new repository as
    a git remote. For example:

      git clone https://github.com/knative-extensions/sample-controller.git
      cd sample-controller
      git remote add newrepo https://github.com/knative-extensions/$REPONAME.git
      git push newrepo main
  • Add your GitHub ID to the OWNERS file for your repo.

  • Set up prow for a new repo

  • Bootstrap your CI jobs using hack project (look at other extensions repos for reference)

  • Create a sample PR to verify Prow (e.g., edit the boilerplate README)

  • Verify that within 24 hours the appropriate branch protections have been applied
    requiring tide to pass before PRs are merged.

  • (optional) Send a PR adding the repo to knobots.

  • (optional) Send a PR adding the repo to CLOMonitor (more information).

Repo should be created by there's still other stuff in the check list to complete