From a26471548b78585fb9685c3ec3b455d0439fbdf0 Mon Sep 17 00:00:00 2001 From: yashsinghcodes Date: Mon, 2 Dec 2024 20:19:54 +0530 Subject: [PATCH] pull memcached image if not exists --- functions/onprem/orborus/orborus.go | 39 ++++++++++++++++------------- 1 file changed, 21 insertions(+), 18 deletions(-) diff --git a/functions/onprem/orborus/orborus.go b/functions/onprem/orborus/orborus.go index 8283b741..58b7b1d9 100755 --- a/functions/onprem/orborus/orborus.go +++ b/functions/onprem/orborus/orborus.go @@ -341,6 +341,7 @@ func deployServiceWorkers(image string) { log.Printf("[ERROR] Memcached is not running. Will try to deploy it.") deployMemcached(dockercli) } + ip := "shuffle-cache" os.Setenv("SHUFFLE_MEMCACHED", fmt.Sprintf("%s:11211", ip)) @@ -1256,27 +1257,27 @@ func deployWorker(image string, identifier string, env []string, executionReques Resources: container.Resources{}, } - certPath := "/certs" + certPath := "/certs" - // This is just to test the mounting locally so - // I can control from what source I'm mounting - // the certs to. Default behaviour is: - // /certs:/certs. - if os.Getenv("SHUFFLE_CERT_PATH") != "" { - certPath = os.Getenv("SHUFFLE_CERT_PATH") - } + // This is just to test the mounting locally so + // I can control from what source I'm mounting + // the certs to. Default behaviour is: + // /certs:/certs. + if os.Getenv("SHUFFLE_CERT_PATH") != "" { + certPath = os.Getenv("SHUFFLE_CERT_PATH") + } - _, err := os.ReadDir(certPath) + _, err := os.ReadDir(certPath) - if certPath != "" && err == nil { - certVol := mount.Mount{ - Type: mount.TypeBind, - Source: certPath, - Target: "/certs", - } + if certPath != "" && err == nil { + certVol := mount.Mount{ + Type: mount.TypeBind, + Source: certPath, + Target: "/certs", + } - hostConfig.Mounts = append(hostConfig.Mounts, certVol) - } + hostConfig.Mounts = append(hostConfig.Mounts, certVol) + } if len(os.Getenv("DOCKER_HOST")) == 0 { if runtime.GOOS == "windows" { @@ -3985,8 +3986,9 @@ func deployMemcached(dockercli *dockerclient.Client) error { ctx := context.Background() + memcachedImage := "memcached" containerConfig := &container.Config{ - Image: "memcached", + Image: memcachedImage, Cmd: []string{"-m", defaultMem}, } @@ -3996,6 +3998,7 @@ func deployMemcached(dockercli *dockerclient.Client) error { }, } + dockercli.ImagePull(ctx, memcachedImage, image.PullOptions{}) containerName := "shuffle-cache" resp, err := dockercli.ContainerCreate(ctx, containerConfig, hostConfig, nil, nil, containerName)