Exemple #1
0
        private BuildProgressInformation GetBuildProgressInformation(IIntegrationResult result)
        {
            if (_buildProgressInformation == null)
            {
                _buildProgressInformation = result.BuildProgressInformation;
            }

            return(_buildProgressInformation);
        }
Exemple #2
0
        /// <summary>
        /// Initializes a new instance of the <see cref="FtpLib" /> class.
        /// </summary>
        /// <param name="buildProgressInformation">The build progress information.</param>
        /// <remarks></remarks>
        public FtpLib(BuildProgressInformation buildProgressInformation)
        {
            bpi = buildProgressInformation;

            this.ftpServer = new EnterpriseDT.Net.Ftp.FTPConnection();

            this.ftpServer.ReplyReceived += HandleMessages;

            this.ftpServer.CommandSent += HandleMessages;
        }
Exemple #3
0
        /// <summary>
        /// Initializes a new instance of the <see cref="FtpLib" /> class.	
        /// </summary>
        /// <param name="buildProgressInformation">The build progress information.</param>
        /// <remarks></remarks>
        public FtpLib(BuildProgressInformation buildProgressInformation)
        {
            bpi = buildProgressInformation;

            this.ftpServer = new EnterpriseDT.Net.Ftp.FTPConnection();

            this.ftpServer.ReplyReceived += HandleMessages;

            this.ftpServer.CommandSent += HandleMessages;
        }
Exemple #4
0
 public void Setup()
 {
     this.mocks   = new MockRepository();
     this.logger  = this.mocks.StrictMock <ILogger>();
     this.factory = this.mocks.StrictMock <ICruiseServerClientFactory>();
     this.result  = this.mocks.StrictMock <IIntegrationResult>();
     SetupResult.For(this.result.Status).PropertyBehavior();
     this.result.Status = IntegrationStatus.Unknown;
     this.buildInfo     = this.mocks.StrictMock <BuildProgressInformation>("somewhere", "test");
     SetupResult.For(this.result.BuildProgressInformation).Return(this.buildInfo);
     this.client = this.mocks.StrictMock <CruiseServerClientBase>();
 }
Exemple #5
0
 public void Setup()
 {
     this.mocks   = new MockRepository(MockBehavior.Default);
     this.logger  = this.mocks.Create <ILogger>(MockBehavior.Strict).Object;
     this.factory = this.mocks.Create <ICruiseServerClientFactory>(MockBehavior.Strict).Object;
     this.result  = this.mocks.Create <IIntegrationResult>(MockBehavior.Strict).Object;
     Mock.Get(this.result).SetupProperty(_result => _result.Status);
     this.result.Status = IntegrationStatus.Unknown;
     this.buildInfo     = this.mocks.Create <BuildProgressInformation>(MockBehavior.Strict, "somewhere", "test").Object;
     Mock.Get(this.result).SetupGet(_result => _result.BuildProgressInformation).Returns(this.buildInfo);
     this.client = this.mocks.Create <CruiseServerClientBase>(MockBehavior.Strict).Object;
 }
Exemple #6
0
        protected override bool Execute(IIntegrationResult result)
        {
            BuildProgressInformation buildProgressInformation = result.BuildProgressInformation;

            buildProgressInformation.SignalStartRunTask($"Executing Nunit{Version}");
            ProcessInfo   processInfo = this.CreateProcessInfo(result);
            ProcessResult run         = base.TryToRun(processInfo, result);

            result.AddTaskResult(new ProcessTaskResult(run, true));
            if (run.TimedOut)
            {
                result.AddTaskResult(BaseExecutableTask.MakeTimeoutBuildResult(processInfo));
            }
            return(run.Succeeded);
        }
Exemple #7
0
        /// <summary>
        /// Initializes a new instance of the <see cref="FtpLib" /> class.
        /// </summary>
        /// <param name="callingTask">The calling task.</param>
        /// <param name="buildProgressInformation">The build progress information.</param>
        /// <remarks></remarks>
        public FtpLib(Tasks.TaskBase callingTask, BuildProgressInformation buildProgressInformation)
        {
            this.callingTask = callingTask;
            bpi = buildProgressInformation;

            this.ftpServer = new EnterpriseDT.Net.Ftp.FTPConnection();

            this.ftpServer.ReplyReceived += HandleMessages;

            this.ftpServer.CommandSent += HandleMessages;

            this.ftpServer.Downloaded += new EnterpriseDT.Net.Ftp.FTPFileTransferEventHandler(FtpServer_Downloaded);

            this.ftpServer.Uploaded += new EnterpriseDT.Net.Ftp.FTPFileTransferEventHandler(FtpServer_Uploaded);
        }
Exemple #8
0
        /// <summary>
        /// Initializes a new instance of the <see cref="IntegrationResult" /> class.
        /// </summary>
        /// <param name="projectName">Name of the project.</param>
        /// <param name="workingDirectory">The working directory.</param>
        /// <param name="artifactDirectory">The artifact directory.</param>
        /// <param name="request">The request.</param>
        /// <param name="lastIntegration">The last integration.</param>
        /// <remarks></remarks>
        public IntegrationResult(string projectName, string workingDirectory, string artifactDirectory, IntegrationRequest request, IntegrationSummary lastIntegration)
        {
            ProjectName          = projectName;
            WorkingDirectory     = workingDirectory;
            ArtifactDirectory    = artifactDirectory;
            this.request         = (lastIntegration.IsInitial()) ? new IntegrationRequest(BuildCondition.ForceBuild, request.Source, request.UserName) : request;
            this.lastIntegration = lastIntegration;
            if ((lastIntegration.Status == IntegrationStatus.Exception) ||
                (lastIntegration.Status == IntegrationStatus.Failure))
            {
                failureUsers = lastIntegration.FailureUsers;       // Inherit the previous build's failureUser list if it failed.
            }
            buildProgressInformation = new BuildProgressInformation(artifactDirectory, projectName);

            this.label = this.LastIntegration.Label;
        }
Exemple #9
0
        /// <summary>
        /// Initializes a new instance of the <see cref="FtpLib" /> class.	
        /// </summary>
        /// <param name="callingTask">The calling task.</param>
        /// <param name="buildProgressInformation">The build progress information.</param>
        /// <remarks></remarks>
        public FtpLib(Tasks.TaskBase callingTask, BuildProgressInformation buildProgressInformation)
        {
            this.callingTask = callingTask;
            bpi = buildProgressInformation;

            this.ftpServer = new EnterpriseDT.Net.Ftp.FTPConnection();

            this.ftpServer.ReplyReceived += HandleMessages;

            this.ftpServer.CommandSent += HandleMessages;

            this.ftpServer.Downloaded += new EnterpriseDT.Net.Ftp.FTPFileTransferEventHandler(FtpServer_Downloaded);

            this.ftpServer.Uploaded += new EnterpriseDT.Net.Ftp.FTPFileTransferEventHandler(FtpServer_Uploaded);

        }
Exemple #10
0
        protected override bool Execute(IIntegrationResult result)
        {
            SetDefaultEnvironmentVariable();
            BuildProgressInformation buildProgressInformation = result.BuildProgressInformation;

            buildProgressInformation.SignalStartRunTask($"Executing TqRsync");

            ProcessInfo processInfo = this.CreateProcessInfo(result);

            result.AddTaskResult(processInfo.FileName + " " + processInfo.Arguments);

            ProcessResult run = base.TryToRun(processInfo, result);

            result.AddTaskResult(new ProcessTaskResult(run, true));
            if (run.TimedOut)
            {
                result.AddTaskResult(BaseExecutableTask.MakeTimeoutBuildResult(processInfo));
            }
            return(run.Succeeded);
        }
        /// <summary>
        /// Tries to run.
        /// </summary>
        /// <param name="info">The info.</param>
        /// <param name="result">The result.</param>
        /// <returns></returns>
        /// <remarks></remarks>
        protected ProcessResult TryToRun(ProcessInfo info, IIntegrationResult result)
        {
            buildProgressInformation = result.BuildProgressInformation;

            try
            {
                // enable Stdout monitoring
                executor.ProcessOutput += ProcessExecutor_ProcessOutput;

                return(executor.Execute(info));
            }
            catch (IOException e)
            {
                throw new BuilderException(
                          this,
                          string.Format(System.Globalization.CultureInfo.CurrentCulture, "Unable to execute: {0} {1}\n{2}", info.FileName, info.PublicArguments, e), e);
            }
            finally
            {
                // remove Stdout monitoring
                executor.ProcessOutput -= ProcessExecutor_ProcessOutput;
            }
        }