Пример #1
0
 public PythonScriptedPostProcessorFactory(Suite suite, IPostProcessorScriptRunner scriptRunner)
 {
     this.scriptRunner = scriptRunner;
     if (suite.HasParameters("post-processor-scripts"))
     {
         scriptMappings = suite.GetParameters <PostProcessorScriptMappings>("post-processor-scripts");
     }
     else
     {
         scriptMappings = new PostProcessorScriptMappings();
     }
 }
Пример #2
0
        public PythonScriptedPostProcessorFactory(Suite suite, IPythonScriptedBuilderFactory builderFactory)
        {
            this.builderFactory = builderFactory;

            if (suite.HasParameters("post-processor-scripts"))
            {
                scriptMappings = suite.GetParameters <PostProcessorScriptMappings>("post-processor-scripts");
            }
            else
            {
                scriptMappings = new PostProcessorScriptMappings();
            }
        }
Пример #3
0
        public void ExtendWithDiscoveries(Suite suite)
        {
            var scriptsDir = suite.SuiteRoot.GetChildDirectory("scripts");

            if (scriptsDir != null)
            {
                var ppScriptsDir = scriptsDir.GetChildDirectory("postprocessors");

                if (ppScriptsDir != null)
                {
                    PostProcessorScriptMappings mappings;
                    if (suite.HasParameters("post-processor-scripts"))
                    {
                        mappings = suite.GetParameters <PostProcessorScriptMappings>("post-processor-scripts");
                    }
                    else
                    {
                        mappings = new PostProcessorScriptMappings();
                        suite.AddParameters("post-processor-scripts", mappings);
                    }

                    foreach (var scriptFile in ppScriptsDir.Files)
                    {
                        var ext = Path.GetExtension(scriptFile);
                        if (ext != null && ext.ToLowerInvariant() == ".py")
                        {
                            var script = new SimplePythonPostProcessorScript(
                                new SuiteRelativePath(Path.Combine("scripts", "postprocessors", scriptFile)),
                                suite.SuiteRoot);

                            mappings.Add(script.PostProcessorId, script);

                            log.DebugFormat("Discovered build script: {0}", script.Name);
                        }
                    }
                }
            }
        }
        public void ExtendWithDiscoveries(Suite suite)
        {
            var scriptsDir = suite.SuiteRoot.GetChildDirectory("scripts");
            if (scriptsDir != null)
            {
                var ppScriptsDir = scriptsDir.GetChildDirectory("postprocessors");

                if (ppScriptsDir != null)
                {
                    PostProcessorScriptMappings mappings;
                    if (suite.HasParameters("post-processor-scripts"))
                    {
                        mappings = suite.GetParameters<PostProcessorScriptMappings>("post-processor-scripts");
                    }
                    else
                    {
                        mappings = new PostProcessorScriptMappings();
                        suite.AddParameters("post-processor-scripts", mappings);
                    }

                    foreach (var scriptFile in ppScriptsDir.Files)
                    {
                        var ext = Path.GetExtension(scriptFile);
                        if (ext != null && ext.ToLowerInvariant() == ".py")
                        {
                            var script = new SimplePythonPostProcessorScript(
                                new SuiteRelativePath(Path.Combine("scripts", "postprocessors", scriptFile)),
                                suite.SuiteRoot);

                            mappings.Add(script.PostProcessorId, script);

                            log.DebugFormat("Discovered build script: {0}", script.Name);
                        }
                    }
                }
            }
        }