Testing a release
Context and Problem Statement
Releasing is an essential process for the s3gw
project. Given the project is
composed by various sub-projects, that need to be prepared, tested, and
eventually released, the Release Process is not trivial.
This document defines and agrees on the steps required to test the s3gw
project, and results from splitting the Release Process ADR in
three documents: Release Methodology,
Release Steps and Release Testing (this document).
This document supersedes the Release Process ADR.
Note Before
This document requires expansion. The whole team is encouraged to enhance this document with further testing scenarios.
Validate deployment via Helm Chart
-
Ensure a Kubernetes distribution with Longhorn and cert-manager installed is available. E.g., for
k3s
,curl -sfL https://get.k3s.io | INSTALL_K3S_VERSION=v1.24.7+k3s1 sh -s - --write-kubeconfig-mode 644
sudo cp /etc/rancher/k3s/k3s.yaml ~/.kube/config
sudo chown my-user:users ~/.kube/config
export KUBECONFIG=~/.kube/config
kubectl apply -f https://raw.githubusercontent.com/longhorn/longhorn/v1.3.2/deploy/prerequisite/longhorn-iscsi-installation.yaml
kubectl apply -f https://raw.githubusercontent.com/longhorn/longhorn/v1.3.2/deploy/longhorn.yaml
kubectl create namespace cert-manager
helm repo add jetstack https://charts.jetstack.io
helm repo update
helm install cert-manager --namespace cert-manager jetstack/cert-manager \
--set installCRDs=true \
--set extraArgs[0]=--enable-certificate-owner-ref=true -
Follow the Helm chart installation procedure from the
s3gw
documentation -
Verify the pods are coming up nicely
kubectl get pods -n s3gw
> NAME READY STATUS RESTARTS AGE
> s3gw-ui-77b7cdf987-c5lvj 1/1 Running 0 33s
> s3gw-5659dbb456-a4fcg 1/1 Running 0 33s -
Check whether the
s3gw-ui
is reachable at the address specified in thevalues.yaml
provided duringhelm install
. -
Check whether the you can perform actions through the UI, like creating buckets, uploading objects, listing buckets, etc.
-
Check whether the
s3gw
service is reachable, test withs3cmd
ors3
. -
If at any point there's an indication that something is not working right, or you find a crash, please file an issue on GitHub.