21 Sep 2013

Replicity is a plugin which embeds nrepl into TeamCity. To install it, build it with mvn package, put the cljrepl.zip into <TEAMCITY_DATA_DIR>/plugins and restart the server. After restart nrepl will be avaiable at port 7888.

When server starts, plugin loads a file <TEAMCITY_DATA_DIR>/config/init.clj, so you can use it just like ~/.emacs.d/init.el for your editor, i.e. you can save your scripts and experiments there.

Plugin defines some commonly used beans in the namespace tc:

You can acquire any other TeamCity bean using Spring context tc/ctx, for instance

(.getBean tc/ctx jetbrains.buildServer.users.UserModel)

returns a bean with methods to find TeamCity users.

With repl you can explore new ideas and develop TeamCity plugins without any restarts of the server (ok, with much less number of restarts than required for traditional plugins).

clojure TeamCity