Пример #1
0
        public void Execute(SolutionInput input, IRippleStepRunner runner)
        {
            var feeds = Solution.Feeds.ToArray();

            if (input is IOverrideFeeds)
            {
                var overrides = input.As<IOverrideFeeds>().Feeds();
                if (overrides.Any())
                {
                    Solution.ClearFeeds();
                    Solution.AddFeeds(overrides);
                }
            }

            var missing = Solution.MissingNugets().ToList();
            var nugets = new List<INugetFile>();

            if (missing.Any())
            {
                var tasks = missing.Select(x => restore(x, Solution, nugets)).ToArray();

                Task.WaitAll(tasks);
            }

            Solution.ClearFeeds();
            Solution.AddFeeds(feeds);

            runner.Set(new DownloadedNugets(nugets));
        }
Пример #2
0
        public void Execute(SolutionInput input, IRippleStepRunner runner)
        {
            var nugetRunner = new NugetStepRunner(Solution);
            var aggregatePlan = PlanFor(input.As<INugetOperationContext>(), Solution);

            RippleLog.InfoMessage(aggregatePlan);

            aggregatePlan.Execute(nugetRunner);
        }