示例#1
0
        protected FlubuTestBase(ILoggerFactory loggerFactory)
        {
            LoggerFactory = loggerFactory;

            ServiceProvider = new ServiceCollection()
                              .AddCoreComponents()
                              .AddCommandComponents()
                              .AddTasks()
                              .BuildServiceProvider();

            Factory = new DotnetTaskFactory(ServiceProvider);
            var session = new BuildPropertiesSession(new TargetTree(ServiceProvider, new CommandArguments()));

            session.Set(BuildProps.ProductRootDir, Directory.GetCurrentDirectory());

            Context = new TaskContextInternal(
                loggerFactory.CreateLogger <FlubuSession>(),
                session,
                new CommandArguments()
            {
            },
                new TargetTree(ServiceProvider, new CommandArguments()),
                new BuildSystem(),
                Factory,
                new FluentInterfaceFactory(ServiceProvider));
        }
示例#2
0
        public FlubuEngine()
        {
            LoggerFactory             = new LoggerFactory();
            FlubuConfigurationBuilder = new FlubuConfigurationBuilder();
            LoggerFactory.AddProvider(new FlubuLoggerProvider());
            var loggers = ServiceDescriptor.Singleton(typeof(ILogger <>), typeof(Logger <>));
            var app     = new CommandLineApplication()
            {
                UnrecognizedArgumentHandling = UnrecognizedArgumentHandling.CollectAndContinue
            };

            FlubuConfiguration flubuConfiguration = new FlubuConfiguration();
            CommandArguments   arguments          = new CommandArguments();
            var serviceCollection = new ServiceCollection()
                                    .AddCoreComponents()
                                    .AddTasks()
                                    .AddSingleton(app)
                                    .AddSingleton(LoggerFactory)
                                    .AddSingleton <IBuildScriptLocator, BuildScriptLocator>()
                                    .AddSingleton <IFlubuConfigurationProvider, FlubuConfigurationProvider>()
                                    .AddSingleton <IFlubuCommandParser, FlubuCommandParser>()
                                    .AddSingleton(arguments);

            serviceCollection.TryAdd(loggers);
            serviceCollection.AddSingleton(flubuConfiguration);
            ServiceProvider = serviceCollection.BuildServiceProvider();

            TaskFactory = new DotnetTaskFactory(ServiceProvider);
        }
示例#3
0
        public FlubuEngine()
        {
#if NETSTANDARD1_6
            throw new NotSupportedException("BuildScript engine is only supported in  =<.net standard2.0 and =<.net 4.62");
#endif
#if !NETSTANDARD1_6
            LoggerFactory = new LoggerFactory();
            LoggerFactory.AddProvider(new FlubuLoggerProvider());
            var loggers = ServiceDescriptor.Singleton(typeof(ILogger <>), typeof(Logger <>));
            var app     = new CommandLineApplication(false);
            CommandArguments arguments = new CommandArguments();
            var serviceCollection      = new ServiceCollection()
                                         .AddCoreComponents()
                                         .AddTasks()
                                         .AddSingleton(app)
                                         .AddSingleton(LoggerFactory)
                                         .AddSingleton <IBuildScriptLocator, BuildScriptLocator>()
                                         .AddSingleton <IFlubuConfigurationProvider, FlubuConfigurationProvider>()
                                         .AddSingleton <IFlubuCommandParser, FlubuCommandParser>()
                                         .AddSingleton(arguments);

            serviceCollection.TryAdd(loggers);
            ServiceProvider = serviceCollection.BuildServiceProvider();

            TaskFactory = new DotnetTaskFactory(ServiceProvider);
#endif
        }
示例#4
0
        public FlubuEngine(IServiceCollection serviceCollection, ILoggerFactory loggerFactory = null)
        {
            LoggerFactory = loggerFactory == null ? new LoggerFactory() : loggerFactory;
            LoggerFactory.AddProvider(new FlubuLoggerProvider());
            ServiceProvider = serviceCollection.AddCoreComponents()
                              .AddTasks()
                              .BuildServiceProvider();

            TaskFactory = new DotnetTaskFactory(ServiceProvider);
            FlubuConfigurationBuilder = new FlubuConfigurationBuilder();
        }
示例#5
0
        public FlubuEngine(IServiceCollection serviceCollection, ILoggerFactory loggerFactory = null)
        {
#if NETSTANDARD1_6
            throw new NotSupportedException("BuildScript engine is only supported in  =<.net standard2.0 and =<.net 4.62");
#endif
#if !NETSTANDARD1_6
            LoggerFactory = loggerFactory == null ? new LoggerFactory() : loggerFactory;

            ServiceProvider = serviceCollection.AddCoreComponents()
                              .AddTasks()
                              .BuildServiceProvider();

            TaskFactory = new DotnetTaskFactory(ServiceProvider);
#endif
        }
示例#6
0
        protected FlubuTestBase(ILoggerFactory loggerFactory)
        {
            LoggerFactory = loggerFactory;

            ServiceProvider = new ServiceCollection()
                              .AddCoreComponents()
                              .AddCommandComponents()
                              .AddTasks()
                              .BuildServiceProvider();

            Factory = new DotnetTaskFactory(ServiceProvider);

            Context = new TaskContextInternal(
                loggerFactory.CreateLogger <TaskSession>(),
                new BuildPropertiesSession(),
                new CommandArguments()
            {
            },
                new TargetTree(ServiceProvider, new CommandArguments()),
                Factory,
                new FluentInterfaceFactory(ServiceProvider));
        }