views:

1236

answers:

3

We got a TeamCity server which produces nightly deployable builds. We want our beta tester to have access these nightly builds.

What are the best practices to do this? TeamCity Server is not public, it is in our office, so I assume best approach would be pushing artifacts via FTP or something like that.

Also I have no clue how to trigger a script when an artifact created successfully. Does TeamCity provide a way to do that?

+3  A: 

I suggest you start looking at something like (n)Ant to handle your build process. That way you can handle the entire "build artifacts" -> "publish artifacts" chain in an automated manner. These tools are dependency based, so the artifacts would only be published if the build succeeded.

MPritch
A: 

Read the following help page from the documentation. It shows how you send commands from your build script to tell teamCity to publish the artifacts to a given path.

redsquare
I don't understand this one. The linked help page tells you how to publish artifacts during build, but you can only specify the path _from_ which the artifacts are being published, not the target path. I'm looking for similar things, so I'm really interested in the solution :)
OregonGhost
+2  A: 

I don't know of a way to trigger a script, but I wouldn't worry about that. You can retrieve artifacts via a URL. Depending on what makes sense for your project, you could have a script set up on a scheduler (cron or Windows Scheduling) that pulls the artifact and sends it to the FTP site for the Beta testers. You can configure it to pull only the latest successful artifact. If you set up the naming right, if the build fails they beta testers won't notice because the new build number just won't be there, no bad builds would be pushed to them.

Yishai