what about an online reports repository?
From @mfrasca on October 24, 2015 16:10
Ross Demuth writes:
Can I also suggest that I think it would be helpful to have some kind a online repository for users to share their report templates (can you do this on the google group?). I think this has been the most common complaint I have received from the people I have showed the software to in the past, the effort required to set up a new report template. I have a small amount of experience with scripting and can generally get by but this is not going to be the case for most other smaller BGs.
Copied from original issue: Bauble/bauble.classic#154
what I would think of, no, you cannot do that in a google group. what I think of is that
- you have a reports manager,
- it is initialized with the reports delivered with Bauble,
- it resides in your own bauble directory,
- you can add your own files to it,
- you can —here it comes— share your files on a central repository.
and we either have a smart repository (that needs programming and hosting) so that Bauble can stay dumb, or we have all smartness in Bauble (and we need programming) so we ca use something like google code or github.
I don't see how to do it in an easy way.
From @brettatoms on December 20, 2015 23:56
A good way to do this is to host report files in a Git repository. That's how homebrew (the mac package manager) does it. What's nice about it is long as there's a common interface for the report files then an organization could even create a private git repo for shared report files and just change the location of the repo in a config. For example here's a third party homebrew repo for python related files packages that aren't in the core Homebrew repo: https://github.com/Homebrew/homebrew-python
Homebrew uses a ruby script as the package definition. Bauble could easily use python files or json might be more secure than running unknown scripts.
could do as @brettatoms says, and we could have authenticated users writing to the repo and non authenticated just downloading.
just a quick look into PyGithub...
pip install pygithub
>>> import github
>>> client = github.Github()
>>> bb = client.get_organization('Bauble')
>>> rep = bb.get_repo('bauble.classic-reports')
>>> fc = rep.get_file_contents('README.rst')
>>> import base64
>>> base64.decodestring(fc.raw_data['content'])
how to organize files... maybe too simple, but what about we
- keep all in one directory (
reports?), - file name minus extension is the report identifier,
- report identifier plus
.rstdescribes the report.
https://developer.github.com/v3/ (PyGithub is only offering the api in pythonic way)
the repository: Bauble/bauble.classic-reports
we had opened a Bauble/bauble.classic-reports, but never used it. in the meanwhile, most—if not all—activity moved to the Ghini organization, so I removed that repository, and I'm not yet sure how to go on with this issue.