private async Task <JsonResult> RunSetup(Func <Task> setupAction)
        {
            try
            {
                _logger.Info("Beginning setup process");
                await setupAction();

                _applicationConfigurationService.UpdateFirstTimeSetUpStatus(true);
                _logger.Info("Setup process completed");
                return(SetupSucess());
            }
            catch (Exception e)
            {
                _logger.Error("Setup failed", e);
                return(SetupFailure(e));
            }
        }
        private async Task <JsonResult> RunSetup(Func <Task> setupAction)
        {
            try
            {
                _logger.Info("Beginning setup process");
                await setupAction();

                _applicationConfigurationService.UpdateFirstTimeSetUpStatus(true);
                _logger.Info("Setup process completed");
                if (CloudOdsAdminAppSettings.Instance.Mode.SupportsSingleInstance)
                {
                    await WarmupApiServer(CloudOdsEnvironment.Production);
                }
                _logger.Info("API warmup complete");
                return(SetupSucess());
            }
            catch (Exception e)
            {
                _logger.Error("Setup failed", e);
                return(SetupFailure(e));
            }
        }