Module: Legion::Extensions::Jira::Issues::Runners::Attachments
- Includes:
- Helpers::Lex, Helpers::Client
- Included in:
- Client
- Defined in:
- lib/legion/extensions/jira/issues/runners/attachments.rb
Instance Method Summary
collapse
#connection, #upload_connection
Instance Method Details
#add_attachment(issue_key:, file:, filename: 'file', content_type: 'application/octet-stream') ⇒ Object
23
24
25
26
27
|
# File 'lib/legion/extensions/jira/issues/runners/attachments.rb', line 23
def add_attachment(issue_key:, file:, filename: 'file', content_type: 'application/octet-stream', **)
payload = { file: Faraday::Multipart::FilePart.new(file, content_type, filename) }
resp = upload_connection(**).post("/rest/api/3/issue/#{issue_key}/attachments", payload)
{ attachments: resp.body }
end
|
#delete_attachment(attachment_id:) ⇒ Object
29
30
31
32
|
# File 'lib/legion/extensions/jira/issues/runners/attachments.rb', line 29
def delete_attachment(attachment_id:, **)
resp = connection(**).delete("/rest/api/3/attachment/#{attachment_id}")
{ deleted: resp.status == 204, attachment_id: attachment_id }
end
|
#get_attachment(attachment_id:) ⇒ Object
18
19
20
21
|
# File 'lib/legion/extensions/jira/issues/runners/attachments.rb', line 18
def get_attachment(attachment_id:, **)
resp = connection(**).get("/rest/api/3/attachment/#{attachment_id}")
{ attachment: resp.body }
end
|
34
35
36
37
|
# File 'lib/legion/extensions/jira/issues/runners/attachments.rb', line 34
def get_attachment_meta(**)
resp = connection(**).get('/rest/api/3/attachment/meta')
{ meta: resp.body }
end
|
#get_attachments(issue_key:) ⇒ Object
13
14
15
16
|
# File 'lib/legion/extensions/jira/issues/runners/attachments.rb', line 13
def get_attachments(issue_key:, **)
resp = connection(**).get("/rest/api/3/issue/#{issue_key}", { fields: 'attachment' })
{ attachments: resp.body.dig('fields', 'attachment') || [] }
end
|