Files
probo/pkg/connector/provider/builtin.go
Cursor Agent 4d1417b512 Add PostHog access review connector support
Introduce a PostHog access-review driver that lists organization\nmembers and maps role, MFA, and timestamp fields into account\nrecords.\n\nRegister PostHog as a builtin API-key connector provider and expose\nit through the connector provider enum so access-review source\ncreation can discover it.

Signed-off-by: Cursor Agent <cursoragent@cursor.com>

Co-authored-by: Bryan FRIMIN <bryan@frimin.fr>
2026-05-28 18:37:18 -07:00

65 lines
2.1 KiB
Go

// Copyright (c) 2026 Probo Inc <hello@getprobo.com>.
//
// Permission to use, copy, modify, and/or distribute this software for any
// purpose with or without fee is hereby granted, provided that the above
// copyright notice and this permission notice appear in all copies.
//
// THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
// REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
// AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
// INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
// LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
// OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
// PERFORMANCE OF THIS SOFTWARE.
package provider
// NewBuiltinRegistry returns a *Registry populated with every
// connector provider compiled into the binary. It panics on duplicate
// registration or invalid Registration metadata — both are programmer
// errors caught at process start, not at runtime. Probod calls this
// once at startup and threads the *Registry into every consumer.
func NewBuiltinRegistry() *Registry {
r := NewRegistry()
for _, reg := range []*Registration{
anthropicRegistration(),
asanaRegistration(),
bitbucketRegistration(),
brexRegistration(),
clickupRegistration(),
cloudflareRegistration(),
cursorRegistration(),
docusignRegistration(),
grafanaRegistration(),
githubRegistration(),
gitlabRegistration(),
googleWorkspaceRegistration(),
herokuRegistration(),
hubspotRegistration(),
intercomRegistration(),
linearRegistration(),
metabaseRegistration(),
microsoft365Registration(),
mondayRegistration(),
netlifyRegistration(),
notionRegistration(),
onePasswordRegistration(),
openaiRegistration(),
posthogRegistration(),
pagerdutyRegistration(),
resendRegistration(),
sentryRegistration(),
slackRegistration(),
supabaseRegistration(),
tailscaleRegistration(),
tallyRegistration(),
vercelRegistration(),
} {
if err := r.Register(reg); err != nil {
panic(err)
}
}
return r
}