tempo update to 1.21.1-bb.3 (Passthrough Pattern Refactor)
Package Merge Request
Package Changes
https://repo1.dso.mil/big-bang/product/packages/tempo/-/blob/1.21.1-bb.3/CHANGELOG.md
Package MR
big-bang/product/packages/tempo!173 (merged) and big-bang/product/packages/tempo!178 (merged) and big-bang/product/packages/tempo!181 (merged)
For Issue
Closes tempo #99- Refactor tempo into passthrough pattern
Upgrade Notices
There are two major upgrade notices 1) passthrough refactor and 2) upgrade job for redeploying immutable statefulset.
Passthrough Refactor: All package specific values will now need to be shifted under the upstream key.
Example:
Previous Values
tempo:
# -- Docker image repository
repository: registry1.dso.mil/ironbank/opensource/grafana/tempo
# -- Docker image tag
tag: 2.7.2
# -- Docker image pull policy
pullPolicy: IfNotPresent
Updated Values
tempo:
values:
upstream:
# -- Docker image repository
repository: registry1.dso.mil/ironbank/opensource/grafana/tempo
# -- Docker image tag
tag: 2.7.2
# -- Docker image pull policy
pullPolicy: IfNotPresent
Please note this does not apply to Big Bang specific top level keys including domain, sso, istio, networkPolicies, bbtests, and waitJob.
Upgrade Job for Immutable Statefulset: As part of this passthrough pattern refactor mentioned above, changes to the tempo package, upgrading to 1.21.1-bb.3 could involve changes to immutable fields that requires the tempo-tempo statefulset to be deleted before upgrading the release.
The Tempo upgradeJob field in values.yaml can deploy a pre-upgrade job that automates the required statefulset deletion without any additional steps by using a helm pre-upgrade hook, so no additional actions is required. It should be noted, a brief outage is expected during upgrade while the tempo-tempo statefulset is being rolled out.
However, if you would rather manually delete the tempo-tempo statefulset prior to upgrade, then you would need to set the upgradeJob.enabled=false in the values.yaml and follow steps outlined below. The below command assumes that the Tempo package is deployed in the default Big Bang tempo namespace and tempo-tempo statefulset name for Tempo, one should look to confirm the namespace and name of their Tempo statefulset:
kubectl delete statefulset -l app.kubernetes.io/instance=tempo-tempo -n tempo
Once the resources have been deleted, you can upgrade the release.