So looking at sentry-provider-db, it looks like it’s pretty much the main
module of Sentry. It has the thrift apis, db, cli and Sentry Service. I’m
running into issues with developing ABAC as we have it be it’s own module. It
depends on sentry-provider-db, and then for me to add it in so that
SentryService can take advantage of it, sentry-provider-db depends on
sentry-abac so we end up with a circular dependency. Rather than just shove
abac into sentry-provider-db, I’m proposing we split sentry-provider-db into
sentry-provider-db (the existing db layer), sentry-main/sentry-service,
sentry-main/sentry-cli and sentry-main/sentry-api. Thus the dependency chain
would be sentry-provider-db -> sentry-service -> sentry-api->sentry-cli and
sentry-abac depends on sentry-service, sentry-cli, sentry-api. Thoughts on
this?