Skip to content

build: Update release metadata.yaml #768

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

Merged
merged 1 commit into from
Jul 1, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
19 changes: 17 additions & 2 deletions docs/content/contributing/releasing.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,8 @@ title = "Releasing"
icon = "fa-solid fa-gift"
+++

## Creating a release PR

This project uses [release-please] to automate changelog updates per release. Due to security restrictions[^1] in the
`nutanix-cloud-native` GitHub organization, the release process is a little more complex than just using the
[release-please-action].
Expand All @@ -18,8 +20,10 @@ This will create the branch and release PR. From this point on until a release i
will keep the PR up to date (GHA workflows are only not allowed to create the original PR, they can keep the PR up to
date).

When a release is ready, the commits in the release PR will need to be signed (again, this is a security requirement).
To do this, check out the PR branch locally:
## Cutting a release

When a release is ready, the commits in the release PR created above will need to be signed (again, this is a security
requirement). To do this, check out the PR branch locally:

```shell
gh pr checkout <RELEASE_PR_NUMBER>
Expand All @@ -31,6 +35,17 @@ Sign the previous commit:
git commit --gpg-sign --amend --no-edit
```

If you are releasing a new minor release, the update the `metadata.yaml`s so that the upcoming release version is used
for e.g. local development and e2e tests:

1. Add the new release to the root level `metadata.yaml` release series.
1. Add the new release to the e2e configuration `test/e2e/data/shared/v1beta1-caren/metadata.yaml` release series.
1. Add the next release to the e2e configuration `test/e2e/data/shared/v1beta1-caren/metadata.yaml` (e.g. if release
`v0.6.0` then add release series for `v0.7`).
1. Update the `caren` provider configuration in `test/e2e/config/caren.yaml` with the new release (replacing the last
minor release with the new minor release version) and the next minor release configuration (replacing the `v0.x.99`
configuration).

And force push:

```shell
Expand Down
9 changes: 9 additions & 0 deletions metadata.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -25,3 +25,12 @@ releaseSeries:
- contract: v1beta1
major: 0
minor: 8
- contract: v1beta1
major: 0
minor: 9
- contract: v1beta1
major: 0
minor: 10
- contract: v1beta1
major: 0
minor: 11
6 changes: 3 additions & 3 deletions test/e2e/config/caren.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -134,8 +134,8 @@ providers:
- name: caren
type: RuntimeExtensionProvider
versions:
- name: "{go://github.com/nutanix-cloud-native/cluster-api-runtime-extensions-nutanix@v0.8}"
value: "https://github.com/nutanix-cloud-native/cluster-api-runtime-extensions-nutanix/releases/download/{go://github.com/nutanix-cloud-native/cluster-api-runtime-extensions-nutanix@v0.8}/runtime-extension-components.yaml"
- name: "{go://github.com/nutanix-cloud-native/cluster-api-runtime-extensions-nutanix@v0.11}"
value: "https://github.com/nutanix-cloud-native/cluster-api-runtime-extensions-nutanix/releases/download/{go://github.com/nutanix-cloud-native/cluster-api-runtime-extensions-nutanix@v0.11}/runtime-extension-components.yaml"
type: "url"
contract: v1beta1
files:
Expand All @@ -145,7 +145,7 @@ providers:
new: "--v=8"
- old: --metrics-addr=127.0.0.1:8080
new: --metrics-addr=:8080
- name: v0.9.99 # "vNext"; use manifests from local source files
- name: v0.12.99 # "vNext"; use manifests from local source files
value: "file://../../../runtime-extension-components.yaml"
type: "url"
contract: v1beta1
Expand Down
9 changes: 9 additions & 0 deletions test/e2e/data/shared/v1beta1-caren/metadata.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -16,3 +16,12 @@ releaseSeries:
- contract: v1beta1
major: 0
minor: 9
- contract: v1beta1
major: 0
minor: 10
- contract: v1beta1
major: 0
minor: 11
- contract: v1beta1
major: 0
minor: 12
3 changes: 1 addition & 2 deletions test/e2e/e2e_suite_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,6 @@ import (
helmaddonsv1 "github.com/nutanix-cloud-native/cluster-api-runtime-extensions-nutanix/api/external/sigs.k8s.io/cluster-api-addon-provider-helm/api/v1alpha1"
"github.com/nutanix-cloud-native/cluster-api-runtime-extensions-nutanix/test/e2e/framework"
"github.com/nutanix-cloud-native/cluster-api-runtime-extensions-nutanix/test/framework/bootstrap"
clusterctltemp "github.com/nutanix-cloud-native/cluster-api-runtime-extensions-nutanix/test/framework/clusterctl"
)

//nolint:gochecknoinits // Idiomatically used to set up flags.
Expand Down Expand Up @@ -174,7 +173,7 @@ var _ = SynchronizedAfterSuite(func() {
})

func loadE2EConfig(configPath string) *clusterctl.E2EConfig {
config := clusterctltemp.LoadE2EConfig(
config := clusterctl.LoadE2EConfig(
context.TODO(),
clusterctl.LoadE2EConfigInput{ConfigPath: configPath},
)
Expand Down
161 changes: 0 additions & 161 deletions test/framework/clusterctl/e2e_config.go

This file was deleted.

Loading