Game Development Reference
In-Depth Information
Another useful tag is <artifactcleanup> which will remove older entries that are
no longer valid from the server. Note that the <xmllogger> publisher must be
defined after any file merges [Rogers and Sutherland 09].
Email publishers support plain-text and HTML formats. It is highly recom-
mended to have at least one person on the team who will always get build result
emails. Before being able to submit emails, mailing host username and passwords
must be provided to CCNet. In this example, we set up the publisher to send
emails via Gmail. The “from” attribute is the email address that emails will be
sent from. You must specify mailing port “587” and set the “useSSL” attribute to
“true” before being able to use Gmail [Rogers 10].
The <users> block is a list of all the possible users that the email publisher can
send messages to. After specifying a name and email address, you can assign that
user a “group” category. Groups are the set of people that can be emailed depend-
ing on the type of notification they are interested in. Notifications can range from
“always,” which will email that group regardless of the build result, to “change,”
which will email that group only when the build has changed from a successful
build to a failed one and vice versa. You can add additional notification types by
using comma-separated values in the “notification” attribute inside the <group> ele-
ment. The <modifierNotificationTypes> block is a list of <notificationType>
elements. Each <notificationType> element is a build state for whom CCNet
should send messages.
Attachments can be appended to emails with the <attachments> tag. This is
useful for appending debug logs for when the project runs unit tests or is building
assets.
At this point you should have a project that can compile source and email
notifications. Team members can also get up-to-date status updates using CCTray
to notify and make requests about the project to be built. For reference, Listing 4.7
shows the complete sample project.
4.3.5 CCTray
CCTray can be installed through the CCNet Web Dashboard or from an installer
provided by the ThoughtWorks website. Adding the CCNet server is as simple as
going to the CCTray settings and adding the server IP address. It also supports
connecting to older versions of the CCNet server. Because you will have projects
that do entire builds or specific parts of the build pipeline, be sure that team
members only watch projects that are related to their discipline. This is done by
checking off which projects you want to watch during the connection setup.
CCTray can display balloon pop-ups when builds are finished. In addition to
giving the user a heads-up about new builds, the messages that it displays can be
changed. If, for example, there is a new build of a tool that everyone should get,
then CCTray can display that whenever that CCNet project finishes the new build.
Listing 4.8 shows a CCTray config file set-up to watch a level editor project.
Search WWH ::




Custom Search