jira_command 0.1.0 → 0.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
 - data/.rubocop.yml +4 -2
 - data/README.md +46 -0
 - data/lib/jira_command/cli.rb +2 -0
 - data/lib/jira_command/command/assign.rb +2 -2
 - data/lib/jira_command/command/config.rb +1 -1
 - data/lib/jira_command/command/issue.rb +64 -0
 - data/lib/jira_command/command/status.rb +1 -1
 - data/lib/jira_command/command/transition.rb +3 -1
 - data/lib/jira_command/jira/issue.rb +40 -0
 - data/lib/jira_command/jira/issuetype.rb +19 -0
 - data/lib/jira_command/jira/project.rb +19 -0
 - data/lib/jira_command/jira/status.rb +2 -2
 - data/lib/jira_command/jira/transition.rb +1 -1
 - data/lib/jira_command/jira/user.rb +1 -1
 - data/lib/jira_command/version.rb +1 -1
 - metadata +6 -2
 
    
        checksums.yaml
    CHANGED
    
    | 
         @@ -1,7 +1,7 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            ---
         
     | 
| 
       2 
2 
     | 
    
         
             
            SHA256:
         
     | 
| 
       3 
     | 
    
         
            -
              metadata.gz:  
     | 
| 
       4 
     | 
    
         
            -
              data.tar.gz:  
     | 
| 
      
 3 
     | 
    
         
            +
              metadata.gz: de9b915ed2af20b1590e31703459e748ef701601eeb3dd5ecb0be0ba1eb87675
         
     | 
| 
      
 4 
     | 
    
         
            +
              data.tar.gz: 58664c3370e6ad144f03decdff7d43ad9c89a3dad494e51b2579a7cf24017d2c
         
     | 
| 
       5 
5 
     | 
    
         
             
            SHA512:
         
     | 
| 
       6 
     | 
    
         
            -
              metadata.gz:  
     | 
| 
       7 
     | 
    
         
            -
              data.tar.gz:  
     | 
| 
      
 6 
     | 
    
         
            +
              metadata.gz: a802d9ee4afaf814ed424f1fe0a23823f7f998cedd96909f8f9ec2f826bd0360be61bde297330f1686e0cf03300a1b4f18f4f71cccdcbafa273e93d95a6910db
         
     | 
| 
      
 7 
     | 
    
         
            +
              data.tar.gz: c7af75ea99e6a674e0fbc9d9ce24220a35e771ac91f17ade1b20e5042c37f48f1ae75a7185b703822bc417d5d2891154814bfd2dc406e5fc6ea19c7e6d92c224
         
     | 
    
        data/.rubocop.yml
    CHANGED
    
    | 
         @@ -1,4 +1,3 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
             
     | 
| 
       2 
1 
     | 
    
         
             
            Style/FrozenStringLiteralComment:
         
     | 
| 
       3 
2 
     | 
    
         
             
              Enabled: false
         
     | 
| 
       4 
3 
     | 
    
         | 
| 
         @@ -45,7 +44,7 @@ Metrics/BlockLength: 
     | 
|
| 
       45 
44 
     | 
    
         
             
              Max: 60
         
     | 
| 
       46 
45 
     | 
    
         | 
| 
       47 
46 
     | 
    
         
             
            Style/HashEachMethods:
         
     | 
| 
       48 
     | 
    
         
            -
              Enabled: true 
     | 
| 
      
 47 
     | 
    
         
            +
              Enabled: true
         
     | 
| 
       49 
48 
     | 
    
         | 
| 
       50 
49 
     | 
    
         
             
            Metrics/AbcSize:
         
     | 
| 
       51 
50 
     | 
    
         
             
              Max: 50
         
     | 
| 
         @@ -56,6 +55,9 @@ Style/AsciiComments: 
     | 
|
| 
       56 
55 
     | 
    
         
             
            Style/ClassAndModuleChildren:
         
     | 
| 
       57 
56 
     | 
    
         
             
              Enabled: false
         
     | 
| 
       58 
57 
     | 
    
         | 
| 
      
 58 
     | 
    
         
            +
            Metrics/ParameterLists:
         
     | 
| 
      
 59 
     | 
    
         
            +
              Enabled: false
         
     | 
| 
      
 60 
     | 
    
         
            +
             
     | 
| 
       59 
61 
     | 
    
         
             
            Style/HashTransformKeys:
         
     | 
| 
       60 
62 
     | 
    
         
             
              Enabled: false
         
     | 
| 
       61 
63 
     | 
    
         | 
    
        data/README.md
    CHANGED
    
    | 
         @@ -22,6 +22,8 @@ Or install it yourself as: 
     | 
|
| 
       22 
22 
     | 
    
         | 
| 
       23 
23 
     | 
    
         
             
            ## Usage
         
     | 
| 
       24 
24 
     | 
    
         | 
| 
      
 25 
     | 
    
         
            +
            You need to get token in [JIRA](https://id.atlassian.com/manage-profile/security).
         
     | 
| 
      
 26 
     | 
    
         
            +
             
     | 
| 
       25 
27 
     | 
    
         
             
            ```bash
         
     | 
| 
       26 
28 
     | 
    
         
             
            $ jira_command config create
         
     | 
| 
       27 
29 
     | 
    
         
             
            > Please input your site url: https://<your-domain>.atlassian.net/
         
     | 
| 
         @@ -39,6 +41,50 @@ Commands: 
     | 
|
| 
       39 
41 
     | 
    
         
             
              jira_command user            # list all users
         
     | 
| 
       40 
42 
     | 
    
         
             
            ```
         
     | 
| 
       41 
43 
     | 
    
         | 
| 
      
 44 
     | 
    
         
            +
            <b>the most useful commands</b>
         
     | 
| 
      
 45 
     | 
    
         
            +
             
     | 
| 
      
 46 
     | 
    
         
            +
            ```
         
     | 
| 
      
 47 
     | 
    
         
            +
            $ jira_command list help my
         
     | 
| 
      
 48 
     | 
    
         
            +
            Usage:
         
     | 
| 
      
 49 
     | 
    
         
            +
              jira_command list my
         
     | 
| 
      
 50 
     | 
    
         
            +
             
     | 
| 
      
 51 
     | 
    
         
            +
            Options:
         
     | 
| 
      
 52 
     | 
    
         
            +
              c, [--current=CURRENT]
         
     | 
| 
      
 53 
     | 
    
         
            +
              u, [--unresolved=UNRESOLVED]
         
     | 
| 
      
 54 
     | 
    
         
            +
             
     | 
| 
      
 55 
     | 
    
         
            +
            list your issues
         
     | 
| 
      
 56 
     | 
    
         
            +
             
     | 
| 
      
 57 
     | 
    
         
            +
             
     | 
| 
      
 58 
     | 
    
         
            +
            $ jira_command list help my
         
     | 
| 
      
 59 
     | 
    
         
            +
            Usage:
         
     | 
| 
      
 60 
     | 
    
         
            +
              jira_command list my
         
     | 
| 
      
 61 
     | 
    
         
            +
             
     | 
| 
      
 62 
     | 
    
         
            +
            Options:
         
     | 
| 
      
 63 
     | 
    
         
            +
              c, [--current=CURRENT]
         
     | 
| 
      
 64 
     | 
    
         
            +
              u, [--unresolved=UNRESOLVED]
         
     | 
| 
      
 65 
     | 
    
         
            +
             
     | 
| 
      
 66 
     | 
    
         
            +
            list your issues
         
     | 
| 
      
 67 
     | 
    
         
            +
             
     | 
| 
      
 68 
     | 
    
         
            +
            $ jira_command transition help issue
         
     | 
| 
      
 69 
     | 
    
         
            +
            Usage:
         
     | 
| 
      
 70 
     | 
    
         
            +
              jira_command transition issue
         
     | 
| 
      
 71 
     | 
    
         
            +
             
     | 
| 
      
 72 
     | 
    
         
            +
            Options:
         
     | 
| 
      
 73 
     | 
    
         
            +
              c, [--current=CURRENT]
         
     | 
| 
      
 74 
     | 
    
         
            +
              m, [--mine=MINE]
         
     | 
| 
      
 75 
     | 
    
         
            +
             
     | 
| 
      
 76 
     | 
    
         
            +
            transite issue status
         
     | 
| 
      
 77 
     | 
    
         
            +
             
     | 
| 
      
 78 
     | 
    
         
            +
            $ jira_command assign help exec
         
     | 
| 
      
 79 
     | 
    
         
            +
            Usage:
         
     | 
| 
      
 80 
     | 
    
         
            +
              jira_command assign exec
         
     | 
| 
      
 81 
     | 
    
         
            +
             
     | 
| 
      
 82 
     | 
    
         
            +
            Options:
         
     | 
| 
      
 83 
     | 
    
         
            +
              i, [--issue=ISSUE]
         
     | 
| 
      
 84 
     | 
    
         
            +
             
     | 
| 
      
 85 
     | 
    
         
            +
            assign to user
         
     | 
| 
      
 86 
     | 
    
         
            +
            ```
         
     | 
| 
      
 87 
     | 
    
         
            +
             
     | 
| 
       42 
88 
     | 
    
         
             
            ## Development
         
     | 
| 
       43 
89 
     | 
    
         | 
| 
       44 
90 
     | 
    
         
             
            After checking out the repo, run `bin/setup` to install dependencies. Then, run `rake spec` to run the tests. You can also run `bin/console` for an interactive prompt that will allow you to experiment.
         
     | 
    
        data/lib/jira_command/cli.rb
    CHANGED
    
    | 
         @@ -6,6 +6,7 @@ require_relative 'command/user' 
     | 
|
| 
       6 
6 
     | 
    
         
             
            require_relative 'command/assign'
         
     | 
| 
       7 
7 
     | 
    
         
             
            require_relative 'command/status'
         
     | 
| 
       8 
8 
     | 
    
         
             
            require_relative 'command/transition'
         
     | 
| 
      
 9 
     | 
    
         
            +
            require_relative 'command/issue'
         
     | 
| 
       9 
10 
     | 
    
         | 
| 
       10 
11 
     | 
    
         
             
            module JiraCommand
         
     | 
| 
       11 
12 
     | 
    
         
             
              class CLI < Thor
         
     | 
| 
         @@ -15,5 +16,6 @@ module JiraCommand 
     | 
|
| 
       15 
16 
     | 
    
         
             
                register(JiraCommand::Command::Assign, 'assign', 'assign', 'set or unset assign in issue')
         
     | 
| 
       16 
17 
     | 
    
         
             
                register(JiraCommand::Command::Status, 'status', 'status', 'show all status in project')
         
     | 
| 
       17 
18 
     | 
    
         
             
                register(JiraCommand::Command::Transition, 'transition', 'transition', 'transition issues')
         
     | 
| 
      
 19 
     | 
    
         
            +
                register(JiraCommand::Command::Issue, 'issue', 'issue', 'create a issue')
         
     | 
| 
       18 
20 
     | 
    
         
             
              end
         
     | 
| 
       19 
21 
     | 
    
         
             
            end
         
     | 
| 
         @@ -7,9 +7,9 @@ require_relative '../jira/assign' 
     | 
|
| 
       7 
7 
     | 
    
         
             
            module JiraCommand
         
     | 
| 
       8 
8 
     | 
    
         
             
              module Command
         
     | 
| 
       9 
9 
     | 
    
         
             
                class Assign < Thor
         
     | 
| 
       10 
     | 
    
         
            -
                  desc ' 
     | 
| 
      
 10 
     | 
    
         
            +
                  desc 'exec', 'assign to user'
         
     | 
| 
       11 
11 
     | 
    
         
             
                  option 'issue', aliases: 'i', required: false
         
     | 
| 
       12 
     | 
    
         
            -
                  def  
     | 
| 
      
 12 
     | 
    
         
            +
                  def exec
         
     | 
| 
       13 
13 
     | 
    
         
             
                    config = JiraCommand::Config.new.read
         
     | 
| 
       14 
14 
     | 
    
         | 
| 
       15 
15 
     | 
    
         
             
                    user_api = JiraCommand::Jira::User.new(config)
         
     | 
| 
         @@ -0,0 +1,64 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            require 'jira_command'
         
     | 
| 
      
 2 
     | 
    
         
            +
            require_relative '../config'
         
     | 
| 
      
 3 
     | 
    
         
            +
            require_relative '../jira/issuetype'
         
     | 
| 
      
 4 
     | 
    
         
            +
            require_relative '../jira/project'
         
     | 
| 
      
 5 
     | 
    
         
            +
            require_relative '../jira/issue'
         
     | 
| 
      
 6 
     | 
    
         
            +
             
     | 
| 
      
 7 
     | 
    
         
            +
            module JiraCommand
         
     | 
| 
      
 8 
     | 
    
         
            +
              module Command
         
     | 
| 
      
 9 
     | 
    
         
            +
                class Issue < Thor
         
     | 
| 
      
 10 
     | 
    
         
            +
                  desc 'create', 'create new issue'
         
     | 
| 
      
 11 
     | 
    
         
            +
                  def create
         
     | 
| 
      
 12 
     | 
    
         
            +
                    config = JiraCommand::Config.new.read
         
     | 
| 
      
 13 
     | 
    
         
            +
                    jira_issue_type = JiraCommand::Jira::IssueType.new(config)
         
     | 
| 
      
 14 
     | 
    
         
            +
                    issue_types = jira_issue_type.list
         
     | 
| 
      
 15 
     | 
    
         
            +
             
     | 
| 
      
 16 
     | 
    
         
            +
                    prompt = TTY::Prompt.new
         
     | 
| 
      
 17 
     | 
    
         
            +
             
     | 
| 
      
 18 
     | 
    
         
            +
                    issue_type = prompt.select('Which issue type do you want to create?') do |menu|
         
     | 
| 
      
 19 
     | 
    
         
            +
                      issue_types.each do |item|
         
     | 
| 
      
 20 
     | 
    
         
            +
                        menu.choice name: item[:name], value: item[:id]
         
     | 
| 
      
 21 
     | 
    
         
            +
                      end
         
     | 
| 
      
 22 
     | 
    
         
            +
                    end
         
     | 
| 
      
 23 
     | 
    
         
            +
             
     | 
| 
      
 24 
     | 
    
         
            +
                    jira_project = JiraCommand::Jira::Project.new(config)
         
     | 
| 
      
 25 
     | 
    
         
            +
                    projects = jira_project.list
         
     | 
| 
      
 26 
     | 
    
         
            +
             
     | 
| 
      
 27 
     | 
    
         
            +
                    project = prompt.select('Which project does the issue belong to?') do |menu|
         
     | 
| 
      
 28 
     | 
    
         
            +
                      projects.each do |item|
         
     | 
| 
      
 29 
     | 
    
         
            +
                        menu.choice name: item[:name], value: { id: item[:id], key: item[:key] }
         
     | 
| 
      
 30 
     | 
    
         
            +
                      end
         
     | 
| 
      
 31 
     | 
    
         
            +
                    end
         
     | 
| 
      
 32 
     | 
    
         
            +
             
     | 
| 
      
 33 
     | 
    
         
            +
                    user_api = JiraCommand::Jira::User.new(config)
         
     | 
| 
      
 34 
     | 
    
         
            +
                    user_list = user_api.all_list(project: project[:key])
         
     | 
| 
      
 35 
     | 
    
         
            +
             
     | 
| 
      
 36 
     | 
    
         
            +
                    assignee = prompt.select('Who do you want to assign?') do |menu|
         
     | 
| 
      
 37 
     | 
    
         
            +
                      user_list.each do |user|
         
     | 
| 
      
 38 
     | 
    
         
            +
                        menu.choice name: user[:name], value: user[:account_id]
         
     | 
| 
      
 39 
     | 
    
         
            +
                      end
         
     | 
| 
      
 40 
     | 
    
         
            +
                    end
         
     | 
| 
      
 41 
     | 
    
         
            +
             
     | 
| 
      
 42 
     | 
    
         
            +
                    reporter = prompt.select('Who are you?') do |menu|
         
     | 
| 
      
 43 
     | 
    
         
            +
                      user_list.each do |user|
         
     | 
| 
      
 44 
     | 
    
         
            +
                        menu.choice name: user[:name], value: user[:account_id]
         
     | 
| 
      
 45 
     | 
    
         
            +
                      end
         
     | 
| 
      
 46 
     | 
    
         
            +
                    end
         
     | 
| 
      
 47 
     | 
    
         
            +
             
     | 
| 
      
 48 
     | 
    
         
            +
                    summary = prompt.ask('Please input issue summary: ')
         
     | 
| 
      
 49 
     | 
    
         
            +
                    description = prompt.ask('Please input issue description: ')
         
     | 
| 
      
 50 
     | 
    
         
            +
             
     | 
| 
      
 51 
     | 
    
         
            +
                    jira_issue = JiraCommand::Jira::Issue.new(config)
         
     | 
| 
      
 52 
     | 
    
         
            +
             
     | 
| 
      
 53 
     | 
    
         
            +
                    puts 'the created issue url: ' + jira_issue.create(
         
     | 
| 
      
 54 
     | 
    
         
            +
                      summary: summary,
         
     | 
| 
      
 55 
     | 
    
         
            +
                      description: description,
         
     | 
| 
      
 56 
     | 
    
         
            +
                      assignee: assignee,
         
     | 
| 
      
 57 
     | 
    
         
            +
                      reporter: reporter,
         
     | 
| 
      
 58 
     | 
    
         
            +
                      project_id: project[:id],
         
     | 
| 
      
 59 
     | 
    
         
            +
                      issuetype_id: issue_type
         
     | 
| 
      
 60 
     | 
    
         
            +
                    )
         
     | 
| 
      
 61 
     | 
    
         
            +
                  end
         
     | 
| 
      
 62 
     | 
    
         
            +
                end
         
     | 
| 
      
 63 
     | 
    
         
            +
              end
         
     | 
| 
      
 64 
     | 
    
         
            +
            end
         
     | 
| 
         @@ -46,7 +46,9 @@ module JiraCommand 
     | 
|
| 
       46 
46 
     | 
    
         | 
| 
       47 
47 
     | 
    
         
             
                    issue_key = prompt.select('Which issue do you want to transite?') do |menu|
         
     | 
| 
       48 
48 
     | 
    
         
             
                      issues_list['issues'].map do |i|
         
     | 
| 
       49 
     | 
    
         
            -
                         
     | 
| 
      
 49 
     | 
    
         
            +
                        assignee = i['fields']['assignee']
         
     | 
| 
      
 50 
     | 
    
         
            +
                        menu.choice(name: "#{assignee.nil? ? 'not assigned' : assignee['displayName']}: #{i['fields']['summary']}(#{i['fields']['status']['name']})",
         
     | 
| 
      
 51 
     | 
    
         
            +
                                    value: i['key'])
         
     | 
| 
       50 
52 
     | 
    
         
             
                      end
         
     | 
| 
       51 
53 
     | 
    
         
             
                    end
         
     | 
| 
       52 
54 
     | 
    
         | 
| 
         @@ -0,0 +1,40 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            require 'jira_command'
         
     | 
| 
      
 2 
     | 
    
         
            +
            require 'faraday'
         
     | 
| 
      
 3 
     | 
    
         
            +
            require 'json'
         
     | 
| 
      
 4 
     | 
    
         
            +
            require_relative 'base'
         
     | 
| 
      
 5 
     | 
    
         
            +
             
     | 
| 
      
 6 
     | 
    
         
            +
            module JiraCommand
         
     | 
| 
      
 7 
     | 
    
         
            +
              module Jira
         
     | 
| 
      
 8 
     | 
    
         
            +
                class Issue < JiraCommand::Jira::Base
         
     | 
| 
      
 9 
     | 
    
         
            +
                  BASE_PATH = 'rest/api/2/issue'.freeze
         
     | 
| 
      
 10 
     | 
    
         
            +
             
     | 
| 
      
 11 
     | 
    
         
            +
                  def create(summary:, description:, assignee:, reporter:, project_id:, issuetype_id:)
         
     | 
| 
      
 12 
     | 
    
         
            +
                    request_body = { fields: {
         
     | 
| 
      
 13 
     | 
    
         
            +
                      project: {
         
     | 
| 
      
 14 
     | 
    
         
            +
                        id: project_id
         
     | 
| 
      
 15 
     | 
    
         
            +
                      },
         
     | 
| 
      
 16 
     | 
    
         
            +
                      summary: summary,
         
     | 
| 
      
 17 
     | 
    
         
            +
                      issuetype: {
         
     | 
| 
      
 18 
     | 
    
         
            +
                        id: issuetype_id
         
     | 
| 
      
 19 
     | 
    
         
            +
                      },
         
     | 
| 
      
 20 
     | 
    
         
            +
                      assignee: {
         
     | 
| 
      
 21 
     | 
    
         
            +
                        id: assignee
         
     | 
| 
      
 22 
     | 
    
         
            +
                      },
         
     | 
| 
      
 23 
     | 
    
         
            +
                      reporter: {
         
     | 
| 
      
 24 
     | 
    
         
            +
                        id: reporter
         
     | 
| 
      
 25 
     | 
    
         
            +
                      },
         
     | 
| 
      
 26 
     | 
    
         
            +
                      description: description
         
     | 
| 
      
 27 
     | 
    
         
            +
                    } }.to_json
         
     | 
| 
      
 28 
     | 
    
         
            +
             
     | 
| 
      
 29 
     | 
    
         
            +
                    res = @conn.post do |req|
         
     | 
| 
      
 30 
     | 
    
         
            +
                      req.url BASE_PATH
         
     | 
| 
      
 31 
     | 
    
         
            +
                      req.body = request_body
         
     | 
| 
      
 32 
     | 
    
         
            +
                    end
         
     | 
| 
      
 33 
     | 
    
         
            +
             
     | 
| 
      
 34 
     | 
    
         
            +
                    body = JSON.parse(res.body)
         
     | 
| 
      
 35 
     | 
    
         
            +
             
     | 
| 
      
 36 
     | 
    
         
            +
                    @config['jira_url'] + 'browse/' + body['key']
         
     | 
| 
      
 37 
     | 
    
         
            +
                  end
         
     | 
| 
      
 38 
     | 
    
         
            +
                end
         
     | 
| 
      
 39 
     | 
    
         
            +
              end
         
     | 
| 
      
 40 
     | 
    
         
            +
            end
         
     | 
| 
         @@ -0,0 +1,19 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            require 'jira_command'
         
     | 
| 
      
 2 
     | 
    
         
            +
            require 'faraday'
         
     | 
| 
      
 3 
     | 
    
         
            +
            require 'json'
         
     | 
| 
      
 4 
     | 
    
         
            +
            require_relative 'base'
         
     | 
| 
      
 5 
     | 
    
         
            +
             
     | 
| 
      
 6 
     | 
    
         
            +
            module JiraCommand
         
     | 
| 
      
 7 
     | 
    
         
            +
              module Jira
         
     | 
| 
      
 8 
     | 
    
         
            +
                class IssueType < JiraCommand::Jira::Base
         
     | 
| 
      
 9 
     | 
    
         
            +
                  BASE_PATH = 'rest/api/2/issuetype'.freeze
         
     | 
| 
      
 10 
     | 
    
         
            +
             
     | 
| 
      
 11 
     | 
    
         
            +
                  def list
         
     | 
| 
      
 12 
     | 
    
         
            +
                    res = @conn.get(BASE_PATH)
         
     | 
| 
      
 13 
     | 
    
         
            +
                    body = JSON.parse(res.body)
         
     | 
| 
      
 14 
     | 
    
         
            +
             
     | 
| 
      
 15 
     | 
    
         
            +
                    body.map { |item| { name: item['untranslatedName'], id: item['id'] } }
         
     | 
| 
      
 16 
     | 
    
         
            +
                  end
         
     | 
| 
      
 17 
     | 
    
         
            +
                end
         
     | 
| 
      
 18 
     | 
    
         
            +
              end
         
     | 
| 
      
 19 
     | 
    
         
            +
            end
         
     | 
| 
         @@ -0,0 +1,19 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            require 'jira_command'
         
     | 
| 
      
 2 
     | 
    
         
            +
            require 'faraday'
         
     | 
| 
      
 3 
     | 
    
         
            +
            require 'json'
         
     | 
| 
      
 4 
     | 
    
         
            +
            require_relative 'base'
         
     | 
| 
      
 5 
     | 
    
         
            +
             
     | 
| 
      
 6 
     | 
    
         
            +
            module JiraCommand
         
     | 
| 
      
 7 
     | 
    
         
            +
              module Jira
         
     | 
| 
      
 8 
     | 
    
         
            +
                class Project < JiraCommand::Jira::Base
         
     | 
| 
      
 9 
     | 
    
         
            +
                  BASE_PATH = 'rest/api/2/project'.freeze
         
     | 
| 
      
 10 
     | 
    
         
            +
             
     | 
| 
      
 11 
     | 
    
         
            +
                  def list
         
     | 
| 
      
 12 
     | 
    
         
            +
                    res = @conn.get(BASE_PATH)
         
     | 
| 
      
 13 
     | 
    
         
            +
                    body = JSON.parse(res.body)
         
     | 
| 
      
 14 
     | 
    
         
            +
             
     | 
| 
      
 15 
     | 
    
         
            +
                    body.map { |item| { name: item['name'], id: item['id'], key: item['key'] } }
         
     | 
| 
      
 16 
     | 
    
         
            +
                  end
         
     | 
| 
      
 17 
     | 
    
         
            +
                end
         
     | 
| 
      
 18 
     | 
    
         
            +
              end
         
     | 
| 
      
 19 
     | 
    
         
            +
            end
         
     | 
| 
         @@ -9,7 +9,7 @@ module JiraCommand 
     | 
|
| 
       9 
9 
     | 
    
         
             
                class Status < JiraCommand::Jira::Base
         
     | 
| 
       10 
10 
     | 
    
         
             
                  BASE_PATH = 'rest/api/2/status'.freeze
         
     | 
| 
       11 
11 
     | 
    
         | 
| 
       12 
     | 
    
         
            -
                  def list 
     | 
| 
      
 12 
     | 
    
         
            +
                  def list
         
     | 
| 
       13 
13 
     | 
    
         
             
                    res = @conn.get(BASE_PATH)
         
     | 
| 
       14 
14 
     | 
    
         | 
| 
       15 
15 
     | 
    
         
             
                    res = JSON.parse(res.body)
         
     | 
| 
         @@ -20,7 +20,7 @@ module JiraCommand 
     | 
|
| 
       20 
20 
     | 
    
         
             
                  def transite(issue_key:, target_status_id:)
         
     | 
| 
       21 
21 
     | 
    
         
             
                    request_url = "rest/api/2/issue/#{issue_key}/transitions"
         
     | 
| 
       22 
22 
     | 
    
         | 
| 
       23 
     | 
    
         
            -
                     
     | 
| 
      
 23 
     | 
    
         
            +
                    @conn.post do |req|
         
     | 
| 
       24 
24 
     | 
    
         
             
                      req.url request_url
         
     | 
| 
       25 
25 
     | 
    
         
             
                      req.body = { transition: { id: target_status_id } }.to_json
         
     | 
| 
       26 
26 
     | 
    
         
             
                    end
         
     | 
| 
         @@ -19,7 +19,7 @@ module JiraCommand 
     | 
|
| 
       19 
19 
     | 
    
         
             
                  def transite(issue_key:, target_transition_id:)
         
     | 
| 
       20 
20 
     | 
    
         
             
                    request_url = "rest/api/2/issue/#{issue_key}/transitions"
         
     | 
| 
       21 
21 
     | 
    
         | 
| 
       22 
     | 
    
         
            -
                     
     | 
| 
      
 22 
     | 
    
         
            +
                    @conn.post do |req|
         
     | 
| 
       23 
23 
     | 
    
         
             
                      req.url request_url
         
     | 
| 
       24 
24 
     | 
    
         
             
                      req.body = { transition: { id: target_transition_id } }.to_json
         
     | 
| 
       25 
25 
     | 
    
         
             
                    end
         
     | 
    
        data/lib/jira_command/version.rb
    CHANGED
    
    
    
        metadata
    CHANGED
    
    | 
         @@ -1,14 +1,14 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            --- !ruby/object:Gem::Specification
         
     | 
| 
       2 
2 
     | 
    
         
             
            name: jira_command
         
     | 
| 
       3 
3 
     | 
    
         
             
            version: !ruby/object:Gem::Version
         
     | 
| 
       4 
     | 
    
         
            -
              version: 0.1. 
     | 
| 
      
 4 
     | 
    
         
            +
              version: 0.1.1
         
     | 
| 
       5 
5 
     | 
    
         
             
            platform: ruby
         
     | 
| 
       6 
6 
     | 
    
         
             
            authors:
         
     | 
| 
       7 
7 
     | 
    
         
             
            - shengbo.xu
         
     | 
| 
       8 
8 
     | 
    
         
             
            autorequire: 
         
     | 
| 
       9 
9 
     | 
    
         
             
            bindir: exe
         
     | 
| 
       10 
10 
     | 
    
         
             
            cert_chain: []
         
     | 
| 
       11 
     | 
    
         
            -
            date: 2020-07- 
     | 
| 
      
 11 
     | 
    
         
            +
            date: 2020-07-21 00:00:00.000000000 Z
         
     | 
| 
       12 
12 
     | 
    
         
             
            dependencies:
         
     | 
| 
       13 
13 
     | 
    
         
             
            - !ruby/object:Gem::Dependency
         
     | 
| 
       14 
14 
     | 
    
         
             
              name: thor
         
     | 
| 
         @@ -50,6 +50,7 @@ files: 
     | 
|
| 
       50 
50 
     | 
    
         
             
            - lib/jira_command/cli.rb
         
     | 
| 
       51 
51 
     | 
    
         
             
            - lib/jira_command/command/assign.rb
         
     | 
| 
       52 
52 
     | 
    
         
             
            - lib/jira_command/command/config.rb
         
     | 
| 
      
 53 
     | 
    
         
            +
            - lib/jira_command/command/issue.rb
         
     | 
| 
       53 
54 
     | 
    
         
             
            - lib/jira_command/command/list.rb
         
     | 
| 
       54 
55 
     | 
    
         
             
            - lib/jira_command/command/status.rb
         
     | 
| 
       55 
56 
     | 
    
         
             
            - lib/jira_command/command/transition.rb
         
     | 
| 
         @@ -57,7 +58,10 @@ files: 
     | 
|
| 
       57 
58 
     | 
    
         
             
            - lib/jira_command/config.rb
         
     | 
| 
       58 
59 
     | 
    
         
             
            - lib/jira_command/jira/assign.rb
         
     | 
| 
       59 
60 
     | 
    
         
             
            - lib/jira_command/jira/base.rb
         
     | 
| 
      
 61 
     | 
    
         
            +
            - lib/jira_command/jira/issue.rb
         
     | 
| 
      
 62 
     | 
    
         
            +
            - lib/jira_command/jira/issuetype.rb
         
     | 
| 
       60 
63 
     | 
    
         
             
            - lib/jira_command/jira/list.rb
         
     | 
| 
      
 64 
     | 
    
         
            +
            - lib/jira_command/jira/project.rb
         
     | 
| 
       61 
65 
     | 
    
         
             
            - lib/jira_command/jira/status.rb
         
     | 
| 
       62 
66 
     | 
    
         
             
            - lib/jira_command/jira/transition.rb
         
     | 
| 
       63 
67 
     | 
    
         
             
            - lib/jira_command/jira/user.rb
         
     |