Upgrading to a new version📜
Mattermost is a Big Bang built chart. As a result there is no
Kptfile to handle any automatic updates from upstream. The below details the steps required to update to a new version of the Mattermost package.
Review the upstream changelog for the update you are going to, as well as any versions skipped over between the last BB release and this one. Note any breaking changes and new features.
chart/values.yamlto point to the newest version of Mattermost.
Based on the upstream changelog review from earlier, make any changes required to resolve breaking changes.
Chart.yaml- this is a BigBang built and owned chart so we sync the chart version with the appVersion (ex: appVersion
6.6.0-> chart version
6.6.0-bb.0). Also modify the
bigbang.dev/applicationVersionsto the new upstream version of Mattermost (same version you put in for the image tag value).
You should check the latest version of
helm dependency update chartif applicable.
make sure that the
chart.yamlto point to the correct images for
CHANGELOG.mdadding an entry for the new version and noting all changes (at minimum should include
Updated Mattermost to x.x.x).
README.mdupdates by following the guide in gluon.
tests/dependencies.yamlpoints to the latest tag for
mattermost-operator. If it doesn’t, update it.
Open an MR in “Draft” status and validate that CI passes. This will perform a number of smoke tests against the package, but it is good to manually deploy to test some things that CI doesn’t. Follow the steps below for manual testing.
Once all manual testing is complete take your MR out of “Draft” status and add the review label.
Testing for updates📜
NOTE: For these testing steps it is good to do them on both a clean install and an upgrade. For clean install, point mattermost to your branch. For an upgrade do an install with mattermost pointing to the latest tag, then perform a helm upgrade with mattermost pointing to your branch.
You will want to install with: - Mattermost, Mattermost Operator, and Minio Operator enabled - Istio enabled - Dev SSO values for Mattermost - Enterprise enabled - if you do not pass a license in, navigate to the System Console after install to start a trial - Elasticsearch enabled + integration enabled - Monitoring enabled
- Log in with SSO via your
- Follow the initial setup to create a team and send an initial chat.
- Under account settings, upload a profile picture. Validate the upload is successful and your profile picture is visible.
- Navigate to prometheus and validate that the Mattermost target shows as up (make sure you are on enterprise and have started a trial).
- Under system console -> elastic -> index now and validate success (make sure you are on enterprise and have started a trial).
- Check Grafana for data in the
Mattermost Performance Monitoring v2 dashboard (Ensure you change the server on the dashboard to point to the mattermost pod ip)
When in doubt with any testing or upgrade steps ask one of the CODEOWNERS for assistance.