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

Add missing upgrade steps #533

Merged
merged 2 commits into from
Sep 7, 2023
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
5 changes: 4 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -385,7 +385,10 @@ To run the integration tests on a DOKS cluster, follow [the instructions](test/k
1. Since we only support three minor versions at a time. E2e tests for the oldest supported version can be removed.
4. Verify [e2e tests pass](.github/workflows/test.yaml) - see [here](#end-to-end-tests) about running tests locally
5. Prepare for [release](#releasing)
6. Perform [release](.github/workflows/release.yaml)
6. If necessary, update Go version to the latest stable Go Binary
1. Update [Dockerfile](https://github.com/digitalocean/csi-digitalocean/blob/master/test/e2e/Dockerfile#L16)
2. Update [go.mod](https://github.com/digitalocean/csi-digitalocean/blob/615b91ab948a08cb04ab43ddb62720d5bfb68c87/go.mod#L3)
7. Perform [release](.github/workflows/release.yaml)

> See [e2e test README](test/e2e/README.md) on how to run conformance tests locally.

Expand Down
24 changes: 23 additions & 1 deletion test/e2e/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -76,9 +76,31 @@ Command-line arguments are passed as-in to the test tool. Run `e2e.sh -h` for us
3. Extend the Kubernetes release-specific build arguments in the `handle-images.sh` script.
4. Add a new testdriver YAML configuration file.
5. Extend the list of supported Kubernetes releases in `e2e_test.go`.
1. [Update the `e2e_test.go` file `supportedKubernetesVersions` variable with the up-to-date versions](https://github.com/digitalocean/csi-digitalocean/blob/master/test/e2e/e2e_test.go)
6. Extend the list of tested Kubernetes releases in `.github/workflows/test.yaml`.
7. Extend the list of deleted container images in `.github/workflows/delete.yaml`.
8. Update the [_Kubernetes Compatibility_ matrix](/README.md#kubernetes-compatibility) in the README file.
8. Update the [_Kubernetes Compatibility_ matrix](../../README.md#kubernetes-compatibility) in the README file.
9. [Add new minor release section in Dockerfile where X is your minor version and Y is the patch version](https://github.com/digitalocean/csi-digitalocean/blob/master/test/e2e/Dockerfile)
```Dockerfile
### Kubernetes 1.XX
FROM builder AS tests-X.Y
ARG KUBE_VERSION_1_X=1.X.Y
ARG KUBE_VERSION_1_X_E2E_BIN_SHA256_CHECKSUM=807f5ce07395f01e916873847a553dc32d437341695360bbcad5932e9fed094e

RUN curl --fail --location https://dl.k8s.io/v${KUBE_VERSION_1_X}/kubernetes-test-linux-amd64.tar.gz | tar xvzf - --strip-components 3 kubernetes/test/bin/e2e.test kubernetes/test/bin/ginkgo
RUN echo "${KUBE_VERSION_1_X_E2E_BIN_SHA256_CHECKSUM}" e2e.test | sha256sum --check
RUN cp e2e.test /e2e.1.X.test
RUN cp ginkgo /ginkgo-1.X
```
10. If needed, [remove deprecated version in Dockerfile](https://github.com/digitalocean/csi-digitalocean/blob/master/test/e2e/Dockerfile)
11. [Upgrade DOCTL_VERSION environment variable with latest version](https://github.com/digitalocean/csi-digitalocean/blob/master/test/e2e/Dockerfile)
1. Latest, version can be found [here](https://github.com/digitalocean/doctl/releases)
12. [Add copy commands under the `final test container section` to the Dockerfile where XX is the minor version](https://github.com/digitalocean/csi-digitalocean/blob/master/test/e2e/Dockerfile)
```Dockerfile
COPY --from=tests-1.XX /e2e.1.XX.test /
COPY --from=tests-1.XX /ginkgo-1.XX /usr/local/bin
```
13. [Update the `handle-image.sh` file with the up to date versions](https://github.com/digitalocean/csi-digitalocean/blob/master/test/e2e/handle-image.sh)

### handle-image.sh

Expand Down