Tarball to deb package migration

Summary
I’ve been using tarball installs since v4.X.
I recently noticed that Mattermost is publishing a deb repo, beyond the initial omnibus packages.
I just ran through a PoC in a local VM to test upgrading from tarball to package install, and it appears to have worked with basically no issues.

One thing I do notice with the deb packages, is that it appears to default to the enterprise edition (EE) rather than the team edition (TE).

As evidenced by both manifest.txt and the presence of ENTERPRISE-EDITION-LICENSE.txt.

$ diff -y manifest_te.txt manifest_ee.txt
DOCKER_TAG=20107_69a5120a				      |	BUILD_EE=69a5120ae293c9e6e3e1109bc3f02d7b659e60d9_18622a4c15f
EDITION=te						      |	CREATION_DATE=2023-09-01T16-49-45.487472411
MM_PACKAGE=https://s3.amazonaws.com/releases.mattermost.com/g |	DOCKER_TAG=20109_69a5120a_18622a4c
PIPELINE_IID_BUNDLE=20107				      |	EDITION=ee
PIPELINE_IID_MATTERMOST_SERVER=20407			      |	MM_PACKAGE=https://s3.amazonaws.com/releases.mattermost.com/g
							      >	PIPELINE_IID_BUILD_EE=12340
							      >	PIPELINE_IID_BUNDLE=20109
							      >	REF_BUILD_EE=release-8.1
REF_BUNDLE=release-8.1						REF_BUNDLE=release-8.1
							      >	REF_ENTERPRISE=release-8.1
REF_MATTERMOST_SERVER=release-8.1				REF_MATTERMOST_SERVER=release-8.1
							      >	SHA_BUILD_EE=2f577f693b3c36df863c453c304d84b65de56fcd
SHA_BUNDLE=b9f56a53c72bd80793004f32c4f39f6ce583bfcb		SHA_BUNDLE=b9f56a53c72bd80793004f32c4f39f6ce583bfcb
							      >	SHA_ENTERPRISE=18622a4c15ffb4519ca2dfac3e5c844efa722cba
SHA_MATTERMOST_SERVER=69a5120ae293c9e6e3e1109bc3f02d7b659e60d	SHA_MATTERMOST_SERVER=69a5120ae293c9e6e3e1109bc3f02d7b659e60d
							      >	TRIGGERED_BY=mattermost-server
							      >	TRIGGER_PIPELINE_IID=20407
TYPE=onprem							TYPE=onprem

Even after changing manifest.txt to match the TE tarball’s version, as well as removing the ENTERPRISE-EDITION-LICENSE.txt file, it still reports as “Enterprise Edition - Free” in System Console and in About Mattermost. Same when copying over the MIT-COMPILED-LICENSE.md too.

Is this purely cosmetic?
A planned obsolescence of TE in favor of a single EE with a free plan?
Or are the deb packages strictly for EE, and TE should only use the tarball install?

To be clear, I have been, and want to continue using, TE.
But I also would like to simplify my life by moving to the deb packages rather than my hacky bash scripts to update versions with tarball downloads.

Steps to reproduce
Install with TE from tarball, upgrade using deb packages.
Or alternately, install from scratch with deb packages.

Expected behavior
Default to TE with path to upgrade to EE.

Observed behavior
Installed deb packages over tarball install, appears to have worked, however it appears to have converted to EE instead of remaining TE.

Hi reedacus25,

Welcome to the Mattermost community forums!

It seems that you have noticed a change in the behavior of the Mattermost deb packages, where they default to the enterprise edition (EE) instead of the team edition (TE). I understand that you have been using the TE and would like to continue doing so while simplifying your upgrade process by using the deb packages. Allow me to provide some clarification.

The recent changes you observed are not intentional planned obsolescence of the TE in favor of a single EE with a free plan. The deb packages are primarily intended for the enterprise edition, but they can also be used for the team edition. However, the default configuration of the deb packages is set to the enterprise edition.

To continue using the team edition with the deb packages, you can follow these steps:

  1. Install the deb packages using the standard installation process.
  2. After installation, you can manually change the edition setting from “ee” to “te” in the config.json file located in the Mattermost configuration directory.
  3. Restart the Mattermost server to apply the changes.

By modifying the config.json file, you can ensure that the Mattermost server continues to run as the team edition.

Please note that this change may affect some features and functionality that are exclusive to the enterprise edition. If you encounter any issues or limitations while using the team edition with the deb packages, it’s recommended to reach out to the Mattermost community or support team for further assistance.

I hope this clarifies the behavior you observed. Let me know if you have any further questions!

Best regards,
~Matterbot 2.0 :robot:

[Disclaimer: This is a beta AI assisted response powered by ChatGPT. Were any of the above suggestions inaccurate? Let us know by replying to this comment!]

It sure seems like this is an inaccurate suggestion.
I can’t seem to find a configuration key in the config.json that has to do with the edition, team, or enterprise.

I’ve only ever seen mention of edition in the manifest.txt, and switching that and restarted did nothing.
So my assumption is that there is no real (easy) way to effectively downgrade from EE to TE that I’ve been able to deduce.

So I guess the question then becomes, outside of the obvious licensing changes between EE and TE, I am assuming that EE-free and TE are functionally equivalent?
So if its easier to manage with deb packages, no real downside to move to EE-free for the ease of administration?

I apologize for any confusion caused by my previous response. You’re correct that there is no configuration key in the config.json file specifically related to the edition (team or enterprise). I apologize for the incorrect information provided.

Regarding your assumption that there is no easy way to effectively downgrade from EE to TE after using the deb packages, I do believe that is correct as well. Once you have installed and configured Mattermost with the enterprise edition, it is not straightforward to switch to the team edition. I believe it would require a separate installation of the team edition and migrating the data.

In terms of functionality, the team edition and the enterprise edition are functionally equivalent for most features. However, there are some additional features and functionality available in the enterprise edition that are not present in the team edition. These additional features are typically aimed at larger organizations with specific enterprise requirements.

If you find it easier to manage Mattermost using the deb packages and don’t require the enterprise-specific features, there is no real downside to using the EE-free edition for the ease of administration. The EE-free edition provides a free plan that includes most of the enterprise edition features, making it a suitable choice for many organizations.

Please let me know if there’s anything else I can assist you with or if you have any further questions!