Url to get latest build # of CC.NET project?

I have CruiseControl.NET version 1.4.4.83, and I am wondering if there it provides a url where the only control is the lastest build # of a project, so that I can access that data using curl or something?

Something like http://buildserver/ccnet/server/VMSDEV2/project/MyProject/LatestBuild.aspx

All that it would have is:

0.0.0.31

Update:

Fixed the IPlugin issue with an attribute for the class:

[Exortech.NetReflector.ReflectorType("latestBuildNumberProjectPlugin")]
public class LatestBuildNumberProjectPlugin : ICruiseAction, IPlugin
{
    public static readonly string ACTION_NAME;
    private readonly IFarmService farmService;
    private readonly ILinkFactory linkFactory;

    static LatestBuildNumberProjectPlugin()
    {
        ACTION_NAME = "LatestBuildNumber";
    }

    public LatestBuildNumberProjectPlugin(IFarmService farmService, ILinkFactory linkFactory)
    {
        this.farmService = farmService;
        this.linkFactory = linkFactory;
    }

    public IResponse Execute(ICruiseRequest cruiseRequest)
    {
        IProjectSpecifier projectSpecifier = cruiseRequest.ProjectSpecifier;
        IBuildSpecifier[] mostRecentBuildSpecifiers = this.farmService.GetMostRecentBuildSpecifiers(projectSpecifier, 1);
        if (mostRecentBuildSpecifiers.Length == 1)
        {
            var build = mostRecentBuildSpecifiers[0].BuildName;
            var response = new HtmlFragmentResponse(build);
            return response;
        }

        return new HtmlFragmentResponse("There are no complete builds for this project");
    }

    public INamedAction[] NamedActions
    {
        get
        {
            return new INamedAction[] { new ImmutableNamedAction(ACTION_NAME, this) };
        }
    }

    public string LinkDescription
    {
        get { return "Latest Build Number"; }
    }
}

And I've named my assembly:

 ccnet.latestBuildNumberProjectPlugin.plugin.dll

And in the dashboard.config file, I've added the plugin ref:

    <projectPlugins>
        ...
        <latestBuildReportProjectPlugin />
        ...
    </projectPlugins>

But apparently, var build = mostRecentBuildSpecifiers[0].BuildName; is not what I am looking for.

Answers


I believe it is possible to create packages to extend the CC.NET Dashboard (i.e. the website) and completely change the interface.

To help you get started, check the CC.NET documentation.

A few links that could be of help. - Developing Web Dashboard Plugins - Building Packages - Configuring the Web Dashboard

HTH,


The link to the latest build is:

http://myserver.com/cc_net/server/local/project/myproject/ViewLatestBuildReport.aspx

it will expand in :

http://myserver.com/cc_net/server/local/project/myproject/build/log20100618165244Lbuild.45.xml/ViewBuildReport.aspx

Inside the html page, you have your build number.


Need Your Help

Send data to Frontend(Angular JS) from backend (Java/Jersey/REST)

javascript java angularjs rest jersey

In my application, I want to send data from backend which is developed in Java to the Frontend which is developed in AngularJS.

SQL 2008r2 ODBC issue

excel sql-server-2008-r2

I have a MS 2008R2 SQL server running on a Windows 2008R2 server both virtual servers under Hyper V There are 5 main databases which are all linked to a ERP program.