public void ConfigureServices(IFunctionsHostBuilder builder, IConfiguration config) { _loggerFactory = new LoggerFactory(); var logger = _loggerFactory.CreateLogger("Startup"); if (Base._cache == null) { Base._cache = new MemoryCache(new MemoryCacheOptions()); } //Get Settings from KeyVault if (string.IsNullOrEmpty(Environment.GetEnvironmentVariable("SAS:Cat"))) { Environment.SetEnvironmentVariable("SAS:Cat", _keyVaultClient.GetSecretAsync(vaultBaseUrl: config["VaultUri"], secretName: "cat").Result.Value); } if (string.IsNullOrEmpty(Environment.GetEnvironmentVariable("SAS:Cont"))) { Environment.SetEnvironmentVariable("SAS:Cont", _keyVaultClient.GetSecretAsync(vaultBaseUrl: config["VaultUri"], secretName: "cont").Result.Value); } if (string.IsNullOrEmpty(Environment.GetEnvironmentVariable("SAS:Icon"))) { Environment.SetEnvironmentVariable("SAS:Icon", _keyVaultClient.GetSecretAsync(vaultBaseUrl: config["VaultUri"], secretName: "icon").Result.Value); } if (string.IsNullOrEmpty(Environment.GetEnvironmentVariable("SAS:Repo"))) { Environment.SetEnvironmentVariable("SAS:Repo", _keyVaultClient.GetSecretAsync(vaultBaseUrl: config["VaultUri"], secretName: "repo").Result.Value); } if (string.IsNullOrEmpty(Environment.GetEnvironmentVariable("SAS:Wait"))) { Environment.SetEnvironmentVariable("SAS:Wait", _keyVaultClient.GetSecretAsync(vaultBaseUrl: config["VaultUri"], secretName: "wait").Result.Value); } if (string.IsNullOrEmpty(Environment.GetEnvironmentVariable("SAS:Look"))) { Environment.SetEnvironmentVariable("SAS:Look", _keyVaultClient.GetSecretAsync(vaultBaseUrl: config["VaultUri"], secretName: "look").Result.Value); } if (string.IsNullOrEmpty(Environment.GetEnvironmentVariable("SAS:Map"))) { Environment.SetEnvironmentVariable("SAS:Map", _keyVaultClient.GetSecretAsync(vaultBaseUrl: config["VaultUri"], secretName: "map").Result.Value); } if (string.IsNullOrEmpty(Environment.GetEnvironmentVariable("SAS:Feedback"))) { Environment.SetEnvironmentVariable("SAS:Feedback", _keyVaultClient.GetSecretAsync(vaultBaseUrl: config["VaultUri"], secretName: "feedback").Result.Value); } if (string.IsNullOrEmpty(Environment.GetEnvironmentVariable("SAS:Dlq"))) { Environment.SetEnvironmentVariable("SAS:Dlq", _keyVaultClient.GetSecretAsync(vaultBaseUrl: config["VaultUri"], secretName: "dlq").Result.Value); } if (string.IsNullOrEmpty(Environment.GetEnvironmentVariable("SAS:Suq"))) { Environment.SetEnvironmentVariable("SAS:Suq", _keyVaultClient.GetSecretAsync(vaultBaseUrl: config["VaultUri"], secretName: "suq").Result.Value); } if (string.IsNullOrEmpty(Environment.GetEnvironmentVariable("SAS:Faq"))) { Environment.SetEnvironmentVariable("SAS:Faq", _keyVaultClient.GetSecretAsync(vaultBaseUrl: config["VaultUri"], secretName: "faq").Result.Value); } if (string.IsNullOrEmpty(Environment.GetEnvironmentVariable("SAS:Swq"))) { Environment.SetEnvironmentVariable("SAS:Swq", _keyVaultClient.GetSecretAsync(vaultBaseUrl: config["VaultUri"], secretName: "swq").Result.Value); } if (string.IsNullOrEmpty(Environment.GetEnvironmentVariable("SAS:Ip"))) { Environment.SetEnvironmentVariable("SAS:Ip", _keyVaultClient.GetSecretAsync(vaultBaseUrl: config["VaultUri"], secretName: "ip").Result.Value); } if (string.IsNullOrEmpty(Environment.GetEnvironmentVariable("sbConnection"))) { Environment.SetEnvironmentVariable("sbConnection", _keyVaultClient.GetSecretAsync(vaultBaseUrl: config["VaultUri"], secretName: "sbConnection").Result.Value); } var binDirectory = Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location); string ResourcePath = Path.GetFullPath(Path.Combine(binDirectory, "..")); Console.WriteLine("loading RZ.Software-Providers:"); Plugins.loadPlugins(Path.Combine(Path.Combine(ResourcePath, "wwwroot"), "plugins")); Console.Write("loading SW-Catalog..."); Base.GetCatalog("", true); Console.WriteLine(" done."); RZ.ServerFN.IP2Location.Settings = Plugins.dSettings; RZ.ServerFN.UpdateCounters.Settings = Plugins.dSettings; sbconnection = Environment.GetEnvironmentVariable("sbConnection"); }