-
Notifications
You must be signed in to change notification settings - Fork 100
Release setup #274
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
Release setup #274
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,26 @@ | ||
--- | ||
name: Bug Report | ||
about: Report a bug you encountered | ||
labels: kind/bug | ||
|
||
--- | ||
|
||
<!-- Please use this template while reporting a bug and provide as much info as possible. Not doing so may result in your bug not being addressed in a timely manner. Thanks! | ||
|
||
If the matter is security related, please disclose it privately via https://kubernetes.io/security/ | ||
--> | ||
|
||
**What happened**: | ||
|
||
**What you expected to happen**: | ||
|
||
**How to reproduce it (as minimally and precisely as possible)**: | ||
|
||
**Anything else we need to know?**: | ||
|
||
**Environment**: | ||
- Kubernetes version (use `kubectl version`): | ||
- Inference extension version (use `git describe --tags --dirty --always`): | ||
- Cloud provider or hardware configuration: | ||
- Install tools: | ||
- Others: |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,15 @@ | ||
--- | ||
name: Feature request | ||
about: Suggest an idea for this project | ||
title: '' | ||
labels: '' | ||
assignees: '' | ||
|
||
--- | ||
|
||
<!-- Please only use this template for submitting enhancement requests --> | ||
|
||
**What would you like to be added**: | ||
|
||
**Why is this needed**: | ||
|
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,45 @@ | ||
--- | ||
name: New Release | ||
about: Propose a new release | ||
title: Release v0.x.0 | ||
labels: '' | ||
assignees: '' | ||
|
||
--- | ||
|
||
## Release Checklist | ||
- [ ] For major or minor releases (v$MAJ.$MIN.0), create a new release branch. | ||
- [ ] A maintainer creates a vanilla release branch with | ||
`git branch release-$MAJ.$MIN main` | ||
- [ ] A maintainer pushes the new release branch with | ||
`git push release-$MAJ.$MIN` (e.g., release-0.1) | ||
- [ ] Update content and artifacts such as README, deployment templates, docs, configuration, test/e2e flags. | ||
Submit a PR against the release branch. | ||
- [ ] A maintainer [prepares a draft release](https://github.com/kubernetes-sigs/gateway-api-inference-extension/releases) | ||
- [ ] Write the change log into the draft release. | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Will this project follow the GW API approach to changelog management (xref)? There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Can you please suggest what the exact step that we should add here? There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I'll defer to @robscott since he understands how GW API performs changelog management. There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I'd recommend incorporating something like this: https://github.com/kubernetes-sigs/gateway-api/blob/main/RELEASE.md#writing-a-changelog |
||
- [ ] Run | ||
`make artifacts` | ||
to generate the artifacts and upload the files in the `artifacts` folder to the draft release. | ||
ahg-g marked this conversation as resolved.
Show resolved
Hide resolved
|
||
- [ ] A maintainer creates a signed tag running (e.g., VERSION=v0.1.0) | ||
`git tag -s $VERSION` | ||
and inserts the changelog into the tag description. | ||
To perform this step, you need [a PGP key registered on github](https://docs.github.com/en/authentication/managing-commit-signature-verification/checking-for-existing-gpg-keys). | ||
- [ ] A maintainer pushes the tag with | ||
`git push $VERSION` | ||
- Triggers prow to build and publish a staging container image | ||
[`us-central1-docker.pkg.dev/k8s-staging-images/llm-instance-gateway/epp:$VERSION`](https://us-central1-docker.pkg.dev/k8s-staging-images/llm-instance-gateway/epp) | ||
- [ ] Submit a PR against [k8s.io](https://github.com/kubernetes/k8s.io), | ||
updating [`k8s-staging-gateway-api-inference-extension/images.yaml`](https://github.com/kubernetes/k8s.io/blob/main/registry.k8s.io/images/k8s-staging-gateway-api-inference-extension/images.yaml) to | ||
promote the container images from staging to production. <!-- link to example PR once we have one --> | ||
- [ ] Wait for the PR to be merged and verify that the image `registry.k8s.io/gateway-api-inference-extension/epp:$VERSION` is available. | ||
- [ ] Publish the draft release prepared at the [Github releases page](https://github.com/kubernetes-sigs/gateway-api-inference-extension/releases). | ||
- [ ] Add a link to the tagged release in this issue: <!-- example https://github.com/kubernetes-sigs/gateway-api-inference-extension/releases/tag/v0.1.0 --> | ||
- [ ] Send an announcement email to `[email protected]` and `[email protected]` with the subject `[ANNOUNCE] Gateway API Inference Extension $VERSION is released` | ||
- [ ] Add a link to the release announcement in this issue: <!-- link to an example email once we have one --> | ||
- [ ] Update docs in `main` branch: <!-- link to example PR once we have one --> | ||
- [ ] Close this issue | ||
|
||
danehans marked this conversation as resolved.
Show resolved
Hide resolved
|
||
## Changelog | ||
<!-- | ||
Describe changes since the last release here. | ||
--> |
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -6,6 +6,7 @@ | |
*.dylib | ||
bin/* | ||
Dockerfile.cross | ||
artifacts | ||
|
||
# Test binary, built with `go test -c` | ||
*.test | ||
|
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -195,14 +195,13 @@ install: manifests kustomize ## Install CRDs into the K8s cluster specified in ~ | |
uninstall: manifests kustomize ## Uninstall CRDs from the K8s cluster specified in ~/.kube/config. Call with ignore-not-found=true to ignore resource not found errors during deletion. | ||
$(KUSTOMIZE) build config/crd | $(KUBECTL) delete --ignore-not-found=$(ignore-not-found) -f - | ||
|
||
.PHONY: deploy | ||
deploy: manifests kustomize ## Deploy controller to the K8s cluster specified in ~/.kube/config. | ||
cd config/manager && $(KUSTOMIZE) edit set image controller=${IMG} | ||
$(KUSTOMIZE) build config/default | $(KUBECTL) apply -f - | ||
|
||
.PHONY: undeploy | ||
undeploy: kustomize ## Undeploy controller from the K8s cluster specified in ~/.kube/config. Call with ignore-not-found=true to ignore resource not found errors during deletion. | ||
$(KUSTOMIZE) build config/default | $(KUBECTL) delete --ignore-not-found=$(ignore-not-found) -f - | ||
##@ Release | ||
.PHONY: artifacts | ||
artifacts: kustomize | ||
if [ -d artifacts ]; then rm -rf artifacts; fi | ||
mkdir -p artifacts | ||
$(KUSTOMIZE) build config/crd -o artifacts/manifests.yaml | ||
@$(call clean-manifests) | ||
Comment on lines
+200
to
+204
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. In addition to cutting the CRDs, we need to consider:
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Those will be in the release branch, and so already properly versioned, right? There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. @ahg-g not necessarily. For example, the vLLM image tag should be changed from There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Sounds good, lets follow up on that after the first release. I would like to move the manifests directory out of the There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. |
||
|
||
##@ Dependencies | ||
|
||
|
Uh oh!
There was an error while loading. Please reload this page.