Ejemplo n.º 1
0
        public void ConfigureServices(IServiceCollection services)
        {
            services.AddMvc();

            //Compile Function on startup time:
            var function = FunctionFactory.BuildFunction(Configuration);


            ICompiler compiler;

            string directory = Environment.GetEnvironmentVariable("DOTNETCORE_HOME");

            if (Directory.Exists(directory))
            {
                compiler = new DefaultCompiler(new DefaultParser(), new WithDependencyReferencesManager());
            }
            else
            {
                compiler = new DefaultCompiler(new DefaultParser(), new WithoutDependencyReferencesManager());
            }

            if (!function.IsCompiled())
            {
                compiler.Compile(function);
            }

            services.AddSingleton <IFunction>(function);

            int timeout = int.Parse(VariablesUtils.GetEnvironmentVariable("FUNC_TIMEOUT", "180"));

            services.AddSingleton <IInvoker>(new TimeoutInvoker(timeout * 1000)); // seconds
            services.AddSingleton <IParameterHandler>(new DefaultParameterHandler());
        }
Ejemplo n.º 2
0
        public static IWebHost BuildWebHost(string[] args)
        {
            var port = VariablesUtils.GetEnvironmentVariable("FUNC_PORT", "8080");

            return(WebHost.CreateDefaultBuilder(args)
                   .UseStartup <Startup>()
                   .UseUrls($"http://*:{port}")
                   .Build());
        }
Ejemplo n.º 3
0
        public static IHostBuilder CreateHostBuilder(string[] args)
        {
            var port = VariablesUtils.GetEnvVar("FUNC_PORT", "8080");

            return(Host.CreateDefaultBuilder(args)
                   .ConfigureWebHostDefaults(webBuilder =>
            {
                webBuilder.UseStartup <Startup>().UseUrls($"http://*:{port}");
            }));
        }
Ejemplo n.º 4
0
        public static IWebHostBuilder CreateWebHostBuilder(params string[] args)
        {
            var port = VariablesUtils.GetEnvVar("FUNC_PORT", "8080");

            return(WebHost.CreateDefaultBuilder(args)
                   .UseStartup <Startup>()
                   .UseUrls($"http://*:{port}")
                   .ConfigureLogging((hostingContext, logging) =>
            {
                logging.AddConsole(options => options.IncludeScopes = true);
                logging.AddDebug();
            }));
        }
Ejemplo n.º 5
0
        public void ConfigureServices(IServiceCollection services)
        {
            services.AddMvc();

            var function = FunctionFactory.BuildFunction(Configuration);

            if (!function.IsCompiled())
            {
                throw new FileNotFoundException(nameof(function.FunctionSettings.ModuleName));
            }

            services.AddSingleton <IFunction>(function);

            int timeout = int.Parse(VariablesUtils.GetEnvironmentVariable("FUNC_TIMEOUT", "180"));

            services.AddSingleton <IInvoker>(new CompiledFunctionInvoker(timeout * 1000)); // seconds
            services.AddSingleton <IParameterHandler>(new DefaultParameterHandler());
        }