Epic Tracking: New Integrations
Figured I'd make a tracking issue to keep track of the various new ideas for different platforms that may be worth eventually adding.
Inclusion in this issue doesn't mean it will get added, or will happen anytime soon - just that they area ideas that have been mentioned and may have enough useful repos using them to warrant adding if the circumstances are right.
- Template
- Contains: [repo, issues, PRs]
- Usecase:
- Examples:
- Platform technical docs:
-
- Contains: repo, issues, PRs
- Usecase: Fedora (upcoming), SFConservancy projects
- Example repo/instance: https://f.sfconservancy.org/explore/repos
- Platform technical docs: TODO
-
Cgit: #3127
- Contains: Git repo
- Examples:
- https://git.kernel.org/pub/scm/docs/man-pages/man-pages.git
- https://cgit.git.savannah.gnu.org/cgit/gnuzilla.git
- Technical Info on cgit: https://git.zx2c4.com/cgit/about/
-
Gitiles
- Contains: repo
- Usecase: Chromium, CEF, and related google projects
- Examples: https://gerrit.googlesource.com/gitiles/
- Platform technical docs: https://gerrit.googlesource.com/gitiles/
-
- Contains: PRs/code review
- Usecase: Chromium/google source
- Examples:
- https://chromium-review.googlesource.com/c/angle/angle/+/6164683
- Technical info on the platform: TODO
-
- Contains: issues
- Usecase: Rappel
- Example: glibc https://www.gnu.org/software/libc/sources.html
- Technical info on the platform: TODO
-
- Contains: issues
- Usecase: https://gramps-project.org/ uses this as their bug tracker
- Technical info on the platform: TODO
-
GNU Savannah
- Contains: Issues
- Usecase: TODO
- Example repo: TODO
- Platform technical docs: TODO
-
Independent gitlab instances (i.e. mainly setting up different keys for different instances*)
- Contains: repo, issues, PRs
- Usecase:
- Examples:
- Platform technical docs: TODO
Misc/ones i dont really know much about
-
- Contains: repo, issues, PRs]
- Usecase:
- Example repo:
- Platform technical docs:
-
- Contains: [repo, issues, PRs]
- Usecase:
- Examples:
- Platform technical docs:
-
- Contains: issues
- Usecase: TODO
- Examples: TODO
- Platform technical docs: TODO
* this feature would probably also be really helpful for gitea/forgejo
please assgin this to me
please assign this to me
This is more of a tracking issue for tracking new data sources over a long period of time than it is an issue that is likely to be solved in a single pull request. Was there a piece of this that you wanted to work on specifically?
i would like to work on Gitiles specifically
You're welcome to give it a start, I don't think any of the core team members have that on the roadmap for the foreseeable future (on one hand, that means it's free to claim, but on the other that means it's not the main focus of the team currently).
Since Augur is moderately complex, here are some ideas for subtasks that break down work in the direction of Gitiles (or any of these integrations) in ways that may be smaller pieces that are easy to get started with:
- study the existing documentation, code for the git repo portion of the collection process works (this will likely be focused around the
facadetask), and talk with people on slack to understand how things currently work - Start simple, get a dev environment up and running with docker compose and make sure you can add your own github repositories to Augur using the web UI.
- continue learning how the process works and help improve the documentation (or create it if it doesn't exist) so that the process for adding new data sources/integrations is clear and has been looked at by the maintainers so you know you have a verified path to follow (also docs changes are going to be a lot quicker to review and merge than one massive PR with a new feature)
- If you have time/are comfortable with implementing it at that point, you can start following the chain of how augur accepted and processed your git repos in the second step (accepting urls in the repository entry box, and all the intermediate steps so that the Facade task can handle it, etc) and see if you can replicate that with gitiles repositories. trying a few small repos to make sure they collect correctly (or any other testing processes you come up with) would also be very helpful for allowing a maintainer to test and merge your changes
Augur should be designed to handle new data sources in a relatively modular way (although im not sure how well documented the process for adding new ones is - hence the need to update the docs). You're welcome to reach out on slack (link is on the https://chaoss.community website) in the #wg-augur-8knot channel if you get stuck or want to chat about this!