diff --git a/src/main/java/net/geant/nmaas/nmservice/deployment/containerorchestrators/kubernetes/HelmRepoUpdateScheduleConfig.java b/src/main/java/net/geant/nmaas/nmservice/deployment/containerorchestrators/kubernetes/HelmRepoUpdateScheduleConfig.java index 2ec076d268ab0633c0616fb818af2b62eaabc141..de2177e7424bfa49a7741d2a8ef859797092ff07 100644 --- a/src/main/java/net/geant/nmaas/nmservice/deployment/containerorchestrators/kubernetes/HelmRepoUpdateScheduleConfig.java +++ b/src/main/java/net/geant/nmaas/nmservice/deployment/containerorchestrators/kubernetes/HelmRepoUpdateScheduleConfig.java @@ -2,7 +2,9 @@ package net.geant.nmaas.nmservice.deployment.containerorchestrators.kubernetes; import com.google.common.base.Strings; import lombok.extern.log4j.Log4j2; +import net.geant.nmaas.nmservice.deployment.containerorchestrators.kubernetes.components.helm.HelmKServiceManager; import net.geant.nmaas.scheduling.ScheduleManager; +import net.geant.nmaas.utils.ssh.CommandExecutionException; import org.springframework.beans.factory.InitializingBean; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; @@ -20,6 +22,9 @@ public class HelmRepoUpdateScheduleConfig { public InitializingBean insertDefaultHelmRepoUpdateJob() { return new InitializingBean() { + @Autowired + private HelmKServiceManager helmKServiceManager; + @Autowired private HelmRepoUpdateJob helmRepoUpdateJob; @@ -39,7 +44,13 @@ public class HelmRepoUpdateScheduleConfig { if (Strings.isNullOrEmpty(helmRepoUpdateAsyncCron)) { log.warn("Asynchronous Helm repo update cron expression not provided."); } else { - this.scheduleManager.createJob(helmRepoUpdateJob, HELM_REPO_UPDATE_JOB_NAME, helmRepoUpdateAsyncCron); + scheduleManager.createJob(helmRepoUpdateJob, HELM_REPO_UPDATE_JOB_NAME, helmRepoUpdateAsyncCron); + // execute helm repo update right away + try { + helmKServiceManager.updateHelmRepo(); + } catch (CommandExecutionException e) { + log.warn("Wasn't able to execute Helm repo update on startup", e); + } } } else { log.warn("Asynchronous Helm repo update is disabled.");