Class: Apadmi::Grout::DIWrapper
- Inherits:
-
Object
- Object
- Apadmi::Grout::DIWrapper
- Defined in:
- lib/fastlane/plugin/apadmi_grout/utils/di_wrapper.rb
Overview
Helper function for constructing the DI from params
Class Method Summary collapse
- .ado_config(params, logger) ⇒ Object
- .confluence_service(params) ⇒ Object
- .di(params, logger) ⇒ Object
- .jira_config(params, logger) ⇒ Object
Class Method Details
.ado_config(params, logger) ⇒ Object
13 14 15 16 17 18 19 20 21 22 23 24 |
# File 'lib/fastlane/plugin/apadmi_grout/utils/di_wrapper.rb', line 13 def self.ado_config(params, logger) raise "Invalid ADO personal access token" if params[:ado_pat].blank? Apadmi::Grout::DependencyInjector.init_for_ado( Apadmi::Grout::AdoConfig.new( personal_access_token: params[:ado_pat], base_url: params[:board_base_url], flag_tag: "FLAGGED" ), logger ) end |
.confluence_service(params) ⇒ Object
7 8 9 10 11 |
# File 'lib/fastlane/plugin/apadmi_grout/utils/di_wrapper.rb', line 7 def self.confluence_service(params) auth_service = Apadmi::Grout::ConfluenceAuthService.new(params[:confluence_client_id], params[:confluence_client_secret]) network_service = Apadmi::Grout::NetworkService.new(auth_service, params[:confluence_base_url]) Apadmi::Grout::ConfluenceService.new(network_service) end |
.di(params, logger) ⇒ Object
43 44 45 46 47 48 49 50 51 52 |
# File 'lib/fastlane/plugin/apadmi_grout/utils/di_wrapper.rb', line 43 def self.di(params, logger) case params[:board_provider] when "ADO" ado_config(params, logger) when "JIRA" jira_config(params, logger) else raise "Unsupported board provider: #{params[:board_provider]}" end end |
.jira_config(params, logger) ⇒ Object
26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 |
# File 'lib/fastlane/plugin/apadmi_grout/utils/di_wrapper.rb', line 26 def self.jira_config(params, logger) raise "Invalid jira username" if params[:jira_username].blank? raise "Invalid jira_api_token" if params[:jira_api_token].blank? raise "Invalid jira_project_key" if params[:jira_project_key].blank? Apadmi::Grout::DependencyInjector.init_for_jira( Apadmi::Grout::JiraConfig.new( username: params[:jira_username], api_token: params[:jira_api_token], base_url: params[:board_base_url], context_path: params[:jira_context_path], project_key: params[:jira_project_key] ), logger ) end |