diff options
author | Clément Bénier <clement.benier@iot.bzh> | 2018-10-01 11:51:47 +0200 |
---|---|---|
committer | Clément Bénier <clement.benier@iot.bzh> | 2018-10-01 11:57:48 +0200 |
commit | 2e17a524738982174794370a2bb609872608a5ac (patch) | |
tree | 91eda98e97032493cf614a8a35a262500c916d99 /lib/xdsconfig | |
parent | 95293a7ee22cfff9c49a19bd7ae205529d812fa9 (diff) |
update xds-server package in dockersandbox/benierc/xds-server-update-pkg
scripts/package-update: bash scripts to update xds-server package in docker
monitor updates: default time is 24h, a update is tried at startup
api/v1: 2 new requests:
- get(updates): return various information about xds-server packages
- post(updates): update xds-server packages
Change-Id: I34613be916bb29c2cce13ca1cce1e384365872f7
Signed-off-by: Clément Bénier <clement.benier@iot.bzh>
Diffstat (limited to 'lib/xdsconfig')
-rw-r--r-- | lib/xdsconfig/config.go | 30 | ||||
-rw-r--r-- | lib/xdsconfig/fileconfig.go | 26 |
2 files changed, 35 insertions, 21 deletions
diff --git a/lib/xdsconfig/config.go b/lib/xdsconfig/config.go index 4ba97ef..ab0539c 100644 --- a/lib/xdsconfig/config.go +++ b/lib/xdsconfig/config.go @@ -53,12 +53,14 @@ type Options struct { // Config default values const ( - DefaultAPIVersion = "1" - DefaultPort = "8000" - DefaultShareDir = "projects" - DefaultSTHomeDir = "syncthing-config" - DefaultSdkScriptsDir = "${EXEPATH}/sdks" - DefaultSdkDbUpdate = "startup" + DefaultAPIVersion = "1" + DefaultPort = "8000" + DefaultShareDir = "projects" + DefaultSTHomeDir = "syncthing-config" + DefaultSdkScriptsDir = "${EXEPATH}/sdks" + DefaultXdsSrvUpdateScriptsDir = "${EXEPATH}/package-update" + DefaultSdkDbUpdate = "startup" + DefaultXdsSrvUpdateTime = "24h" ) // Init loads the configuration on start-up @@ -98,13 +100,15 @@ func Init(cliCtx *cli.Context, log *logrus.Logger) (*Config, error) { NoFolderConfig: cliCtx.GlobalBool("no-folderconfig"), }, FileConf: FileConfig{ - WebAppDir: "webapp/dist", - ShareRootDir: dfltShareDir, - SdkScriptsDir: DefaultSdkScriptsDir, - SdkDbUpdate: DefaultSdkDbUpdate, - HTTPPort: DefaultPort, - SThgConf: &SyncThingConf{Home: dfltSTHomeDir}, - LogsDir: "", + WebAppDir: "webapp/dist", + ShareRootDir: dfltShareDir, + SdkScriptsDir: DefaultSdkScriptsDir, + XdsSrvUpdateScriptsDir: DefaultXdsSrvUpdateScriptsDir, + SdkDbUpdate: DefaultSdkDbUpdate, + HTTPPort: DefaultPort, + SThgConf: &SyncThingConf{Home: dfltSTHomeDir}, + LogsDir: "", + XdsSrvUpdateTime: DefaultXdsSrvUpdateTime, }, Log: log, } diff --git a/lib/xdsconfig/fileconfig.go b/lib/xdsconfig/fileconfig.go index b786a24..0b248cd 100644 --- a/lib/xdsconfig/fileconfig.go +++ b/lib/xdsconfig/fileconfig.go @@ -50,13 +50,15 @@ type SyncThingConf struct { // FileConfig is the JSON structure of xds-server config file (server-config.json) type FileConfig struct { - WebAppDir string `json:"webAppDir"` - ShareRootDir string `json:"shareRootDir"` - SdkScriptsDir string `json:"sdkScriptsDir"` - SdkDbUpdate string `json:"sdkDbUpdate"` - HTTPPort string `json:"httpPort"` - SThgConf *SyncThingConf `json:"syncthing"` - LogsDir string `json:"logsDir"` + WebAppDir string `json:"webAppDir"` + ShareRootDir string `json:"shareRootDir"` + SdkScriptsDir string `json:"sdkScriptsDir"` + XdsSrvUpdateScriptsDir string `json:"xdsSrvUpdateScriptsDir"` + SdkDbUpdate string `json:"sdkDbUpdate"` + HTTPPort string `json:"httpPort"` + SThgConf *SyncThingConf `json:"syncthing"` + LogsDir string `json:"logsDir"` + XdsSrvUpdateTime string `json:"xdsSrvUpdateTime"` } // readGlobalConfig reads configuration from a config file. @@ -118,7 +120,9 @@ func readGlobalConfig(c *Config, confFile string) error { &fCfg.WebAppDir, &fCfg.ShareRootDir, &fCfg.SdkScriptsDir, - &fCfg.LogsDir} + &fCfg.XdsSrvUpdateScriptsDir, + &fCfg.LogsDir, + &fCfg.XdsSrvUpdateTime} if fCfg.SThgConf != nil { vars = append(vars, &fCfg.SThgConf.Home, &fCfg.SThgConf.BinDir) } @@ -139,6 +143,9 @@ func readGlobalConfig(c *Config, confFile string) error { if fCfg.SdkScriptsDir == "" { fCfg.SdkScriptsDir = c.FileConf.SdkScriptsDir } + if fCfg.XdsSrvUpdateScriptsDir == "" { + fCfg.XdsSrvUpdateScriptsDir = c.FileConf.XdsSrvUpdateScriptsDir + } if fCfg.SdkDbUpdate == "" { fCfg.SdkDbUpdate = c.FileConf.SdkDbUpdate } @@ -148,6 +155,9 @@ func readGlobalConfig(c *Config, confFile string) error { if fCfg.LogsDir == "" { fCfg.LogsDir = c.FileConf.LogsDir } + if fCfg.XdsSrvUpdateTime == "" { + fCfg.XdsSrvUpdateTime = c.FileConf.XdsSrvUpdateTime + } // Resolve webapp dir (support relative or full path) fCfg.WebAppDir = strings.Trim(fCfg.WebAppDir, " ") |