Snowplow admin settings should be required if Snowplow it's enabled
If an application has SnowPlow enabled through Admin > Settings > Integration, but it does not have any information on
Gitlab::SnowplowTracker will crash as it won't have any values to work with:
ParamContractError - Contract violation for argument 1 of 1: Expected: String, Actual: nil Value guarded in: SnowplowTracker::Emitter::initialize With Contract: String, And => Proc At: /Users/mayra_cabrera/.rvm/gems/ruby-2.6.3/gems/snowplow-tracker-0.6.1/lib/snowplow-tracker/emitters.rb:50 : ee/lib/gitlab/snowplow_tracker.rb:27:in `emitter' ee/lib/gitlab/snowplow_tracker.rb:19:in `tracker' ee/lib/gitlab/snowplow_tracker.rb:11:in `track_event' ee/app/services/epics/issue_promote_service.rb:27:in `track_event' ee/app/services/epics/issue_promote_service.rb:20:in `execute' ee/lib/ee/gitlab/quick_actions/issue_actions.rb:45:in `block (2 levels) in <module:IssueActions>' lib/gitlab/quick_actions/command_definition.rb:92:in `execute_block' lib/gitlab/quick_actions/command_definition.rb:55:in `execute'
Steps to reproduce
- Enable SnowPlow on Application Settings > Integrations, do not fill any other information:
- Promote an issue to an epic through a quick command
- Error above is registered ^