mirror of
https://git.mirrors.martin98.com/https://github.com/SigNoz/signoz
synced 2025-07-30 19:22:02 +08:00

* feat: added license manager and feature flags * feat: completed org domain api * chore: checking in saml auth handler code * feat: added signup with sso * feat: added login support for admins * feat: added pem support for certificate * ci(build-workflow): 👷 include EE query-service * fix: 🐛 update package name * chore(ee): 🔧 LD_FLAGS related changes Signed-off-by: Prashant Shahi <prashant@signoz.io> Co-authored-by: Prashant Shahi <prashant@signoz.io> Co-authored-by: nityanandagohain <nityanandagohain@gmail.com>
64 lines
1.5 KiB
Go
64 lines
1.5 KiB
Go
package sqlite
|
|
|
|
import (
|
|
"fmt"
|
|
|
|
"github.com/jmoiron/sqlx"
|
|
basedao "go.signoz.io/signoz/pkg/query-service/dao"
|
|
basedsql "go.signoz.io/signoz/pkg/query-service/dao/sqlite"
|
|
baseint "go.signoz.io/signoz/pkg/query-service/interfaces"
|
|
)
|
|
|
|
type modelDao struct {
|
|
*basedsql.ModelDaoSqlite
|
|
flags baseint.FeatureLookup
|
|
}
|
|
|
|
// SetFlagProvider sets the feature lookup provider
|
|
func (m *modelDao) SetFlagProvider(flags baseint.FeatureLookup) {
|
|
m.flags = flags
|
|
}
|
|
|
|
// CheckFeature confirms if a feature is available
|
|
func (m *modelDao) checkFeature(key string) error {
|
|
if m.flags == nil {
|
|
return fmt.Errorf("flag provider not set")
|
|
}
|
|
|
|
return m.flags.CheckFeature(key)
|
|
}
|
|
|
|
// InitDB creates and extends base model DB repository
|
|
func InitDB(dataSourceName string) (*modelDao, error) {
|
|
dao, err := basedsql.InitDB(dataSourceName)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
// set package variable so dependent base methods (e.g. AuthCache) will work
|
|
basedao.SetDB(dao)
|
|
m := &modelDao{ModelDaoSqlite: dao}
|
|
|
|
table_schema := `
|
|
PRAGMA foreign_keys = ON;
|
|
CREATE TABLE IF NOT EXISTS org_domains(
|
|
id TEXT PRIMARY KEY,
|
|
org_id TEXT NOT NULL,
|
|
name VARCHAR(50) NOT NULL UNIQUE,
|
|
created_at INTEGER NOT NULL,
|
|
updated_at INTEGER,
|
|
data TEXT NOT NULL,
|
|
FOREIGN KEY(org_id) REFERENCES organizations(id)
|
|
);`
|
|
|
|
_, err = m.DB().Exec(table_schema)
|
|
if err != nil {
|
|
return nil, fmt.Errorf("error in creating tables: %v", err.Error())
|
|
}
|
|
|
|
return m, nil
|
|
}
|
|
|
|
func (m *modelDao) DB() *sqlx.DB {
|
|
return m.ModelDaoSqlite.DB()
|
|
}
|