From 84d9aff8a236c02e30ee1607bd1f052d8c3cbb99 Mon Sep 17 00:00:00 2001 From: Alex Myasoedov Date: Tue, 24 May 2016 03:10:05 +0300 Subject: [PATCH] gogs dump tempdir flag (#3086) --- cmd/dump.go | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/cmd/dump.go b/cmd/dump.go index 0a2f4e9cba..62f45ed785 100644 --- a/cmd/dump.go +++ b/cmd/dump.go @@ -28,7 +28,8 @@ It can be used for backup and capture Gogs server image to send to maintainer`, Action: runDump, Flags: []cli.Flag{ stringFlag("config, c", "custom/conf/app.ini", "Custom configuration file path"), - boolFlag("verbose, v", "show process details"), + boolFlag("verbose, v", "Show process details"), + stringFlag("tempdir, t", os.TempDir(), "Temporary dir path"), }, } @@ -40,7 +41,11 @@ func runDump(ctx *cli.Context) error { models.LoadConfigs() models.SetEngine() - TmpWorkDir, err := ioutil.TempDir(os.TempDir(), "gogs-dump-") + tmpDir := ctx.String("tempdir") + if _, err := os.Stat(tmpDir); os.IsNotExist(err) { + log.Fatalf("Path does not exist: %s", tmpDir) + } + TmpWorkDir, err := ioutil.TempDir(tmpDir, "gogs-dump-") if err != nil { log.Fatalf("Fail to create tmp work directory: %v", err) }