Exemplo n.º 1
0
        private SolutionFileInfo ExportSolution(OrganizationServiceProxy serviceProxy, string solutionUnqiueName, string owner, string message)
        {
            string filename;
            ExportSolutionRequest exportRequest = new ExportSolutionRequest();

            exportRequest.Managed      = true;
            exportRequest.SolutionName = solutionUnqiueName;

            Console.WriteLine("Downloading Solutions");
            ExportSolutionResponse exportResponse = (ExportSolutionResponse)serviceProxy.Execute(exportRequest);

            //Handles the response
            byte[] downloadedSolutionFile = exportResponse.ExportSolutionFile;
            filename = solutionUnqiueName + "_" + ".zip";
            File.WriteAllBytes(RepositoryLocalFolder + filename, downloadedSolutionFile);

            SolutionFileInfo solutionFile = new SolutionFileInfo();

            solutionFile.SolutionFilePath   = RepositoryLocalFolder + filename;
            solutionFile.OwnerName          = owner;
            solutionFile.Message            = message;
            solutionFile.SolutionUniqueName = solutionUnqiueName;
            Console.WriteLine("Solution Successfully Exported to {0}", filename);

            return(solutionFile);
        }
Exemplo n.º 2
0
        private static void TryPushToRepository(string committerName, string committerEmail, string authorEmail,
                                                SolutionFileInfo solutionFile, string solutionFilePath)
        {
            GitDeploy.GitRepositoryManager gitRepositoryManager = new GitDeploy.GitRepositoryManager(
                ConfigurationManager.AppSettings["UserName"],
                ConfigurationManager.AppSettings["GitPassword"],
                ConfigurationManager.AppSettings["RepositoryUrl"],
                ConfigurationManager.AppSettings["RepositoryLocalDirectory"],
                solutionFile.OwnerName ?? committerName, authorEmail, committerName, committerEmail);

            //GitDeploy.GitRepositoryManager gitRepositoryManager = new GitDeploy.GitRepositoryManager(
            //    ConfigurationManager.AppSettings["UserName"],
            //    ConfigurationManager.AppSettings["GitPassword"],
            //    ConfigurationManager.AppSettings["RepositoryUrl"],
            //    ConfigurationManager.AppSettings["RepositoryLocalDirectory"],
            //    authorName, authorEmail, committerName, committerEmail);

            gitRepositoryManager.CommitAllChanges(solutionFile.Message, solutionFile.SolutionFilePath, solutionFilePath);
            gitRepositoryManager.PushCommits(ConfigurationManager.AppSettings["RemoteName"],
                                             ConfigurationManager.AppSettings["BranchName"]);
        }