Update new user invitation email with permission information
requested to merge 296967-update-new-user-invitation-email-test-variation-3-group-and-permission-information into master
What does this MR do?
- This creates an experiment, using gitlab-experiment as a multi-variant addition of
permission_info
where we show the avatar with group or project and the role description. - Introduces the concept of rollout strategies and implements round-robin strategy.
We'll roll out the experiment with a feature flag members_invite_email
for round-robin selection of variants and control to see if it improves the acceptance rate to groups.
We'll achieve the even split between control
, avatar
and permission_info
by enabling the feature flag of members_invite_email
and then doing a round-robin between control
, avatar
and permission_info
.
How to test?
- In Rails console(
bundle exec rails console
), issue this command to put yourself in the experiment
Feature.enable(:members_invite_email)
- send an email 3 times to cycle through the variants. May need to send a few invites before the cache clears and updates sidekiq to see the change on feature flag state changes.
- To completely disable the experiment, disabled the feature flag.
Feature.disable(:members_invite_email)
- Go to a group or project of your choice
- Go to "members"
- Invite a new member via mail
- Go to http://localhost:3000/rails/letter_opener/
Screenshots (strongly suggested)
source | variant | |
---|---|---|
project | control | ![]() |
project | permission_info | ![]() |
project | avatar | ![]() |
group | control | ![]() |
group | permission_info | ![]() |
group | avatar | ![]() |
Does this MR meet the acceptance criteria?
Conformity
-
Changelog entry -
Documentation (if required) -
Code review guidelines -
Merge request performance guidelines -
Style guides -
Database guides -
Separation of EE specific content
Availability and Testing
-
Review and add/update tests for this feature/bug. Consider all test levels. See the Test Planning Process. -
Tested in all supported browsers -
Informed Infrastructure department of a default or new setting change, if applicable per definition of done
Security
If this MR contains changes to processing or storing of credentials or tokens, authorization and authentication methods and other items described in the security review guidelines:
-
Label as security and @ mention @gitlab-com/gl-security/appsec
-
The MR includes necessary changes to maintain consistency between UI, API, email, or other methods -
Security reports checked/validated by a reviewer from the AppSec team
Related to #296967
Edited by Doug Stull