all Technical posts

Automated builds for Azure Data Lake Analytics extensibility

Recently I have been working on an open-source project around Azure Data Lake Analytics. It will contain custom U-SQL components that you can use in your own projects and already contains a Xml Attribute Extractor.

In this brief article I'll discuss how you can use NuGet to allow you to perform automated builds for the Azure Data Lake Analytics extensibility.

To build my code I’m using because it builds & automatically packages it in one or more NuGet packages.

The only thing I needed to do was sign-up and point MyGet to my repository. Every time I push my code to GitHub it will automatically be built & re-packaged.

My Get -Build (1)

Unfortunately, the build service encountered some issues when it was building my code:

2015-11-06 02:14:23 [Information] Start building project D:temptmp9931srcCodit.Analytics.sln…

C:Program Files (x86)MSBuild14.0bin Microsoft.Common.CurrentVersion.targets(1819,5): warning MSB3245: Could not resolve this reference. Could not locate the assembly “Microsoft.Analytics.Interfaces”.

Check to make sure the assembly exists on disk. If this reference is required by your code, you may get compilation errors.

Obviously the server didn’t have the correct DLLs to build it, but first: how did I create my project?

With the Azure Data Lake Tools for Visual Studio you create a solution/project for U-SQL based on these templates:

Visual -Studio -Create -Project

For my custom extractor I have created a “Class Library (For U-SQL Application)” project with a corresponding Test-project. Once it’s created it automatically references the DLLs you need.

Visual -Studio -Project -References

The problem with these references are that they point to DLLs in the Visual Studio folder.

C:Program Files (x86)Microsoft Visual Studio 12.0Common7IDE PublicAssembliesMicrosoft.Analytics.Interfaces.dll

As the build server doesn’t have the tooling installed it can’t find them. Unfortunately there is no NuGet package for this, however this is something that is under review.

But don’t worry! I’ve wrapped all the DLLs in two NuGet packages so we can build all our stuff until there is an official NuGet package:

  • Install-Package TomKerkhove.Analytics.Extensibility – Contains all the DLLs for writing your own extensibility (NuGet page)

  • Install-Package TomKerkhove.Analytics.Extensibility.Testing – Contains the unit test DLL and installs the above package. (NuGet page)

By installing these packages you are overriding the existing DLLs & your build server is good to go!

Thanks for reading,


Subscribe to our RSS feed

Hi there,
how can we help?

Got a project in mind?

Connect with us

Let's talk

Let's talk

Thanks, we'll be in touch soon!

Call us

Thanks, we've sent the link to your inbox

Invalid email address


Your download should start shortly!

Stay in Touch - Subscribe to Our Newsletter

Keep up to date with industry trends, events and the latest customer stories

Invalid email address


Great you’re on the list!