move main to bottom

This commit is contained in:
AustrianToast 2024-07-12 00:32:52 +02:00
parent 93b4258dd5
commit 9e705741e5
Signed by: AustrianToast
GPG Key ID: 378A29F999424B1C

158
main.go
View File

@ -16,85 +16,6 @@ import (
var dbpool *pgxpool.Pool var dbpool *pgxpool.Pool
var uploadFolder string var uploadFolder string
func main() {
var err error
dbpool, err = pgxpool.New(context.Background(), "postgresql://postgres:postgres@172.18.0.3:5432/postgres")
if err != nil {
log.Fatal(err)
}
defer dbpool.Close()
sqlStmt := `
DROP TABLE IF EXISTS videos;
CREATE TABLE IF NOT EXISTS videos
(
id serial NOT NULL,
filepath text,
CONSTRAINT videos_pkey PRIMARY KEY (id)
)
`
_, err = dbpool.Exec(context.Background(), sqlStmt)
if err != nil {
log.Panicf("main: %v\n", err)
}
faker := faker.New()
for i := 0; i < 10; i++ {
_, err = dbpool.Exec(context.Background(), "insert into videos(filepath) values($1)", faker.File().AbsoluteFilePathForUnix(2))
if err != nil {
log.Panicf("main: %v\n", err)
}
}
currentDir, err := os.Getwd()
if err != nil {
log.Panicf("main: %v\n", err)
}
uploadFolder = fmt.Sprintf("%s/upload", currentDir)
if _, err := os.Stat(uploadFolder); err != nil {
if !os.IsNotExist(err) {
log.Panicf("main: %v\n", err)
}
if err := os.Mkdir(uploadFolder, 0750); err != nil {
log.Panicf("main: %v\n", err)
}
}
files, err := os.ReadDir(uploadFolder)
if err != nil {
panic(err)
}
if len(files) != 0 {
for _, file := range files {
if file.IsDir() {
continue
}
_, err = dbpool.Exec(context.Background(), "insert into videos(filepath) values($1)", fmt.Sprintf("%s/%s", uploadFolder, file.Name()))
if err != nil {
log.Panicf("main: %v\n", err)
}
}
}
router := gin.Default()
router.SetTrustedProxies(nil)
router.POST("/video/init", initUpload)
router.POST("/video/chunk", receiveChunk)
router.POST("/video/completed", finishUpload)
router.GET("/videos", listVideos)
router.GET("/videos/:id", getVideo)
router.DELETE("/videos/:id", deleteVideo)
router.Run("localhost:8080")
}
func initUpload(c *gin.Context) { func initUpload(c *gin.Context) {
fileName, err := io.ReadAll(c.Request.Body) fileName, err := io.ReadAll(c.Request.Body)
if err != nil { if err != nil {
@ -235,3 +156,82 @@ func deleteVideo(c *gin.Context) {
c.JSON(http.StatusOK, "File deleted successfully") c.JSON(http.StatusOK, "File deleted successfully")
} }
func main() {
var err error
dbpool, err = pgxpool.New(context.Background(), "postgresql://postgres:postgres@172.18.0.3:5432/postgres")
if err != nil {
log.Fatal(err)
}
defer dbpool.Close()
sqlStmt := `
DROP TABLE IF EXISTS videos;
CREATE TABLE IF NOT EXISTS videos
(
id serial NOT NULL,
filepath text,
CONSTRAINT videos_pkey PRIMARY KEY (id)
)
`
_, err = dbpool.Exec(context.Background(), sqlStmt)
if err != nil {
log.Panicf("main: %v\n", err)
}
faker := faker.New()
for i := 0; i < 10; i++ {
_, err = dbpool.Exec(context.Background(), "insert into videos(filepath) values($1)", faker.File().AbsoluteFilePathForUnix(2))
if err != nil {
log.Panicf("main: %v\n", err)
}
}
currentDir, err := os.Getwd()
if err != nil {
log.Panicf("main: %v\n", err)
}
uploadFolder = fmt.Sprintf("%s/upload", currentDir)
if _, err := os.Stat(uploadFolder); err != nil {
if !os.IsNotExist(err) {
log.Panicf("main: %v\n", err)
}
if err := os.Mkdir(uploadFolder, 0750); err != nil {
log.Panicf("main: %v\n", err)
}
}
files, err := os.ReadDir(uploadFolder)
if err != nil {
panic(err)
}
if len(files) != 0 {
for _, file := range files {
if file.IsDir() {
continue
}
_, err = dbpool.Exec(context.Background(), "insert into videos(filepath) values($1)", fmt.Sprintf("%s/%s", uploadFolder, file.Name()))
if err != nil {
log.Panicf("main: %v\n", err)
}
}
}
router := gin.Default()
router.SetTrustedProxies(nil)
router.POST("/video/init", initUpload)
router.POST("/video/chunk", receiveChunk)
router.POST("/video/completed", finishUpload)
router.GET("/videos", listVideos)
router.GET("/videos/:id", getVideo)
router.DELETE("/videos/:id", deleteVideo)
router.Run("localhost:8080")
}