protected override IEnumerable<IComponent> GetComponentsToRun(string action, ComponentRunContext runContext)
        {
            var graph = new DependencyGraph<IComponent>();

            var prerequisites = new PrerequisitesComponent(mReleaseInfo);
            var tplComponent = new TemplatesComponent(mReleaseInfo);
            var reportsComponent = new ReportsComponent(mReleaseInfo);
            var scriptsComponent = new ScriptsComponent(mReleaseInfo, mDbConnection);

            graph.AddDependency(prerequisites, tplComponent);
            graph.AddDependency(prerequisites, reportsComponent);
            graph.AddDependency(prerequisites, scriptsComponent);
            graph.AddDependency(tplComponent, scriptsComponent);
            graph.AddDependency(reportsComponent, scriptsComponent);

            return graph.GetPath();
        }
        protected override IEnumerable <IComponent> GetComponentsToRun(string action, ComponentRunContext runContext)
        {
            var graph = new DependencyGraph <IComponent>();

            var prerequisites    = new PrerequisitesComponent(mReleaseInfo);
            var tplComponent     = new TemplatesComponent(mReleaseInfo);
            var reportsComponent = new ReportsComponent(mReleaseInfo);
            var scriptsComponent = new ScriptsComponent(mReleaseInfo, mDbConnection);

            graph.AddDependency(prerequisites, tplComponent);
            graph.AddDependency(prerequisites, reportsComponent);
            graph.AddDependency(prerequisites, scriptsComponent);
            graph.AddDependency(tplComponent, scriptsComponent);
            graph.AddDependency(reportsComponent, scriptsComponent);

            return(graph.GetPath());
        }