gitlab-org--gitlab-foss/app/experiments/empty_repo_upload_experiment.rb

22 lines
698 B
Ruby

# frozen_string_literal: true
class EmptyRepoUploadExperiment < ApplicationExperiment # rubocop:disable Gitlab/NamespacedClass
include ProjectCommitCount
TRACKING_START_DATE = DateTime.parse('2021/4/20')
INITIAL_COMMIT_COUNT = 1
def track_initial_write
return unless should_track? # early return if we don't need to ask for commit counts
return unless context.project.created_at > TRACKING_START_DATE # early return for older projects
return unless commit_count == INITIAL_COMMIT_COUNT
track(:initial_write, project: context.project)
end
private
def commit_count
commit_count_for(context.project, max_count: INITIAL_COMMIT_COUNT, experiment: name)
end
end