Routes now get ports number from .env

This commit is contained in:
cyber-dream 2023-05-24 02:19:21 +03:00
parent 5aaea9c1be
commit c1ba99bb77
4 changed files with 20 additions and 116 deletions

4
.env
View File

@ -1,3 +1,5 @@
MONGO_CONNECT=mongodb://localhost:27017
DATABASE=personal-website
COLLECTION_WEBFS=webfs2
COLLECTION_WEBFS=webfs2
PUBLIC_PORT=7070
PRIVATE_PORT=8080

123
main.go
View File

@ -41,6 +41,16 @@ func main() {
panic(err.Error())
}
publicPort, err := FindEnv("PUBLIC_PORT")
if err != nil {
panic(err.Error())
}
privatePort, err := FindEnv("PRIVATE_PORT")
if err != nil {
panic(err.Error())
}
clientOptions := options.Client().ApplyURI(mongoConnect)
client, err := mongo.Connect(context.TODO(), clientOptions)
if err != nil {
@ -53,16 +63,6 @@ func main() {
webfs := webfilesystem.NewWebFileSystem(client, dBName, webFsCollection)
appsStorage := apps.NewApplicationsStorage(map[string]apps.WebDEApplication{}, webfs)
// router := gin.New()
// router.Use(location.Default())
// router.LoadHTMLGlob("templates/**/*")
// router.Static("/res", "resources")
// // Set a lower memory limit for multipart forms (default is 32 MiB)
// router.MaxMultipartMemory = 8 << 20 // 8 MiB
// router.GET("/", func(ctx *gin.Context) {
// ctx.HTML(http.StatusOK, "index.tmpl", gin.H{})
// })
webde := wde.NewWDE(webfs)
@ -78,109 +78,10 @@ func main() {
appsStorage.Apps[blogViewerApp.GetAppID()] = blogViewerApp
appsStorage.Apps["BlogWriter"] = blogWriterApp
go routes.PublicRoutes(webfs, webde, appsStorage)
routes.PrivateRoutes(webfs, webde, appsStorage)
// system := router.Group("system")
// {
// libsGroup := system.Group("libs")
// {
// imgLibGroup := libsGroup.Group("img")
// {
// imgLib := libs.NewImgLib(webfs)
// imgLib.PublicRoutes(imgLibGroup)
// }
// catLibGroup := libsGroup.Group("cat")
// {
// catLib := libs.NewCatLib(webfs)
// catLib.PublicRoutes(catLibGroup)
// }
// appsStorageGroup := libsGroup.Group("apps")
// {
// appsStorage.Route(appsStorageGroup)
// }
// }
// wdeGroup := system.Group("wde")
// {
// routewde.PublicRoutes(wdeGroup, webde)
// }
// apps := system.Group("applications") //TODO to libs
// {
// apps.GET("/:appid/:method", func(ctx *gin.Context) {
// appId := ctx.Param("appid")
// method := ctx.Param("method")
// app, isExist := appsStorage.Apps[appId]
// if !isExist {
// ctx.Status(http.StatusNoContent)
// return
// }
// switch method {
// case "getmanifest":
// ctx.JSON(http.StatusOK, app.GetManifest())
// case "app.js":
// ctx.File("resources/sys/" + appId + "/" + appId + ".js")
// case "app.css":
// ctx.File("resources/sys/" + appId + "/" + appId + ".css")
// default:
// ctx.Status(http.StatusBadRequest)
// }
// })
// }
// }
// fs := router.Group("fs")
// {
// fsGroup := systemGroup.Group("fs")
// {
// webfs.PublicRoutes(fsGroup)
// }
// }
// app := router.Group("app")
// {
// persPropApp := app.Group("AboutMe")
// {
// persPropsApp.Route(persPropApp)
// }
// finderAppRoute := app.Group("Finder")
// {
// finderApp.Routes(finderAppRoute)
// }
// imgViewerRoute := app.Group("img-viewer")
// {
// imgViewerApp.Route(imgViewerRoute)
// }
// blogViewerRoute := app.Group("blog-viewer")
// {
// blogViewerApp.Route(blogViewerRoute)
// }
// router.Use(cors.New(cors.Config{
// AllowAllOrigins: true,
// // AllowOrigins: []string{"http://localhost:8080", "http://localhost:9090"},
// // AllowMethods: []string{"PUT", "PATCH"},
// // AllowHeaders: []string{"Origin"},
// ExposeHeaders: []string{"Content-Length"},
// AllowCredentials: true,
// // AllowOriginFunc: func(origin string) bool {
// // return origin == "https://github.com"
// // },
// MaxAge: 12 * time.Hour,
// }))
// err = router.Run(":8080")
// if err != nil {
// log.Panicf("error: %s", err)
// }
// }
go routes.PublicRoutes(publicPort, webfs, webde, appsStorage)
routes.PrivateRoutes(privatePort, webfs, webde, appsStorage)
}
// func index(c *gin.Context) {
// c.HTML(http.StatusOK, "base.html", nil)
// }
func FindEnv(parameter string) (string, error) {
path, exists := os.LookupEnv(parameter)

View File

@ -18,7 +18,7 @@ import (
"github.com/thinkerou/favicon"
)
func PrivateRoutes(webfs *webfilesystem.WebFileSystem, webde *wde.WDE, appsStorage *apps.ApplicationsStorage) {
func PrivateRoutes(port string, webfs *webfilesystem.WebFileSystem, webde *wde.WDE, appsStorage *apps.ApplicationsStorage) {
router := gin.New()
router.Use(location.Default())
router.Use(favicon.New("./res/dev-fs/wde/icons/ohno.png"))
@ -125,7 +125,8 @@ func PrivateRoutes(webfs *webfilesystem.WebFileSystem, webde *wde.WDE, appsStora
// },
MaxAge: 12 * time.Hour,
}))
err := router.Run(":8080")
err := router.Run(":" + port)
if err != nil {
log.Panicf("error: %s", err)
}

View File

@ -15,7 +15,7 @@ import (
"github.com/thinkerou/favicon"
)
func PublicRoutes(webfs *webfilesystem.WebFileSystem, webde *wde.WDE, appsStorage *apps.ApplicationsStorage) {
func PublicRoutes(port string, webfs *webfilesystem.WebFileSystem, webde *wde.WDE, appsStorage *apps.ApplicationsStorage) {
router := gin.New()
router.Use(location.Default())
router.LoadHTMLGlob("templates/**/*")
@ -96,7 +96,7 @@ func PublicRoutes(webfs *webfilesystem.WebFileSystem, webde *wde.WDE, appsStorag
}
}
err := router.Run(":7070")
err := router.Run(":" + port)
if err != nil {
log.Panicf("error: %s", err)
}