Module: Terjira::SharedOptions

Defined in:
lib/terjira/option_support/shared_options.rb

Constant Summary collapse

OPTIONS =
{
  'project' => {
    type: :string,
    aliases: '-p',
  },
  'board' => {
    type: :numeric,
    aliases: '-b',
    banner: 'BOARD_ID',
    lazy_default: 'board'
  },
  'sprint' => {
    type: :numeric,
    banner: 'SPRINT_ID',
    lazy_default: 'sprint'
  },
  'assignee' => {
    type: :string,
    aliases: '-a'
  },
  'state' => {
    type: :array,
    aliases: '-s',
    default: %w(Active Future),
    lazy_default: %w(Active Future),
    enum: %w(Active Future Closed)
  },
  'status' => {
    type: :string,
    aliases: '-s',
  },
  'resolution' => {
    type: :string,
    aliases: '-r'
  },
  'issuetype' => {
    type: :string,
    aliases: '-t'
  },
  'priority' => {
    type: :string,
    aliases: '-P'
  },
  'summary' => {
    type: :string,
    aliases: '-S'
  },
  'description' => {
    type: :string,
    aliases: '-d'
  },
  'comment' => {
    type: :string,
    aliases: '-m'
  },
  'epiclink' => {
    type: :string,
    aliases: '-e'
  },
  'editor' => {
    type: :boolean,
    aliases: '-E'
  }
}.freeze

Instance Method Summary collapse

Instance Method Details

#jira_option(key, opts = {}) ⇒ Object



72
73
74
# File 'lib/terjira/option_support/shared_options.rb', line 72

def jira_option(key, opts = {})
  method_option(key, (OPTIONS[key.to_s] || {}).merge(opts))
end

#jira_options(*keys) ⇒ Object



68
69
70
# File 'lib/terjira/option_support/shared_options.rb', line 68

def jira_options(*keys)
  keys.each { |key| jira_option(key) }
end