Skip to content

Commit

Permalink
Merge pull request #82 from inteon/update_docs
Browse files Browse the repository at this point in the history
Update README.md to reflect changes made to release artifacts and installation instructions
  • Loading branch information
cert-manager-prow[bot] authored Aug 28, 2024
2 parents 4cbc562 + ffe3fb1 commit 5299519
Show file tree
Hide file tree
Showing 2 changed files with 51 additions and 27 deletions.
40 changes: 13 additions & 27 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,12 +10,17 @@ an Ingress or Gateway resource in vanilla Kubernetes!

## Prerequisites:

1. Ensure you have [cert-manager](https://github.com/cert-manager/cert-manager) installed
1. Ensure you have [cert-manager installed](https://cert-manager.io/docs/installation/)
through the method of your choice. But make sure you install cert-manager and openshift-routes-deployment in the same namespace. By default this is in the namespace **cert-manager**.
For example, with the regular manifest:
For example, with Helm:

```sh
oc apply -f https://github.com/jetstack/cert-manager/releases/download/v1.13.3/cert-manager.yaml
helm repo add jetstack https://charts.jetstack.io --force-update
helm install \
cert-manager jetstack/cert-manager \
--namespace cert-manager \
--create-namespace \
--set crds.enabled=true
```

Both **ClusterIssuer** and namespace based **Issuer** are possible. Here a **ClusterIssuer** is used:
Expand Down Expand Up @@ -56,16 +61,16 @@ CNAME:

## Installation

The openshift-routes component can be installed using the static manifests:
The openshift-routes component can be installed using the Helm chart:

```shell
oc apply -f https://github.com/cert-manager/openshift-routes/releases/latest/download/cert-manager-openshift-routes.yaml
helm install openshift-routes -n cert-manager oci://ghcr.io/cert-manager/charts/openshift-routes
```

or with the Helm chart:
or using templated static manifests:

```shell
helm install openshift-routes -n cert-manager oci://ghcr.io/cert-manager/charts/openshift-routes
oc apply -f <(helm template openshift-routes -n cert-manager oci://ghcr.io/cert-manager/charts/openshift-routes --set omitHelmLabels=true)
```

Please review the [values.yaml](./deploy/chart/values.yaml) file for all configuration options.
Expand Down Expand Up @@ -153,23 +158,4 @@ easier for other people to consume in their projects.

# Release Process

You must have write access to this repository to perform a release.

1. ```bash
git checkout main
git pull origin main
```

2. Create a tag and push it:

```bash
export VERSION=v1.0.2
git tag --annotate --message="Release ${VERSION}" "${VERSION}"
git push origin "${VERSION}"
```

3. Go to the [GitHub Action](https://github.com/cert-manager/openshift-routes/actions) and wait
for the job to finish.
4. Once done, open the draft release in the [Releases](https://github.com/cert-manager/openshift-routes/releases)
page. Remove the auto-generated changelog and click "Generate Release Notes". Then, edit
the changelog so that it reads well for end-users. Once done, click "Publish".
The release process is documented in [RELEASE.md](RELEASE.md).
38 changes: 38 additions & 0 deletions RELEASE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
# Releases

## Schedule

The release schedule for this project is ad-hoc. Given the pre-1.0 status of the project we do not have a fixed release cadence. However if a vulnerability is discovered we will respond in accordance with our [security policy](https://github.com/cert-manager/community/blob/main/SECURITY.md) and this response may include a release.

## Process

There is a semi-automated release process for this project. When you create a Git tag with a tagname that has a `v` prefix and push it to GitHub it will trigger the [release workflow].

The release process for this repo is documented below:

1. Create a tag for the new release:
```sh
export VERSION=v0.6.0-alpha.0
git tag --annotate --message="Release ${VERSION}" "${VERSION}"
git push origin "${VERSION}"
```
2. A GitHub action will see the new tag and do the following:
- Build and publish any container images
- Build and publish the Helm chart
- Create a draft GitHub release
- Upload the Helm chart tarball to the GitHub release
3. Visit the [releases page], edit the draft release, click "Generate release notes", then edit the notes to add the following to the top
```
openshift-routes provides OpenShift Route support for cert-manager
```
4. Publish the release.

## Artifacts

This repo will produce the following artifacts each release. For documentation on how those artifacts are produced see the "Process" section.

- *Container Image* - Container image for openshift-routes is published to `ghcr.io/cert-manager/cert-manager-openshift-routes:vX.Y.Z`.
- *Helm chart* - An official Helm chart is maintained within this repo and published to `ghcr.io/cert-manager/charts/openshift-routes:X.Y.Z`.

[release workflow]: https://github.com/cert-manager/openshift-routes/actions/workflows/release.yaml
[releases page]: https://github.com/cert-manager/openshift-routes/releases

0 comments on commit 5299519

Please sign in to comment.