mirror of
https://github.com/crawlab-team/crawlab.git
synced 2026-01-21 17:21:09 +01:00
67 lines
1.4 KiB
Go
67 lines
1.4 KiB
Go
package utils
|
|
|
|
import (
|
|
"fmt"
|
|
"github.com/crawlab-team/crawlab/core/sys_exec"
|
|
"github.com/crawlab-team/crawlab/db/mongo"
|
|
"github.com/crawlab-team/crawlab/trace"
|
|
"github.com/spf13/viper"
|
|
)
|
|
|
|
func GetApiAddress() (res string) {
|
|
apiAddress := viper.GetString("api.address")
|
|
if apiAddress == "" {
|
|
return "http://localhost:8000"
|
|
}
|
|
return apiAddress
|
|
}
|
|
|
|
func IsDemo() (ok bool) {
|
|
return EnvIsTrue("demo", true)
|
|
}
|
|
|
|
func InitializedDemo() (ok bool) {
|
|
col := mongo.GetMongoCol("users")
|
|
n, err := col.Count(nil)
|
|
if err != nil {
|
|
return true
|
|
}
|
|
return n > 0
|
|
}
|
|
|
|
func ImportDemo() (err error) {
|
|
cmdStr := fmt.Sprintf("crawlab-cli login -a %s && crawlab-demo import", GetApiAddress())
|
|
cmd, err := sys_exec.BuildCmd(cmdStr)
|
|
if err != nil {
|
|
return err
|
|
}
|
|
if err := cmd.Run(); err != nil {
|
|
trace.PrintError(err)
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func ReimportDemo() (err error) {
|
|
cmdStr := fmt.Sprintf("crawlab-cli login -a %s && crawlab-demo reimport", GetApiAddress())
|
|
cmd, err := sys_exec.BuildCmd(cmdStr)
|
|
if err != nil {
|
|
return err
|
|
}
|
|
if err := cmd.Run(); err != nil {
|
|
trace.PrintError(err)
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func CleanupDemo() (err error) {
|
|
cmdStr := fmt.Sprintf("crawlab-cli login -a %s && crawlab-demo reimport", GetApiAddress())
|
|
cmd, err := sys_exec.BuildCmd(cmdStr)
|
|
if err != nil {
|
|
return err
|
|
}
|
|
if err := cmd.Run(); err != nil {
|
|
trace.PrintError(err)
|
|
}
|
|
return nil
|
|
}
|