Skip to content

Fix & reinstate !49244 (second attempt) [RUN ALL RSPEC] [RUN AS-IF-FOSS]

Dallas Reedy requested to merge 294462-fix-reinstate-49244 into master

What does this MR do?

Reinstates the changes from, and fixes the master:broken situation caused by, !49244 (merged) & !50312 (merged):

Works around the breakage in FOSS by allowing experiment type feature flags to be in CE or EE, and by moving the yml files for certain features flags into CE when the code which access them is also in CE.

Before

> ls -C ee/config/feature_flags/experiment
ci_notification_dot_experiment_percentage.yml
ci_syntax_templates_experiment_percentage.yml
contact_sales_btn_in_app_experiment_percentage.yml
customize_homepage_experiment_percentage.yml
default_to_issues_board_experiment_percentage.yml
group_only_trials_experiment_percentage.yml
invite_members_empty_group_version_a_experiment_percentage.yml
invite_members_empty_project_version_a_experiment_percentage.yml
invite_members_new_dropdown_experiment_percentage.yml
invite_members_version_a_experiment_percentage.yml
invite_members_version_b_experiment_percentage.yml
jobs_empty_state_experiment_percentage.yml
null_hypothesis.yml
onboarding_issues_experiment_percentage.yml
pipelines_empty_state_experiment_percentage.yml
remove_known_trial_form_fields_experiment_percentage.yml
trial_during_signup_experiment_percentage.yml
trial_onboarding_issues_experiment_percentage.yml
trial_registration_with_social_signin_experiment_percentage.yml
trimmed_skip_trial_copy_experiment_percentage.yml
upgrade_link_in_user_menu_a_experiment_percentage.yml

After

> ls -C config/feature_flags/experiment ee/config/feature_flags/experiment
config/feature_flags/experiment:
ci_syntax_templates_experiment_percentage.yml
customize_homepage_experiment_percentage.yml
default_to_issues_board_experiment_percentage.yml
invite_members_empty_group_version_a_experiment_percentage.yml
invite_members_empty_project_version_a_experiment_percentage.yml
invite_members_new_dropdown_experiment_percentage.yml
invite_members_version_a_experiment_percentage.yml
invite_members_version_b_experiment_percentage.yml
jobs_empty_state_experiment_percentage.yml
null_hypothesis.yml
onboarding_issues_experiment_percentage.yml
pipelines_empty_state_experiment_percentage.yml

ee/config/feature_flags/experiment:
ci_notification_dot_experiment_percentage.yml
contact_sales_btn_in_app_experiment_percentage.yml
group_only_trials_experiment_percentage.yml
remove_known_trial_form_fields_experiment_percentage.yml
trial_during_signup_experiment_percentage.yml
trial_onboarding_issues_experiment_percentage.yml
trial_registration_with_social_signin_experiment_percentage.yml
trimmed_skip_trial_copy_experiment_percentage.yml
upgrade_link_in_user_menu_a_experiment_percentage.yml

Does this MR meet the acceptance criteria?

Conformity

Availability and Testing

What risks does this change pose?

Given that the work in this MR has already caused a master:broken twice, I’d say it poses that same risk again. Hopefully we’ve learned enough from the two previous MRs to get this one right.

What additional test coverage will be needed?

This MR is set up to run all Rspecs and to run as-if-foss specs so that we can hopefully catch all the issues which previously caused master:broken.

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 #294462 (closed) & #290724 (closed)

Edited by Dallas Reedy

Merge request reports