コード例 #1
0
ファイル: Program.cs プロジェクト: akrisiun/dotnet-cli
        public static void Main(string[] args)
        {
            DebugHelper.HandleDebugSwitch(ref args);

            List<BuildInfo> buildInfos = new List<BuildInfo>();

            buildInfos.Add(BuildInfo.Get("CoreFx", s_config.CoreFxVersionUrl, fetchLatestReleaseFile: false));
            buildInfos.Add(BuildInfo.Get("CoreClr", s_config.CoreClrVersionUrl, fetchLatestReleaseFile: false));
            buildInfos.Add(BuildInfo.Get("Roslyn", s_config.RoslynVersionUrl, fetchLatestReleaseFile: false));
            buildInfos.Add(BuildInfo.Get("CoreSetup", s_config.CoreSetupVersionUrl, fetchLatestReleaseFile: false));

            IEnumerable<IDependencyUpdater> updaters = GetUpdaters();

            GitHubAuth gitHubAuth = new GitHubAuth(s_config.Password, s_config.UserName, s_config.Email);

            DependencyUpdater dependencyUpdater = new DependencyUpdater(
                gitHubAuth,
                s_config.GitHubProject,
                s_config.GitHubUpstreamOwner,
                s_config.GitHubUpstreamBranch,
                s_config.UserName,
                s_config.GitHubPullRequestNotifications);

            if (args.Length > 0 && string.Equals("--Update", args[0], StringComparison.OrdinalIgnoreCase))
            {
                dependencyUpdater.Update(updaters, buildInfos);
            }
            else
            {
                dependencyUpdater.UpdateAndSubmitPullRequestAsync(updaters, buildInfos);
            }
        }
コード例 #2
0
        public override bool Execute()
        {
            MsBuildTraceListener[] listeners = Trace.Listeners.AddMsBuildTraceListeners(Log);

            IDependencyUpdater[] updaters = GetDependencyUpdaters().ToArray();
            BuildInfo[] buildInfos = GetBuildInfos().ToArray();

            var gitHubAuth = new GitHubAuth(GitHubAuthToken, GitHubUser, GitHubEmail);

            var updater = new DependencyUpdater(
                gitHubAuth,
                ProjectRepo,
                ProjectRepoOwner,
                ProjectRepoBranch,
                GitHubAuthor ?? GitHubUser,
                NotifyGitHubUsers?.Select(item => item.ItemSpec));

            updater.UpdateAndSubmitPullRequestAsync(updaters, buildInfos).Wait();

            Trace.Listeners.RemoveMsBuildTraceListeners(listeners);

            return true;
        }