Workflow approval and execution with attachment

Erik-Jan Riemers June 16, 2013

Basicly i want people to be able to upload a file into a ticket. Once that is done it should get a status "pending" or whatever is handy in that case untill a admin of that project comes and says "approved" on which the workflow will execute a command line (shell) script with the contents of the attachments.

For approval i've seen https://answers.atlassian.com/questions/158793/workflow-with-approval-s and for the execution https://marketplace.atlassian.com/plugins/com.pawelniewiadomski.devs.jira.automat (or bob's plugin?)

Only how to get the attachments on the commandline is something i have no clue to go about.

Any thoughts on this is appreciated.

1 answer

1 accepted

0 votes
Answer accepted
Radu Dumitriu
Rising Star
Rising Star
Rising Stars are recognized for providing high-quality answers to other users. Rising Stars receive a certificate of achievement and are on the path to becoming Community Leaders.
June 16, 2013
Erik-Jan Riemers June 16, 2013

Ok so one plugin to rule them all :)

But that still leaves me a bit blank on how to get the attachment. How can i use a script with the attachment from the commandline. I only see http://confluence.kepler-rominfo.com/display/SIL/attachFile attach a file to a issue but not extract.

Radu Dumitriu
Rising Star
Rising Star
Rising Stars are recognized for providing high-quality answers to other users. Rising Stars receive a certificate of achievement and are on the path to becoming Community Leaders.
June 17, 2013

I'm on the move, I will ask one of my colleague to respond you ....

In any case, check standard variable 'attachments' http://confluence.kepler-rominfo.com/display/SIL/Variable+Resolution

Like santhu18 likes this
Erik-Jan Riemers June 17, 2013

Sure, no rush.

Florin Manaila
Rising Star
Rising Star
Rising Stars are recognized for providing high-quality answers to other users. Rising Stars receive a certificate of achievement and are on the path to becoming Community Leaders.
June 17, 2013

The attachment should be runnable script itslef to be used with the system() routine.

The actual file is stored by default using its attachment id as name in <JIRA_HOME>/data/attachments/<project_key>/<issue_key>/<attachment_id>

You can use the sql routine to execute "select id from fileattachment where issueid = " + id

Note that if used within a post-function, the "id" variable used to generate the SQL statement is the issue id

Once you have the attachment id, you can generate the file path, copy it to a known folder, use the system() routine to make it executable (+x) and the system() routine again to execute it.

Erik-Jan Riemers June 17, 2013

I'll give it a shot, not a 1.2.3. job but its clear from my point of view.

Suggest an answer

Log in or Sign up to answer