Directories ¶
Path | Synopsis |
---|---|
Package cmd is our cobra/viper cli implementation
|
Package cmd is our cobra/viper cli implementation |
cli/cmd
Package datum is our cobra/viper cli implementation
|
Package datum is our cobra/viper cli implementation |
cli/cmd/group
Package datumgroup is our cobra/viper cli for group endpoints
|
Package datumgroup is our cobra/viper cli for group endpoints |
cli/cmd/login
Package datumlogin is our cobra/viper cli for authentication endpoints
|
Package datumlogin is our cobra/viper cli for authentication endpoints |
cli/cmd/org
Package datumorg is our cobra/viper cli for organization endpoints
|
Package datumorg is our cobra/viper cli for organization endpoints |
cli/cmd/register
Package register allows user registration
|
Package register allows user registration |
cli/cmd/tokens
Package datumtokens is our cobra/viper cli for token endpoints
|
Package datumtokens is our cobra/viper cli for token endpoints |
cli/cmd/user
Package datumuser is our cobra/viper cli for user endpoints
|
Package datumuser is our cobra/viper cli for user endpoints |
internal
|
|
constants
Package constants contains constants used throughout the application
|
Package constants contains constants used throughout the application |
datumclient
Package datumclient contains the client to interact with the datum server
|
Package datumclient contains the client to interact with the datum server |
ent/generated
Package generated is the ent generated package
|
Package generated is the ent generated package |
ent/hooks
Package hooks is middleware to alter the graphql mutation
|
Package hooks is middleware to alter the graphql mutation |
ent/interceptors
Package interceptors is middleware to alter the graphql query
|
Package interceptors is middleware to alter the graphql query |
ent/mixin
Package mixin contains the mixin package
|
Package mixin contains the mixin package |
ent/privacy/rule
Package rule contains policy rules
|
Package rule contains policy rules |
ent/privacy/viewer
Package viewer contains role definitions for policies
|
Package viewer contains role definitions for policies |
ent/schema
Package schema contains the ent schema
|
Package schema contains the ent schema |
entclean
nolint
|
nolint |
entdb
Package entdb extends the ent db library and satisfies matt's needs for consistency
|
Package entdb extends the ent db library and satisfies matt's needs for consistency |
entx
Package entx is a package of tools for interacting with ent
|
Package entx is a package of tools for interacting with ent |
fga
Package fga is a wrapper around openfga client credit to https://github.com/canonical/ofga/blob/main/tuples.go TODO: can we contribute this back once we have this in a working place
|
Package fga is a wrapper around openfga client credit to https://github.com/canonical/ofga/blob/main/tuples.go TODO: can we contribute this back once we have this in a working place |
fga/mocks
Package mock_client is a generated GoMock package.
|
Package mock_client is a generated GoMock package. |
graphapi
Package graphapi is the graph api package
|
Package graphapi is the graph api package |
httpserve/config
Package config holds the echo server configuration utilities
|
Package config holds the echo server configuration utilities |
httpserve/handlers
Package handlers contains custom handler functions
|
Package handlers contains custom handler functions |
httpserve/middleware
Package middleware provides middleware for http Handlers.
|
Package middleware provides middleware for http Handlers. |
httpserve/middleware/auth
Package auth handles auth
|
Package auth handles auth |
httpserve/middleware/authtest
Package authtest is a mini server and token generator with a mock test to confirm keygen works correctly; not intended to test the whole api but rather just the token issuance and authentication
|
Package authtest is a mini server and token generator with a mock test to confirm keygen works correctly; not intended to test the whole api but rather just the token issuance and authentication |
httpserve/middleware/cachecontrol
Package cachecontrol creates a cache control echo middleware
|
Package cachecontrol creates a cache control echo middleware |
httpserve/middleware/cors
Package cors does cors stuff
|
Package cors does cors stuff |
httpserve/middleware/debug
Package debug contains utility helper functions for debugging when working with echo server
|
Package debug contains utility helper functions for debugging when working with echo server |
httpserve/middleware/echocontext
Package echocontext adds the echo context to the parent context
|
Package echocontext adds the echo context to the parent context |
httpserve/middleware/mime
Package mime does mime stuff
|
Package mime does mime stuff |
httpserve/middleware/ratelimit
Package ratelimit implements a rate limiting middleware
|
Package ratelimit implements a rate limiting middleware |
httpserve/middleware/redirect
Package redirect does redirect stuff
|
Package redirect does redirect stuff |
httpserve/middleware/secure
Package secure is middleware that provides protection against cross-site scripting (XSS) attack, content type sniffing, clickjacking, insecure connection and other code injection attacks
|
Package secure is middleware that provides protection against cross-site scripting (XSS) attack, content type sniffing, clickjacking, insecure connection and other code injection attacks |
httpserve/middleware/session
Package session provides session middleware to the echo server
|
Package session provides session middleware to the echo server |
httpserve/middleware/transaction
Package transaction implements a transaction middleware for REST endpoints using the ent db client
|
Package transaction implements a transaction middleware for REST endpoints using the ent db client |
httpserve/route
Package route will hold the routes and route groups
|
Package route will hold the routes and route groups |
httpserve/server
Package server contains the server functions
|
Package server contains the server functions |
httpserve/serveropts
Package serveropts contains an echo server options wrapper
|
Package serveropts contains an echo server options wrapper |
keygen
Package keygen provides functionality for generating API client IDs and secrets
|
Package keygen provides functionality for generating API client IDs and secrets |
passwd
Package passwd provides fancy crypto shit for passwords
|
Package passwd provides fancy crypto shit for passwords |
store
Package store is for storing cookies, sessions, and maybe other fun stuff
|
Package store is for storing cookies, sessions, and maybe other fun stuff |
tokens
Package tokens creates tokenmanager, responsible for signing, issuing, and validating tokens
|
Package tokens creates tokenmanager, responsible for signing, issuing, and validating tokens |
utils/emails
Package emails contains all of the logic and templating for sending emails within the datum services - it is built to allow for other email providers other than sendgrid if required but is mostly specific to sendgrid as that's our email provider of choice.
|
Package emails contains all of the logic and templating for sending emails within the datum services - it is built to allow for other email providers other than sendgrid if required but is mostly specific to sendgrid as that's our email provider of choice. |
utils/emails/mock
Package mock provides intermediary data structures to assist in testing and debugging sending an email without actually sending the email - testing the creation and sending of email typically requires some kind of tracking of what was sent or not and metadata about the message which is what is setup here
|
Package mock provides intermediary data structures to assist in testing and debugging sending an email without actually sending the email - testing the creation and sending of email typically requires some kind of tracking of what was sent or not and metadata about the message which is what is setup here |
utils/gravatar
Package gravatar generates random avatar images for users or organizations on sign up which they can override with their own avatars
|
Package gravatar generates random avatar images for users or organizations on sign up which they can override with their own avatars |
utils/marionette
Package marionette is a golang based task manager with scheduling, backoff, future scheduling built in.
|
Package marionette is a golang based task manager with scheduling, backoff, future scheduling built in. |
utils/responses
Package responses holds human readable string responses that can be surfaced up to an end user
|
Package responses holds human readable string responses that can be surfaced up to an end user |
utils/rows
Package rows makes CLI output pretty
|
Package rows makes CLI output pretty |
utils/sendgrid
Package sendgrid is a utiliuty package for interfacing with Sendgrid, a third party transactional email provider
|
Package sendgrid is a utiliuty package for interfacing with Sendgrid, a third party transactional email provider |
utils/sqlite
Package sqlite implements a connect hook around the sqlite3 driver so that the underlying connection can be fetched from the driver for more advanced operations such as backups.
|
Package sqlite implements a connect hook around the sqlite3 driver so that the underlying connection can be fetched from the driver for more advanced operations such as backups. |
utils/ulids
Package ulids is a lightweight wrapper around the github.com/oklog/ulid package that provides some common functionality (like checking if a ULID is null or is zero) as well as a process-global, cryptographically random, monotonic, and thread-safe ulid generation mechanism that can be used from external packages
|
Package ulids is a lightweight wrapper around the github.com/oklog/ulid package that provides some common functionality (like checking if a ULID is null or is zero) as well as a process-global, cryptographically random, monotonic, and thread-safe ulid generation mechanism that can be used from external packages |
utils/viperconfig
Package viperconfig is a fancy interface allowing you to bind viper commands in your individual packages without having to make some insane monolithic file Credit goes to the stacklok folks: https://github.com/stacklok/minder/blob/main/internal/util/configutils.go TO DO: convert allthethings over to using utils.BindConfigFlag()
|
Package viperconfig is a fancy interface allowing you to bind viper commands in your individual packages without having to make some insane monolithic file Credit goes to the stacklok folks: https://github.com/stacklok/minder/blob/main/internal/util/configutils.go TO DO: convert allthethings over to using utils.BindConfigFlag() |
Click to show internal directories.
Click to hide internal directories.