From 4b9c30be7e88567f7e0b4780d4c57ee81c28fb00 Mon Sep 17 00:00:00 2001 From: ACoolName Date: Sat, 15 Mar 2025 16:37:00 +0200 Subject: [PATCH] added mongo db handlers for all but server --- db_handler/go.sum | 52 ------------------- db_handler/mongo/authorization.go | 6 ++- db_handler/mongo/go.mod | 2 +- ...ss_auth.go => user_pass_authentication.go} | 5 +- db_handler/mongo/users.go | 5 +- ...horization.go => servers_authorization.go} | 0 db_handler/servers_db_handler.go | 28 ++++++++++ 7 files changed, 39 insertions(+), 59 deletions(-) delete mode 100644 db_handler/go.sum rename db_handler/mongo/{user_pass_auth.go => user_pass_authentication.go} (94%) rename db_handler/{authorization.go => servers_authorization.go} (100%) diff --git a/db_handler/go.sum b/db_handler/go.sum deleted file mode 100644 index bf78bfb..0000000 --- a/db_handler/go.sum +++ /dev/null @@ -1,52 +0,0 @@ -github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= -github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= -github.com/golang/snappy v0.0.1 h1:Qgr9rKW7uDUkrbSmQeiDsGa8SjGyCOGtuasMWwvp2P4= -github.com/golang/snappy v0.0.1/go.mod h1:/XxbfmMg8lxefKM7IXC3fBNl/7bRcc72aCRzEWrmP2Q= -github.com/google/go-cmp v0.5.2 h1:X2ev0eStA3AbceY54o37/0PQ/UWqKEiiO2dKL5OPaFM= -github.com/google/go-cmp v0.5.2/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= -github.com/klauspost/compress v1.13.6 h1:P76CopJELS0TiO2mebmnzgWaajssP/EszplttgQxcgc= -github.com/klauspost/compress v1.13.6/go.mod h1:/3/Vjq9QcHkK5uEr5lBEmyoZ1iFhe47etQ6QUkpK6sk= -github.com/montanaflynn/stats v0.0.0-20171201202039-1bf9dbcd8cbe h1:iruDEfMl2E6fbMZ9s0scYfZQ84/6SPL6zC8ACM2oIL0= -github.com/montanaflynn/stats v0.0.0-20171201202039-1bf9dbcd8cbe/go.mod h1:wL8QJuTMNUDYhXwkmfOly8iTdp5TEcJFWZD2D7SIkUc= -github.com/xdg-go/pbkdf2 v1.0.0 h1:Su7DPu48wXMwC3bs7MCNG+z4FhcyEuz5dlvchbq0B0c= -github.com/xdg-go/pbkdf2 v1.0.0/go.mod h1:jrpuAogTd400dnrH08LKmI/xc1MbPOebTwRqcT5RDeI= -github.com/xdg-go/scram v1.1.2 h1:FHX5I5B4i4hKRVRBCFRxq1iQRej7WO3hhBuJf+UUySY= -github.com/xdg-go/scram v1.1.2/go.mod h1:RT/sEzTbU5y00aCK8UOx6R7YryM0iF1N2MOmC3kKLN4= -github.com/xdg-go/stringprep v1.0.4 h1:XLI/Ng3O1Atzq0oBs3TWm+5ZVgkq2aqdlvP9JtoZ6c8= -github.com/xdg-go/stringprep v1.0.4/go.mod h1:mPGuuIYwz7CmR2bT9j4GbQqutWS1zV24gijq1dTyGkM= -github.com/youmark/pkcs8 v0.0.0-20181117223130-1be2e3e5546d h1:splanxYIlg+5LfHAM6xpdFEAYOk8iySO56hMFq6uLyA= -github.com/youmark/pkcs8 v0.0.0-20181117223130-1be2e3e5546d/go.mod h1:rHwXgn7JulP+udvsHwJoVG1YGAP6VLg4y9I5dyZdqmA= -github.com/yuin/goldmark v1.4.13/go.mod h1:6yULJ656Px+3vBD8DxQVa3kxgyrAnzto9xy5taEt/CY= -go.mongodb.org/mongo-driver v1.14.0 h1:P98w8egYRjYe3XDjxhYJagTokP/H6HzlsnojRgZRd80= -go.mongodb.org/mongo-driver v1.14.0/go.mod h1:Vzb0Mk/pa7e6cWw85R4F/endUC3u0U9jGcNU603k65c= -golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w= -golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc= -golang.org/x/crypto v0.17.0 h1:r8bRNjWL3GshPW3gkd+RpvzWrZAwPS49OmTGZ/uhM4k= -golang.org/x/crypto v0.17.0/go.mod h1:gCAAfMLgwOJRpTjQ2zCCt2OcSfYMTeZVSRtQlPC7Nq4= -golang.org/x/mod v0.6.0-dev.0.20220419223038-86c51ed26bb4/go.mod h1:jJ57K6gSWd91VN4djpZkiMVwK6gcyfeH4XE8wZrZaV4= -golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= -golang.org/x/net v0.0.0-20210226172049-e18ecbb05110/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg= -golang.org/x/net v0.0.0-20220722155237-a158d28d115b/go.mod h1:XRhObCWvk6IyKnWLug+ECip1KBveYUHfp+8e9klMJ9c= -golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= -golang.org/x/sync v0.0.0-20220722155255-886fb9371eb4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= -golang.org/x/sync v0.1.0 h1:wsuoTGHzEhffawBOhz5CYhcrV4IdKZbEyZjBMuTp12o= -golang.org/x/sync v0.1.0/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= -golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= -golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20210615035016-665e8c7367d1/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.0.0-20220520151302-bc2c85ada10a/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.0.0-20220722155257-8c9f86f7a55f/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= -golang.org/x/term v0.0.0-20210927222741-03fcf44c2211/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8= -golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= -golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= -golang.org/x/text v0.3.7/go.mod h1:u+2+/6zg+i71rQMx5EYifcz6MCKuco9NR6JIITiCfzQ= -golang.org/x/text v0.3.8/go.mod h1:E6s5w1FMmriuDzIBO73fBruAKo1PCIq6d2Q6DHfQ8WQ= -golang.org/x/text v0.14.0 h1:ScX5w1eTa3QqT8oi6+ziP7dTV1S2+ALU0bI+0zXKWiQ= -golang.org/x/text v0.14.0/go.mod h1:18ZOQIKpY8NJVqYksKHtTdi31H5itFRjB5/qKTNYzSU= -golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= -golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= -golang.org/x/tools v0.1.12/go.mod h1:hNGJHUnrk76NpqgfD5Aqm5Crs+Hm0VOH/i9J2+nxYbc= -golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= -golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543 h1:E7g+9GITq07hpfrRu66IVDexMakfv52eLZ2CXBWiKr4= -golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= diff --git a/db_handler/mongo/authorization.go b/db_handler/mongo/authorization.go index 7c4df32..f27a0aa 100644 --- a/db_handler/mongo/authorization.go +++ b/db_handler/mongo/authorization.go @@ -1,8 +1,9 @@ -package mongo_db_handlers +package mongo import ( "context" + "git.acooldomain.co/server-manager/backend-kubernetes-go/dbhandler" "git.acooldomain.co/server-manager/backend-kubernetes-go/models" "go.mongodb.org/mongo-driver/bson" "go.mongodb.org/mongo-driver/mongo" @@ -16,6 +17,7 @@ type ServerPermissions struct { } type MongoDbAuthorizationHandler struct { + dbhandler.AuthorizationDbHandler collection *mongo.Collection } @@ -136,7 +138,7 @@ func (self *MongoDbAuthorizationHandler) GetPermissions(username string, serverI return serverPermissions.Permissions, nil } -func NewMongoDbAuthorizationHandler(config models.MongoDBConfig) (*MongoDbAuthorizationHandler, error) { +func NewAuthorizationHandler(config models.MongoDBConfig) (*MongoDbAuthorizationHandler, error) { clientOptions := options.Client().ApplyURI(config.Url).SetAuth(options.Credential{ Username: config.Username, Password: config.Password, diff --git a/db_handler/mongo/go.mod b/db_handler/mongo/go.mod index d1df786..dfbcea5 100644 --- a/db_handler/mongo/go.mod +++ b/db_handler/mongo/go.mod @@ -1,4 +1,4 @@ -module git.acooldomain.co/server-manager/backend-kubernetes-go/db_handler/mongo_db_handlers +module git.acooldomain.co/server-manager/backend-kubernetes-go/db_handler/mongo go 1.24.1 diff --git a/db_handler/mongo/user_pass_auth.go b/db_handler/mongo/user_pass_authentication.go similarity index 94% rename from db_handler/mongo/user_pass_auth.go rename to db_handler/mongo/user_pass_authentication.go index 21228f6..d5e96ad 100644 --- a/db_handler/mongo/user_pass_auth.go +++ b/db_handler/mongo/user_pass_authentication.go @@ -1,4 +1,4 @@ -package mongo_db_handlers +package mongo import ( "context" @@ -24,6 +24,7 @@ type Invite struct { } type MongoDbUserPassHandler struct { + dbhandler.UserPassAuthanticationDbHandler collection *mongo.Collection } @@ -98,7 +99,7 @@ func (self *MongoDbUserPassHandler) SetPermissions( return err } -func NewMMongoDbUserPassAuthHandler(config models.MongoDBConfig) (*MongoDbUserPassHandler, error) { +func NewUserPassAuthHandler(config models.MongoDBConfig) (*MongoDbUserPassHandler, error) { clientOptions := options.Client().ApplyURI(config.Url).SetAuth(options.Credential{ Username: config.Username, Password: config.Password, diff --git a/db_handler/mongo/users.go b/db_handler/mongo/users.go index 8946f5c..30764fb 100644 --- a/db_handler/mongo/users.go +++ b/db_handler/mongo/users.go @@ -1,4 +1,4 @@ -package mongo_db_handlers +package mongo import ( "context" @@ -11,6 +11,7 @@ import ( ) type MongoDbUserHandler struct { + dbhandler.UsersDBHandler collection *mongo.Collection } @@ -59,7 +60,7 @@ func (self *MongoDbUserHandler) CreateUser(user dbhandler.User) error { return nil } -func NewMMongoDbUsersHandler(config models.MongoDBConfig) (*MongoDbUserHandler, error) { +func NewUsersHandler(config models.MongoDBConfig) (*MongoDbUserHandler, error) { clientOptions := options.Client().ApplyURI(config.Url).SetAuth(options.Credential{ Username: config.Username, Password: config.Password, diff --git a/db_handler/authorization.go b/db_handler/servers_authorization.go similarity index 100% rename from db_handler/authorization.go rename to db_handler/servers_authorization.go diff --git a/db_handler/servers_db_handler.go b/db_handler/servers_db_handler.go index d3caa35..fe91ad1 100644 --- a/db_handler/servers_db_handler.go +++ b/db_handler/servers_db_handler.go @@ -1 +1,29 @@ package dbhandler + +type Image struct { + Registry string + Tag string +} + +type Server struct { + Id string + Owner string + Image string + Nickname string + Command string +} + +type ServerUpdateRequest struct { + Owner string + Image string + Nickname string + Command string +} + +type ServersDbHandler interface { + ListServers() ([]Server, error) + GetServer(serverId string) (*Server, error) + CreateServer(server Server) error + DeleteServer(serverId string) error + UpdateServer(serverId string, updateParams ServerUpdateRequest) error +}