rgehan/octolenses

Support various providers (GitHub Enterprise, BitBucket, GitLab, etc)

Closed this issue · 2 comments

We could add support for various providers if the code was less tied to GitHub.

This means there would be some refactoring to do so that we're not coupled to the GitHub API JSON structure.

In order to support that, we'd need to:

  • Add a selector (defaulting to GitHub) in the Filter Modal, allowing to pick which provider we want to use
  • Modify the settings modal to allow adding different tokens
  • Determine which filter predicates are available on each provider
  • Only allow adding filter predicates that match the selected provider
  • Create a connector for each provider, allowing to filter resources
  • Create the corresponding formatters, so that we don't have to handle various resource formats.

Providers that we could support:

  • GitHub
  • GitHub Enterprise (shouldn't be too hard)
  • GitLab
  • BitBucket
  • Jira would be cool, but probably the most difficult. That said, we could only support a few simple predicates at first, and build on that later.

I've added a few ideas to guide whoever will want to deal with that (@klmp200 if you're up to it :p)

Maybe allowing to aggregate multiple backend on the same recipe where only common filters are allowed