Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'lib/learn_gitlab/onboarding.rb')
-rw-r--r--lib/learn_gitlab/onboarding.rb69
1 files changed, 0 insertions, 69 deletions
diff --git a/lib/learn_gitlab/onboarding.rb b/lib/learn_gitlab/onboarding.rb
deleted file mode 100644
index 54af01a21fe..00000000000
--- a/lib/learn_gitlab/onboarding.rb
+++ /dev/null
@@ -1,69 +0,0 @@
-# frozen_string_literal: true
-
-module LearnGitlab
- class Onboarding
- include Gitlab::Utils::StrongMemoize
- include Gitlab::Experiment::Dsl
-
- ACTION_ISSUE_IDS = {
- pipeline_created: 7,
- trial_started: 2,
- required_mr_approvals_enabled: 11,
- code_owners_enabled: 10
- }.freeze
-
- ACTION_PATHS = [
- :issue_created,
- :git_write,
- :merge_request_created,
- :user_added
- ].freeze
-
- def initialize(namespace, current_user = nil)
- @namespace = namespace
- @current_user = current_user
- end
-
- def completed_percentage
- return 0 unless onboarding_progress
-
- attributes = onboarding_progress.attributes.symbolize_keys
-
- total_actions = action_columns.count
- completed_actions = action_columns.count { |column| attributes[column].present? }
-
- (completed_actions.to_f / total_actions.to_f * 100).round
- end
-
- private
-
- def onboarding_progress
- strong_memoize(:onboarding_progress) do
- OnboardingProgress.find_by(namespace: namespace) # rubocop: disable CodeReuse/ActiveRecord
- end
- end
-
- def action_columns
- strong_memoize(:action_columns) do
- tracked_actions.map { |action_key| OnboardingProgress.column_name(action_key) }
- end
- end
-
- def tracked_actions
- ACTION_ISSUE_IDS.keys + ACTION_PATHS + deploy_section_tracked_actions
- end
-
- def deploy_section_tracked_actions
- experiment(:security_actions_continuous_onboarding,
- namespace: namespace,
- user: current_user,
- sticky_to: current_user
- ) do |e|
- e.control { [:security_scan_enabled] }
- e.candidate { [:license_scanning_run, :secure_dependency_scanning_run, :secure_dast_run] }
- end.run
- end
-
- attr_reader :namespace, :current_user
- end
-end