package database import ( "fmt" "log" "os" "git.nix13.pw/scuroneko/laniakea" "go.mongodb.org/mongo-driver/v2/mongo" "go.mongodb.org/mongo-driver/v2/mongo/options" ) var MongoClient *mongo.Client func ConnectMongo() { var err error opts := options.Client() host, ok := os.LookupEnv("MONGO_HOST") if !ok { host = "localhost" } opts = opts.ApplyURI(fmt.Sprintf( "mongodb://%s:%s@%s:27017", os.Getenv("MONGO_USER"), os.Getenv("MONGO_PASS"), host, )) opts = opts.SetCompressors([]string{"snappy", "zlib", "zstd"}) MongoClient, err = mongo.Connect(opts) if err != nil { log.Fatalln(err) } } func GetMongoCollection(db *laniakea.DatabaseContext, name string) *mongo.Collection { return db.MongoDB.Database(os.Getenv("MONGO_NAME")).Collection(name) }