Create xds-project.conf file on folder creation.
[src/xds/xds-server.git] / lib / xdsconfig / config.go
index 53d1639..84e0778 100644 (file)
@@ -37,7 +37,8 @@ type Options struct {
 const (
        DefaultAPIVersion = "1"
        DefaultPort       = "8000"
-       DefaultShareDir   = "/mnt/share"
+       DefaultShareDir   = "${HOME}/.xds-server/projects"
+       DefaultSTHomeDir  = "${HOME}/.xds-server/syncthing-config"
        DefaultSdkRootDir = "/xdt/sdk"
 )
 
@@ -45,6 +46,15 @@ const (
 func Init(cliCtx *cli.Context, log *logrus.Logger) (*Config, error) {
        var err error
 
+       dfltShareDir := DefaultShareDir
+       dfltSTHomeDir := DefaultSTHomeDir
+       if resDir, err := common.ResolveEnvVar(DefaultShareDir); err == nil {
+               dfltShareDir = resDir
+       }
+       if resDir, err := common.ResolveEnvVar(DefaultSTHomeDir); err == nil {
+               dfltSTHomeDir = resDir
+       }
+
        // Define default configuration
        c := Config{
                Version:       cliCtx.App.Metadata["version"].(string),
@@ -60,9 +70,10 @@ func Init(cliCtx *cli.Context, log *logrus.Logger) (*Config, error) {
                },
                FileConf: FileConfig{
                        WebAppDir:    "webapp/dist",
-                       ShareRootDir: DefaultShareDir,
+                       ShareRootDir: dfltShareDir,
                        SdkRootDir:   DefaultSdkRootDir,
                        HTTPPort:     DefaultPort,
+                       SThgConf:     &SyncThingConf{Home: dfltSTHomeDir},
                        LogsDir:      "",
                },
                Log: log,