Thursday, 8. January 2009
Jan 08
In the last post I showed how easy it is to install Subversion and how it can be integrated into Visual Studio 2008 via AnkhSVN. This time we will set up a Continuous Integration server and configure a build runner.
As a Continuous Integration Server I recommend JetBrains TeamCity. You can download the free professional edition at http://www.jetbrains.com/teamcity/.
Installing TeamCity
During the installation process TeamCity wants to get a port number. Be sure that there will be no conflict with other web applications on your server. I chose port 8085 – and my first build agent got this default settings:
In the next step you have to sign the License Agreement and to create an administrator account:
Creating a Project
Now you can create your project and set up the build configuration:
Setting up a build runner
For setting up specific build runners see the TeamCity documentation. For now I will use the “sln2008”-Build runner (the Runner for Microsoft Visual Studio 2008 solution files).
Now add a build trigger. Whenever someone performs a Commit on the Subversion repository the server has to start a build.

Testing the build runner
After this step we have two options to start a build. The first one is by clicking the “Run”-button on the project website and the second is doing a checkin:
After performing the Commit the pending build appears on the project website:
After 60 seconds (see my configuration above) the build is starting. After the build is complete one can see the results in different ways. The simplest is via the project website:
Of cause TeamCity gives you a lot of different notification and monitoring possibilities including mail, RSS feeds or System Tray Notifications.
Next time I will show how we can integrate UnitTesting in our automated build scenario.
Tags:
Continuous Integration,
F#,
JetBrains,
subversion,
TeamCity,
Visual Studio 2008
Jan 08
In this post series I will show how one can easily set up a Continuous Integration scenario for F# or C# projects with completely free products.
“Continuous Integration is a software development practice where members of a team integrate their work frequently, usually each person integrates at least daily – leading to multiple integrations per day. Each integration is verified by an automated build (including test) to detect integration errors as quickly as possible.”
[Martin Fowler]
The first step for Continuous Integration is to set up a Source Control environment. For many good reasons I choose Subversion – some of them are:
- Atomic commits
- Rename/Move/Copy actions preserve the revision history
- Directories are versioned
- Multiple repository access protocols including HTTP and HTTPS
- There is a nice Visual Studio integration (see below)
- Last but not least: it is completely free 🙂
Source code version control with Subversion
All you need for setting up a complete Subversion environment is to download and install VisualSVN Server from http://www.visualsvn.com/.
“VisualSVN Server is a package that contains everything you need to install, configure and manage Subversion server for your team on Windows platform. It includes Subversion, Apache and a management console.”
[product homepage]
Now you can create user accounts and a repository ”CITest” in the VisualSVN Server management console.


Subversion integration in Visual Studio 2008
Download and install AnkhSVN 2.0.x from http://ankhsvn.open.collab.net/.
“AnkhSVN is a Subversion SourceControl Provider for Visual Studio. The software allows you to perform the most common version control operations directly from inside the Microsoft Visual Studio IDE. With AnkhSVN you no longer need to leave your IDE to perform tasks like viewing the status of your source code, updating your Subversion working copy and committing changes. You can even browse your repository and you can plug-in your favorite diff tool.”
[product homepage]
Now you can add your C#/F#-solution to your CITest-repository:
- Open the solution in Visual Studio 2008
- Open “View/Repository Explorer” and add your repository to AnkhSVN
- You can copy the URL from the VisualSVN Server management console (In my case this is https://omega:8443/svn/CITest/)
- You also have to give AnkhSVN your Subversion login
- Now click the right mouse button on your solution in the Solution Explorer and choose “Add Solution to Subversion”


Now we can modify our solution and commit our changes via “Commit solution changes” in the Solution Explorer:

We can easily control our changes via AnkhSVN’s “Repository Explorer” and “History Viewer” in Visual Studio 2008:

If we do any changes in the Program.fs file, we can see a diff via the “Show changes” functionality:

If you don’t like the default Diff tool you might try WinMerge.
Next time I will show how to set up a Continuous Integration server.
Tags:
AnkhSVN,
Continuous Integration,
F#,
Source Control,
subversion,
Visual Studio 2008,
VisualSVN,
WinMerge
Sunday, 5. October 2008
Oct 05
Chris Pattinson (CodeGear QA Manager for RAD Studio products) weist in seinem Blog darauf hin, dass eine geschlossene Beta-Phase für Delphi Prism gestartet wurde. Wer also mal die neue Delphi-Umgebung für .NET testen möchte, kann sich aber bei Embarcadero dafür bewerben.
Nachtrag:
Weitere Details gibt es z.B. bei Robert Wachtel.
Tags:
CodeGear,
Delphi Prism,
Delphi.NET,
Pascal
Tuesday, 30. September 2008
Sep 30
Microsoft hat gestern eine Pressemitteilung zum Visual Studio 2010 (Codename: Rosario) und dem .NET Framework 4.0 heraus gegeben. Einer der wesentlichen Punkte ist demnach den “Application development life cycle” (ALM) noch besser zu unterstützen. Es werden dabei wohl einige neue Modeling Tools zur Verfügung stehen, die sowohl Unified Modeling Language (UML) als auch Domain Specific Languages (DSL) unterstützen werden. Außerdem hat Microsoft stark in das oft kritisierte MSTest-Framework investiert und neue Collaboration-Features in den Team Foundation Server eingebaut.
Ein weiterer zahlreich geforderter Punkt ist, dass die Database Edition nun endlich mit der Developer Edition zusammengelegt wird.
In der Pressemitteilung wurde übrigens auch kurz eine Unterstützung für Cloud Computing angekündigt. 😉
Weitere Informationen und erste Screenshots gibt es auf der Webseite zu VS 2010. Zusätzlich werden diese Woche ständig neue “Visual Studio 2010”-Videos auf Channel 9 veröffentlicht.
Tags:
.NET Framework 4.0,
ALM,
Application development life cycle,
Cloud computing,
Rosario,
UML,
Visual Studio 2010
Saturday, 1. March 2008
Mar 01
Wie bereits vor einiger Zeit im Blog berichtet, habe ich für unseren internen Produktionsablauf ein Tool geschrieben, das es ermöglicht eine Quellcodeversionsverwaltung (z.B. VSS, SVN oder Team Foundation Server) direkt in Dynamics NAV zu integrieren. Jetzt habe ich mir mal die Mühe gemacht, die wichtigsten Funktionen in einem kleinen Screencast zu dokumentieren. (Dies ist jedoch erstmal nur eine Vorabversion des Videos.)
Das Schöne an diesem Tool ist, dass man aus beiden Blickrichtungen alle nötigen Informationen zu einer Version bekommt. Ich sehe also an der Datei die Änderungshistorie mit den entsprechenden ChangeRequests oder Ticketnummern und kann auch rückwärts an einer Aufgabe sehen, welche Änderungen dafür konkret am Quellcode gemacht wurden und von wem.
Für Visual Studio-Nutzer ist das natürlich nichts neues, aber gerade im ERP-Bereich wird oft (mangels fehlender Tools) auf eine Quellcodeverwaltung verzichtet.
Tags:
dynamics-nav,
Navision,
SCMSHelper,
subversion,
svn,
Team Foundation Server,
TFS,
vss
Sunday, 10. February 2008
Feb 10
Am 15.02.2008 findet von 13 – 17 Uhr in der Universität Leipzig ein kostenloser Workshop von Jens Korte zum Vorgehensmodell SCRUM in Verbindung mit dem Team Foundation Server statt.
Weitere Informationen im Blog von Torsten Weber.
Tags:
.NET User Group Leipzig,
Agile Softwareentwicklung,
SCRUM,
Team Foundation Server,
Workshop
Tuesday, 5. February 2008
Feb 05
Am 21.1. wurde eine neue Version von Microsofts Sure Step Methodology veröffentlicht. Unter anderem beinhaltet das Release auch Übersetzungen der Templates ins Deutsche – allerdings muss man die Links im Text in dieser Version leider noch selber umbiegen.
SureStep bietet umfangreiche Dokumentenvorlagen für nahezu jede Phase eines Projektes und über den mitgelieferten Editor kann man die Vorlagen noch an die eigenen Prozesse anpassen.
Download Sure Step Methodology [PartnerSource]
Tags:
Microsoft Dynamics NAV,
Sure Step Methodology
Friday, 7. December 2007
Dec 07
Ich bin schon öfters auf das Problem gestoßen, dass ich transparente PNGs verwendet habe, diese aber leider nicht korrekt im IE 6 angezeigt werden. 🙁 Also habe ich mich mal auf die Suche nach einer Lösung gemacht und bin auch fündig geworden.
Und zwar muss man als erstes einen CSS Hack benutzen, damit nur der Internet Explorer 6 diesen Teil des Stylesheets sieht. Danach benutzt man noch einen Filter welcher auch nur vom IE unterstützt wird und schon funktioniert die Transparenz wunderbar. 🙂
(weiterlesen…)
Tags:
Internet Explorer 6,
PNG,
Transparenz
Saturday, 1. December 2007
Dec 01
Kurz nachdem ich mir Visual Studio 2008 installiert habe, wollte ich ein kleineres Datenbank-Projekt komplett auf LINQ2SQL umstellen. Insgesamt muss ich sagen, dass dies erstaunlich leicht von der Hand ging und der Quellcode nun wesentlich schöner und aufgeräumter aussieht.
Allerdings habe ich immer noch zwei riesige Probleme:
1. Die VSS-Integration in Visual Studio 2008 buggt
Leider ist das Update 1 für VisualSourceSafe 2005 nicht rechtzeitig zum Release von Visual Studio 2008 fertig geworden. Es gibt zwar eine CTP, aber nur für die englische Version (die ich natürlich gerade nicht habe). Da ich aber vermeiden wollte unser gesamtes VSS in eine instabile Lage zu versetzen, habe ich notgedrungen die SourceSafeIntegration meines Projektes abgeschaltet. Jetzt kopiere ich mir Sicherungen – was für ein Rückschlag!
2. ReSharper 3.x kann mit C# 3.0 nichts anfangen
Offenbar ist auch JetBrains vom Release von VS2008 etwas überrollt wurden. Mein Lieblingsplugin ReSharper versteht leider kein C# 3.0 und insbesondere auch kein LINQ. Also markiert er den gesamten LINQ-Code als fehlerhaft und blockiert auch das IntelliSense. Auch dies ist ein äußerst unbefriedigender Zustand – zumal C# 3.0 Support offenbar erst für ReSharper 4.0 geplant ist. Momentan habe ich jedoch die Hoffnung, dass kurzfristig wenigstens ein paar Features eingebaut werden, die selektiv für einige Files ReSharper abschalten können.
Nachtrag: Ilya Ryzhenkov, der Product Manager für ReSharper schreibt in seinem Blog, dass ReSharper 4.0 ab Januar 2008 im EAP-Program downloadbar sein soll.
Nachtrag 2: Visual SourceSafe 2005 Update 1 ist nun auch verfügbar, so dass ich jetzt wieder ordentlich einchecken kann.
Nachtrag 3: Das Early Access Programm (EAP) für ReSharper 4.0 wurde leider auf “bis spätestens zum 15. Februar” verschoben.
Tags:
C# 3.0,
LINQ,
resharper,
Resharper 4.0,
Visual Studio 2008
Friday, 9. November 2007
Nov 09
Vor einiger Zeit habe ich einen Testbericht zu ReSharper verfasst und einige kleinere Bugs bemängelt. JetBrains gibt jedoch öffentlichen Zugang zu seinen Nightly Builds bzw. zum Early Access Program. Dort gibt es fast jeden Tag einen frischen Build aus einer der folgenden Kategorien: Not tested, Works here, Stable, Not recommended
Neben jeden Build ist auch immer ein Verweis auf die im Build geschlossenen Tickets.
Ich habe jetzt die letzte Stable-Version installiert und die bemängelten Bugs sind offenbar behoben. Es gibt jetzt sogar eine Anzeige für den globalen Projektstatus.
Tags:
daily build,
nightly build,
resharper,
Visual Studio