Bug #4148
closed
Workflow Run Manager - Upload to Repository feature
Added by Derik Barseghian over 15 years ago.
Updated over 15 years ago.
Description
WRM needs to be able to upload runs to the repository. A user selects rows in the WRM and from a context menu clicks to upload. This creates a kar of the runs and will then 'put' it to metacat, along with (correct me if I have this wrong:) any contained metadata docs that point to this kar with the karLSID attribute, e.g run momls and workflow momls. I've had to fork the UploadToRepositoryAction to create a gui-less version. I'm trying to stay in sync with any changes there, so that I can un-fork later.
Part of this work seemed to necessitate or imply getting a KAR from cache. I was unable to get the kar itself from cache, I'll revisit this, but I'm not sure the kar itself is actually being written to cache, just its items (maybe?). Also, I'm currently creating a WorkflowRunCacheObject, so these may be retrieved from cache individually.
The 'depends on' list of this bug is currently probably incomplete. We also change to using setAccess on the items uploaded instead of building access documents in the upload function.
That should read: "We also need to change to using setAccess".
This also needs to be able to work without a gui, hopefully by just requiring a list of keplerlsids of runs to upload.
crucial for the 2a1 release
Looks like derik has this non-gui portion working.
I'm now using his classes (in the provenance module) to do the export and upload when we run "automatically" on the webservice-based execution side of things.
Augmenting the LDAP authentication service so that it need not always prompt for user/pass credentials
"-server" is now a commandline option that will set a Configuration attribute. ReportingListener will check this and upload reports when appropriate (ie when running on the server)
We are allowing for a "-repository" parameter as well. It will let us specify which of the configured Repositories we want the output results to be uploaded to. The Repository also has the username/pass and authentication url needed in order to do the upload.
I want to add more specific error handling around each of the put() calls so that we know exactly what is happening. It's very possible that we will end up trying to "reput" the same workflow when we attempt to upload subsequent runs of that workflow. This is fine but we should handle it gracefully.
now checking for existing workflows - will not attempt to upload again if it already exists
okay - i'm happy with this feature closing
Original Bugzilla ID was 4148
Also available in: Atom
PDF