1
0
mirror of https://github.com/rancher/os.git synced 2025-09-16 23:21:19 +00:00

cache the user/system client if its created

Signed-off-by: Sven Dowideit <SvenDowideit@home.org.au>
This commit is contained in:
Sven Dowideit
2017-07-21 09:50:31 +10:00
parent 3de5a836c9
commit d244043ce7

View File

@@ -248,20 +248,27 @@ func StageServices(cfg *config.CloudConfig, services ...string) error {
// Reduce service configurations to just image and labels
needToPull := false
var client, userClient, systemClient dockerClient.APIClient
for _, serviceName := range p.ServiceConfigs.Keys() {
serviceConfig, _ := p.ServiceConfigs.Get(serviceName)
// test to see if we need to Pull
var client dockerClient.APIClient
if serviceConfig.Labels[config.ScopeLabel] != config.System {
client, err = rosDocker.NewDefaultClient()
if err != nil {
log.Error(err)
if userClient == nil {
userClient, err = rosDocker.NewDefaultClient()
if err != nil {
log.Error(err)
}
}
client = userClient
} else {
client, err = rosDocker.NewSystemClient()
if err != nil {
log.Error(err)
if systemClient == nil {
systemClient, err = rosDocker.NewSystemClient()
if err != nil {
log.Error(err)
}
client = systemClient
}
}
if client != nil {