2009-07-08 5 views
10

Was ist die bevorzugte Methode zur Automatisierung von Build/Test/ci/doc-gen/... für ein Haskell-Projekt?Haskell Build Automation

Momentan benutze ich Cabal für die "finalen" Build- und Bash-Skripte, um Tests/Checkins/doc-gen/.. zu automatisieren, aber ich möchte die Bash-Skripte ersetzen.

Ich habe Nemesis (Rake für Haskell nach dem Autor) installiert, aber ich bin mir noch nicht sicher, es ist das richtige Werkzeug.

Nur um zu klären: Ich bin der Suche nach etwas, das ich benutzerdefinierte Befehle mit benutzerdefinierten Argumente hinzufügen kann (ist es möglich, mit Cabal?), Dh

foo Testeinheit

foo Test db

foo Test alle

foo db wandern

...

Antwort

6

könnte ich altmodisch sein, aber ich meine .cabal Datei und darcs Repository einfach einzurichten und ein Makefile hinzufügen, dass mit den Abhängigkeiten von seiner Standard-Aktion versucht, mein Paket zu bauen, führt alle Tests, Kontrollen im aktuellen Build und feuert cabal haddock ab, um meine Dokumentation zu generieren.

Dann öffne ich einfach vim öffnen und Anruf auf make bei Bedarf zu halten.

7

Cabal ist die bevorzugte Methode zum Erstellen/Testen/Generieren von Dokumenten für Haskell-Projekte. ~ 1500 Projekte werden auf diese Weise auf Hackage gebaut:

Um Dokumentation für Ihr Projekt zu erstellen:

  • Kabale Schellfisch

Um Ihr Projekt zu erstellen:

  • Kabale installieren

Um Ihr Projekt zu reinigen:

  • Kabale sauber
+1

Es klang wie er nach etwas suchen, das für ihn lief Kabale (zumindest das ist, was ich von der kontinuierlichen Integration Tag bekam). –

+0

Ich benutze 'cabal build' scheint ein bisschen schneller zu sein. Sie müssen nicht jedes Mal neu installieren. –