public static void Run([TimerTrigger("0 */50 * * * *", RunOnStartup = true)] TimerInfo myTimer, TraceWriter log, ExecutionContext context)
        {
            try
            {
                Logger.Init(log);
                log.Info($"Starting at {DateTime.Now} in {context.FunctionAppDirectory}");

                var azureContainerManager = new AzureContainerManager(context.FunctionAppDirectory);
                var containerStatus       = azureContainerManager.GetStatus();
                Logger.Info($"Status is {containerStatus}");
                switch (containerStatus)
                {
                case ContainerStatus.Missing:
                    Logger.Info("Starting container");
                    azureContainerManager.StartImageAnalyzer();
                    break;

                case ContainerStatus.ExceededDuration:
                    azureContainerManager.StopImageAnalyzer();
                    break;
                }

                log.Info($"Finished at {DateTime.Now}");
            }
            catch (Exception e)
            {
                log.Info(e.ToString());
            }
        }
Esempio n. 2
0
        public static void Run([TimerTrigger("0 */15 * * * *", RunOnStartup = true)] TimerInfo myTimer, TraceWriter log)
        {
            try
            {
                Logger.Init(log);
                log.Info($"Starting at {DateTime.Now}");

                var containerManager = new ContainerManager();
                var containerStatus  = containerManager.GetStatus();
                Logger.Log($"Status is {containerStatus}");
                if (containerStatus == ContainerStatus.Missing)
                {
                    Logger.Log($"Starting container");
                    var azureContainerManager = new AzureContainerManager();
                    azureContainerManager.StartImageAnalyzer();
                }

                log.Info($"Finished at {DateTime.Now}");
            }
            catch (Exception e)
            {
                log.Info(e.ToString());
            }
        }