The recording of our April 7th webinar, Getting Started with TeamCity, is now available on JetBrains YouTube Channel.
Learn how to get started with TeamCity for implementing continuous integration with Wes McClure of Full City Technology Co. In addition to the video there’s a wealth of information in the Q&As section below.
Select questions and answers from our webinar:
Are build configurations deactivateable/activateable?
You can pause / unpause build configurations in TeamCity
Something similar to Hudson Tray Tracker for Jenkins?
TeamCity has Windows Tray Notifier which serves similar purpose.
How would you roll back a deploy that failed or had issues?
If your build scripts handle rollback gracefully, it’s not a problem. You can just promote some of the previous builds to Deliver configuration.
How would you handle code signing? Configure it in Visual Studio…or make it a build only process?
If you need code signing – you should do that in build scripts, TeamCity itself does not handle it.
How easy is it to switch between versions of Java between build projects or builds, and also, different versions of Maven?
TeamCity build agent detects installed Java automatically and reports it to the server. Then in TeamCity web interface you can choose specific version of Java available on the agent. There is always <Custom> option allowing to choose some custom Java. TeamCity also comes with a few versions of Maven out of the box – Maven 2, 3 and 3.1, so there is no need to install them on agents. Custom Maven installations are supported too.
The agent install is a manual process on the backend?
Agent should be installed manually and authorized to run builds. Agent upgrades, distribution of plugins among agents are handled automatically by TeamCity itself.
How to get build configurations/steps to run in parallel?
Build configurations can run in parallel on different agents, build steps can be executed sequentially only.
How can I deploy result artifact to some Application server? Maybe run some script on the test server or just copy artifact there?
It depends on the Application server itself. Some application servers provide tools for deployment, or support REST API. TeamCity can handle different ways.
How is using Promote different than running the Deliver build manually?
Promote ensures that exactly the same build will be used by Deliver. If you run Deliver itself, it can rebuild Promote because new changes could be detected while build was in queue. You can’t see it in the demo project but this happens all the time in real life.
So if I had one more step (build config) after Deliver, would promote be able to trigger Deliver and the step after it as well?
If you promote to this configuration – yes. Or you can promote to Deliver first, and then promote build in Deliver to the next configuration.
Is promote different from running a custom build from the Build Chains graph?
No, it’s the same, just simpler, because you don’t have to choose correct dependencies and revisions yourself, TeamCity will do it for you.
Can you do a checkout in a specific folder on the agent?
Yes, you can, although in an ideal world build should not depend on specific paths on disk. Also in case of specific checkout directory TeamCity won’t be able to reuse this directory among other build configurations with the same settings thus reducing the disk space requirements.
Can I ask you to review the differences, not just the advantages, if using TeamCity over Jenkins?
To review differences one should be expert in both products. We’re experts in TeamCity, but not in Jenkins. And as such our comparison will always be biased.
Can you set email notifications about broken build?
Yes of course, email, jabber, or notification in IDE are all supported.
Can you display some custom report? e.g. some xml transformed to html? (for example code metrics saved to xml and transformed to report via xslt)
Custom reports can be easily integrated into the TeamCity web interface, read more.
Best practice suggestions about upgrading to a new major version? A different upgrade testing environment prior to upgrading your main server, etc?
If it is critical for you to reduce downtime, you can install one more server with a backup from your current production server and upgrade it first. Then check how critical builds work. You can use evaluation license for this server. See this page for more.
About artifacts, are can they point a file on the agent?
You can publish any file produced by a build as artifact.
About the Presenter:
Wes McClure is passionate about helping others achieve remarkable results with technology. Wes launched Full City Tech Co to leverage his expertise to help companies rapidly deliver high quality software to delight customers. Quality is achieved through collaborative practices like Continuous Integration. Wes has a strong background in using Continuous Integration with TeamCity to bring quality to the table. You can reach him by email.