Build Automation for Delphi + Oracle

In my work, we are now looking for an automatic assembly tool. Honestly, we did a bit of googled work, but there are so many possibilities, we are not sure which tool is the best option, to be honest.

We are not even sure that there is one that meets our needs. It should have as many features as possible from the following functions:

  • Integration with Subversion, that is, it should be able to do both updates and commits.
  • Diff tool or the ability to integrate with one and the ability to automatically merge files (well, at least not problematic).
  • Delphi build automation using the command line compiler.
  • Integration with Oracle, which means the ability to run SQL scripts and compile PL / SQL packages, functions, etc.
  • Sending emails with build status (I think that's all they have).

Additional features will be appreciated, but they are not needed at this time. Everything in the line of getting at least points 1 and 2 would be great.

If someone can point us to a specific tool, we will be very grateful.

Thanks in advance and best wishes.

+4
source share
6 answers

For my Delphi projects, I used FinalBuilder (the Delphi application itself) back. I was always very pleased with the product, and it worked very well.

At the same time, they also launched the version of Server for assembly, so you can configure a complete assembly server and create your code there.

Visual Build was another worthy rival in those days - the two functions almost coincide, but the โ€œfeelโ€ from the application, ease of use, was with Finalbuilder, in my personal opinion.

I'm not sure if any of them have direct and specific support for Oracle, but at least Finalbuilder can run anything that can be run from the command line, so this should give you many options. >

+9
source

I used CruiseControl.NET as the continuous integration server for our Delphi builds, which blends perfectly with NAnt as the build scripting language.

Forgetting CC.NET, just using NAnt will provide most / everything you need, I think.

Combined with the optional NAnt-Contrib advanced features library, I implemented everything you mentioned, with the exception of Oracle integration. However, you can easily call command line elements from NAnt scripts or write your own NAnt tasks using any .NET language.

NAnt has tasks to integrate with Subversion, or you can simply invoke the svn command-line client.

I called BeyondCompare as a diff tool from my NAnt scripts, used NAnt to send custom HTML emails and run the Installshield assembly, and also obviously ran the Delphi compiler and commmand resource compiler.

NAnt is free and open source, worth checking out.

+4
source

Apache Ant is open source and contains many tasks out of the box , as well as a very full-featured scripting and dependency management environment.

Also available: zip / unzip, tar / untar, xmlvalidate, xslt, ftp, telnet, scp, sshexec, cab, ...

+3
source

Also check out the Automated Build Studio from AutomatedQA, it has many features that you request.

+3
source

We use FinalBuilder to handle requirements 1, 3, 4, and 5, and Beyond Compare to handle requirement 2, and were very pleased with both of these tools.

+3
source

I am surprised that no one mentioned Hudson . Most build tools seem to target a specific language or platform. Hudson takes a different approach. It provides a plugin , so you can create a build server to suit your needs. The project itself is written in Java, but is completely autonomous (except that it depends on the JRE, of course). It uses its own embedded web server to provide a user interface.

Embarcadero uses Hudson extensively and there are some great articles to get started.

And if you need commercial support, the original author started a company that provides a custom version, as well as technical support.

+2
source

Source: https://habr.com/ru/post/1302282/


All Articles