Sha256: 90aa6131f118cdd0d85df40ca8c17f24961fff54c6596c64e59716148e51b485

Contents?: true

Size: 786 Bytes

Versions: 1

Compression:

Stored size: 786 Bytes

Contents

module Ruboty
  module Jira
    module Actions
      class CreateIssue < Base
        def call
          return unless valid_project?
          return unless valid_user?
          issue = create_issue
          message.reply <<"EOF"
Create issue
#{jira_site}#{jira_context}/browse/#{issue.key}
EOF
        rescue => e
          message.reply(e.message)
        end

        private

        def create_issue
          issue = client.Issue.build
          issue.save(
            fields: {
              project: { id: associate_project[:id] },
              reporter: associate_user,
              summary: message[:summary],
              issuetype: { name: message[:issue_type] }
            }
          )
          issue.fetch
          issue
        end
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
ruboty-jira-0.3.0 lib/ruboty/jira/actions/create_issue.rb