Skip to content
This repository has been archived by the owner on Mar 13, 2024. It is now read-only.

MM-40218 - start trial from team edition, do upgrade and request license #9454

Merged
merged 9 commits into from
Dec 21, 2021

Conversation

pvev
Copy link
Contributor

@pvev pvev commented Nov 30, 2021

Summary

This PR adds changes in the licensing page Start Trial banner, so when in the team edition scenario (no enterprise binary available), the user can directly upgrade the server and start the trial with a single button click.

Ticket Link

https://mattermost.atlassian.net/browse/MM-40218

Screenshots

Normal Upgrade:

Dec-20-2021.15-52-23.mp4

Upgrade and request trial:

Dec-20-2021.16-11-562222.mp4

Release Note

This change will allow admins to upgrade the server to the enterprise version and request the trial license with a single button click enhancing product adoption by an improved user experience.

@pvev pvev added the Do Not Merge Should not be merged until this label is removed label Nov 30, 2021
@pvev pvev requested a review from annelieseklein November 30, 2021 17:09
@pvev
Copy link
Contributor Author

pvev commented Nov 30, 2021

@marianunez @nickmisasi @annelieseklein the doNotMerge label is set because I haven't been able to fully test this feature, but I would like to receive early feedback about the code implementation and the design. Thanks!

@jasonblais
Copy link
Contributor

@annelieseklein Did we confirm with legal that not including the Enterprise Edition license text on the page (but instead having it accessible via a popup modal) is okay?

(The primary use case is GitLab Omnibus which ships with Mattermost Team Edition, but has the option to upgrade to Mattermost Enterprise Edition and start a trial. The Enterprise Edition license text will need to be easily accessible to these admins)

@annelieseklein
Copy link

@jasonblais @marianunez confirmed with legal this is fine!

@jasonblais
Copy link
Contributor

@annelieseklein Great 🙌

Copy link
Contributor

@nickmisasi nickmisasi left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Small nit about translation strings but otherwise LGTM

"admin.license.enterprise.upgrade.acceptTermsInitial": "By clicking **Upgrade**, I agree to the terms of the Mattermost ",
"admin.license.enterprise.upgrade.eeLicenseLink": "Enterprise Edition License",
"admin.license.enterprise.upgrade.upgradeAndTrialTerms": ". Upgrading will download the binary and update your team edition.",
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This string isn't going to work well with localization - splitting them apart like this might look fine for english but it may not translate well to other languages

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ok! could you be please more specific about which part could potentially bring problems when translating to other languages?

/>
</a>
);
if (enterpriseReady && !restartedAfterUpgradePrefs) {
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do we also need to check if they have already had a trial license or already have a license?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

it is checked before even rendering the component. In the license settings page.

Copy link
Member

@marianunez marianunez Dec 20, 2021

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I missed that, do you have the link to where? Also, let's include these scenarios in the QA Steps for this ticket.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

you didn't missed it, sorry if I confused you, what I meant was that it was just added in my latest changes but it is not in the trial banner component: https://github.com/mattermost/mattermost-webapp/pull/9454/files#diff-6d72897675f79c66f992edffb30b7fdb4b43dd32487493ee787c5846ac69dde6R394

@marianunez marianunez added this to the v6.3.0 milestone Dec 9, 2021
@pvev pvev removed the Do Not Merge Should not be merged until this label is removed label Dec 20, 2021
@pvev pvev added the 3: QA Review Requires review by a QA tester label Dec 20, 2021
@pvev
Copy link
Contributor Author

pvev commented Dec 20, 2021

@stevemudie to test this, you will need a specific scenario required for doing the upgrade from team to enterprise. Let me know when you are ready to test and I can enable you a server for performing this tests.

@stevemudie stevemudie removed the 3: QA Review Requires review by a QA tester label Dec 20, 2021
Copy link
Contributor

@stevemudie stevemudie left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks and works great @pablovelezvidal!

Thanks for your help earlier in getting this set up and walking me though what to expect.

Copy link
Member

@marianunez marianunez left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks @pablovelezvidal!

@marianunez marianunez added the 4: Reviews Complete All reviewers have approved the pull request label Dec 21, 2021
@marianunez
Copy link
Member

@pablovelezvidal the new v6.3 branch is ready and this should be cherry picked there after merge.

@pvev pvev merged commit 3f9d6da into master Dec 21, 2021
@pvev pvev deleted the MM-40218-start-trial-from-team-edition branch December 21, 2021 23:03
@amyblais
Copy link
Member

/cherry-pick release-6.3

@mattermod
Copy link
Contributor

Cherry pick is scheduled.

@mattermod
Copy link
Contributor

Error trying doing the automated Cherry picking. Please do this manually

+++ Updating remotes...
Fetching upstream
Failed to add the RSA host key for IP address '140.82.113.3' to the list of known hosts (/app/.ssh/known_hosts).
From github.com:mattermost/mattermost-webapp
   3e6009b5f..3cc5bb7e6  focalboard-compliance-export -> upstream/focalboard-compliance-export
   dda68425f..3f9d6da4c  master      -> upstream/master
   5221d6deb..6a5ae55c5  release-6.3 -> upstream/release-6.3
Fetching origin
Failed to add the RSA host key for IP address '140.82.114.4' to the list of known hosts (/app/.ssh/known_hosts).
+++ Updating remotes done...
+++ Creating local branch automated-cherry-pick-of-mattermost-webapp-#9454-upstream-release-6.3-1640129491
Switched to a new branch 'automated-cherry-pick-of-mattermost-webapp-#9454-upstream-release-6.3-1640129491'
Branch 'automated-cherry-pick-of-mattermost-webapp-#9454-upstream-release-6.3-1640129491' set up to track remote branch 'release-6.3' from 'upstream'.

+++ About to attempt cherry pick of PR #9454 with merge commit 3f9d6da4c71783f0fcfa30c9940cf2d931cf8140.

error: could not apply 3f9d6da4c... MM-40218 - start trial from team edition, do upgrade and request license (#9454)
hint: after resolving the conflicts, mark the corrected paths
hint: with 'git add <paths>' or 'git rm <paths>'
hint: and commit the result with 'git commit'

+++ Conflicts detected:

UU components/admin_console/license_settings/license_settings.tsx
Aborting.

+++ Aborting in-progress git cherry-pick.

+++ Returning you to the master branch and cleaning up.

@amyblais amyblais added the CherryPick/Approved Meant for the quality or patch release tracked in the milestone label Dec 21, 2021
@amyblais
Copy link
Member

@pablovelezvidal Seems that this needs a manual cherry-pick to v6.3.

@pvev
Copy link
Contributor Author

pvev commented Dec 22, 2021

@pablovelezvidal Seems that this needs a manual cherry-pick to v6.3.

ok! on it.

pvev added a commit that referenced this pull request Dec 22, 2021
…nse (#9454)

* MM-40218 - start trial from team edition, do upgrade and request license

* add i18n texts

* fix snapshots

* show restarting text and define which button was clicked

* prevent the preference to get saved

* hide the update and request trial banner if normal button is clicked

* fix tests and snapshots

Co-authored-by: Pablo Velez Vidal <pablo.velez@mattermost.com>
@pvev
Copy link
Contributor Author

pvev commented Dec 22, 2021

@pablovelezvidal Seems that this needs a manual cherry-pick to v6.3.

done @amyblais https://github.com/mattermost/mattermost-webapp/tree/release-6.3

@amyblais
Copy link
Member

Thanks!

@amyblais amyblais added CherryPick/Done Successfully cherry-picked to the quality or patch release tracked in the milestone Changelog/Done Required changelog entry has been written Docs/Not Needed Does not require documentation and removed CherryPick/Approved Meant for the quality or patch release tracked in the milestone labels Dec 22, 2021
M-ZubairAhmed pushed a commit that referenced this pull request Dec 25, 2021
…nse (#9454)

* MM-40218 - start trial from team edition, do upgrade and request license

* add i18n texts

* fix snapshots

* show restarting text and define which button was clicked

* prevent the preference to get saved

* hide the update and request trial banner if normal button is clicked

* fix tests and snapshots

Co-authored-by: Pablo Velez Vidal <pablo.velez@mattermost.com>
M-ZubairAhmed pushed a commit that referenced this pull request Dec 25, 2021
…nse (#9454)

* MM-40218 - start trial from team edition, do upgrade and request license

* add i18n texts

* fix snapshots

* show restarting text and define which button was clicked

* prevent the preference to get saved

* hide the update and request trial banner if normal button is clicked

* fix tests and snapshots

Co-authored-by: Pablo Velez Vidal <pablo.velez@mattermost.com>
M-ZubairAhmed pushed a commit that referenced this pull request Dec 25, 2021
use state.show & top level onExited for invitation modal (#9550)

[MM-40407] - Do not show the Renew Now if the license id does not exist in the portal (#9544)

* [MM-40407] - Do not show the Renew Now if the license id does not exist in the portal

* fix translation strings

* add unit test

* improvements

MM-40600 - use custom type and set correct value to api response (#9546)

Automatic Merge

MM-40218 - start trial from team edition, do upgrade and request license (#9454)

* MM-40218 - start trial from team edition, do upgrade and request license

* add i18n texts

* fix snapshots

* show restarting text and define which button was clicked

* prevent the preference to get saved

* hide the update and request trial banner if normal button is clicked

* fix tests and snapshots

MM-40114/MM-40545 Clean up MobileSidebarHeader and have it use getIsMobileView (#9512)

* MM-40114 Clean up LegacySidebarHeader and remove usage of Utils.isMobile

* MM-40114 Rename LegacySidebarHeader to MobileSidebarHeader and remove unused dropdown

* MM-40545 Fix Account Settings shortcut in desktop view

* Apply suggestions from code review

Co-authored-by: Jelena Gilliam <52937121+jgilliam17@users.noreply.github.com>
Co-Authored-By: Pablo Velez Vidal <pablo.velez@mattermost.com>
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
4: Reviews Complete All reviewers have approved the pull request Changelog/Done Required changelog entry has been written CherryPick/Done Successfully cherry-picked to the quality or patch release tracked in the milestone Docs/Not Needed Does not require documentation QA Review Done release-note
Projects
None yet
Development

Successfully merging this pull request may close these issues.

9 participants