I have made a bit of progress getting the storage reports to work in our Duracloud setup using the iRODS storage provider.
It looks like there were two problems that caused the graphical storage reports not to display.
First - it appears that there is a bug in the iRODS api that causes both getSpaceContents and getSpaceContentsChunked to not return anything if the prefix argument has a value.
i.e. this call will not return anything:
getSpaceContents( "x-duracloud-admin", "report/storage-report");
while this call does work - and returns all of the files in the x-duracloud-admin space:
getSpaceContents( "x-duracloud-admin", "");
I modified the IrodsStorageProvider to ignore the value passed in for the prefix and these calls return all of the storage reports (and the other files in the x-duracloud-admin directory).
Another problem I was encountering was that I somehow had a 'bad' storage report - one that caused the XML parser to choke - and once the parser had a problem it seems like the system gave up on building the storage report cache.
Once I got past these two problems - the system was able to display the graphical storage reports.
I don't think that my hack/fix for the prefix problem is going to work long-term -- or do you think it will be ok?
I may need to get in touch with the author of the irods-api library to see if he has any advice.
Do my conclusions seem to make sense? Any other thoughts?
The good news is that our Duracloud/iRODS implementation is looking good enough to demonstrate to our customers.
Thanks
--Dan Galewsky