buildcontinuous-integrationcruisecontrol.netcontinuous-deploymentcruisecontrol

CruiseControl Next Build Time: Retrieve/Display


I am looking for a way to retrieve the value of the next build date/time in CruiseControl. This value is displayed in both the CCTray app as well as the CC Dashboard/Farm Report (../ccnet/ViewFarmReport.aspx), so it must be stored somewhere on the build machine or in the CruiseControl local memory (or even a listener file somewhere). Any ideas?


Solution

  • CCTray gets the information by querying the CruiseControl-server. Information about the status of the projects can be read from the XML returned from XmlStatusReport.aspx.

    For example, the response from http://buildserver/ccnet/X/Y/XmlStatusReport.aspx is something like:

    <Projects CCType="CCNet">
        <Project name="MyProject"
                 category="MyCategory"
                 activity="Sleeping"
                 lastBuildStatus="Success"
                 lastBuildLabel="42"
                 lastBuildTime="2017-02-21T15:51:12.0880951+01:00"
                 nextBuildTime="2017-02-21T20:10:43.3853446+01:00"
          ...>
        </Project>
    </Projects>
    

    Which tells us the nextBuildTime of the project MyProject. You can browse the source-code for CruiseControl.Net for more info.