class Dude::Setup::Jira
Attributes
prompt[R]
rubocop:enable Metrics/AbcSize
Public Class Methods
new(prompt)
click to toggle source
# File lib/dude/setup/jira.rb, line 6 def initialize(prompt) @prompt = prompt end
Public Instance Methods
call(settings:)
click to toggle source
rubocop:disable Metrics/AbcSize
# File lib/dude/setup/jira.rb, line 11 def call(settings:) settings[:jira][:email] = setup_email settings[:jira][:token] = setup_token settings[:jira][:project][:url] = setup_project_url settings[:jira][:project][:key] = setup_project_key settings[:jira][:board_id] = setup_board_id settings end
Private Instance Methods
setup_board_id()
click to toggle source
# File lib/dude/setup/jira.rb, line 58 def setup_board_id puts 'Just open your atlassian main board and copy id from the url after rapidView=ID part.' prompt.ask(Dude::Config.style_prompt('Board ID:'), required: true) end
setup_email()
click to toggle source
# File lib/dude/setup/jira.rb, line 25 def setup_email prompt.ask(Dude::Config.style_prompt('Jira user email:'), required: true) end
setup_project_key()
click to toggle source
# File lib/dude/setup/jira.rb, line 52 def setup_project_key prompt.ask(Dude::Config.style_prompt('KEY of your project (If your issues have id BT-123 - BT is the key):'), { required: true }) end
setup_project_url()
click to toggle source
# File lib/dude/setup/jira.rb, line 46 def setup_project_url prompt.ask(Dude::Config.style_prompt('URL of your project (Example: https://example.atlassian.net):'), { required: true }) end
setup_token()
click to toggle source
# File lib/dude/setup/jira.rb, line 29 def setup_token puts <<~HEREDOC You need to create personal token #{'1.'.bold} Log in to https://id.atlassian.com/manage/api-tokens #{'2.'.bold} Click 'Create API token.' #{'3.'.bold} From the dialog that appears, enter a memorable and concise 'Label' for your token and click 'Create.' #{'4.'.bold} Use 'Copy to clipboard' and paste the token below HEREDOC if prompt.yes?(Dude::Config.style_prompt('Open Atlassian token creation page in your browser?')) `open https://id.atlassian.com/manage-profile/security/api-tokens` end prompt.ask(Dude::Config.style_prompt('Jira token:'), required: true) end