Mercurial > gemma
comparison pkg/geoserver/boot.go @ 874:da526b58c9c4 geo-style
Added a flag geoserver-clean to force deletion of the gemma workspace before configuring the GeoServer again.
author | Sascha L. Teichmann <sascha.teichmann@intevation.de> |
---|---|
date | Sun, 30 Sep 2018 15:36:17 +0200 |
parents | aa8f30c1ed27 |
children | 371c756f0370 |
comparison
equal
deleted
inserted
replaced
873:ad9272460ef3 | 874:da526b58c9c4 |
---|---|
285 } | 285 } |
286 | 286 |
287 return nil | 287 return nil |
288 } | 288 } |
289 | 289 |
290 func deleteWorkspace() error { | |
291 log.Println("info: delete workspace " + workspaceName) | |
292 var ( | |
293 url = config.GeoServerURL() | |
294 user = config.GeoServerUser() | |
295 password = config.GeoServerPassword() | |
296 auth = basicAuth(user, password) | |
297 ) | |
298 | |
299 req, err := http.NewRequest( | |
300 http.MethodDelete, | |
301 url+"/rest/workspaces/"+workspaceName+"?recurse=true", | |
302 nil) | |
303 if err != nil { | |
304 return err | |
305 } | |
306 auth(req) | |
307 _, err = http.DefaultClient.Do(req) | |
308 return err | |
309 } | |
310 | |
290 func prepareGeoServer() error { | 311 func prepareGeoServer() error { |
291 | 312 |
292 if config.DBUser() == "" { | 313 if config.DBUser() == "" { |
293 log.Println("info: Need metamorphic db user to configure GeoServer") | 314 log.Println("info: Need metamorphic db user to configure GeoServer") |
294 return nil | 315 return nil |
295 } | 316 } |
296 | 317 |
297 if config.GeoServerURL() == "" { | 318 if config.GeoServerURL() == "" { |
298 log.Println("info: No tables to publish on GeoServer") | 319 log.Println("info: No tables to publish on GeoServer") |
299 return nil | 320 return nil |
321 } | |
322 | |
323 // Should we delete our workspace first? | |
324 if config.GeoServerClean() { | |
325 if err := deleteWorkspace(); err != nil { | |
326 return err | |
327 } | |
300 } | 328 } |
301 | 329 |
302 if err := ensureWorkspace(); err != nil { | 330 if err := ensureWorkspace(); err != nil { |
303 return err | 331 return err |
304 } | 332 } |