Black Tambourine (Posts tagged Team City)

1.5M ratings
277k ratings

See, that’s what the app is perfect for.

Sounds perfect Wahhhh, I don’t wanna

Branching, Versioning and Deployment of Sitecore

Here’s quick set of recommendations for setting up your deployment processes with Sitecore once a solution goes live into Production.

Versioning

For versioning I’d recommend the http://semver.org convention of MAJOR.MINOR.PATCH.BUILDNo-BranchName

e.g. 1.2.15.1102-hotfix

Source Control Branches

Branches in source control should be setup as follows:

Master: should be the current production code or code about to be deployed.

Hotfix: should be used for small fixes for production.

Release “A”: larger changes that require a longer period of development and testing.

Each branch is distinguished using a suffix and has it’s own Build Number. The exception is the Master branch, which has no suffix.

The Major.Minor.Patch number reflects which version of Production has been merged into that branch.

When a support/development branch is merged into Master (i.e. ready for Deployment to Production) the version number of Master is incremented (to reflect whether this is a major, minor, or patch change).

This all looks like this over the life of the solution:

image

Channels

Using Octopus Deploy we can create release Channels based on the version numbers suffix. Create a Channel and add a Version Rule. Set the “Tag” filter to be the name of the branch e.g. hotfix. For the Master branch set this value to ^$

Each Channel can have it’s own Lifecycle, so we could set it up so that only the Master branch can be deployed to Production, while others can only go to testing environments.

Sitecores Recommendations

Sitecore have some of their own best practices around deployment, which you can read about on the official Sitecore Helix best practices website: http://helix.sitecore.net/devops/deployment/strategy.html

Sitecore Deployment Versioning Source Control Branching devops Octopus Deploy Channels Team City Build Configuration

Installing Multiple Build Agents in Team City on One Server

The free version of Team City is currently allowing up to 3 build agents to be configured. In order to install multiple build agents on the same server you will need to follow these steps:

1) Click on the Agents menu option and click “Install Build Agents”.

2) Pick the MS Windows Installer, download it and run it.

3) Follow the prompts until you reach the “Configure Build Agent Properties” window; enter unique “name” and “ownPort” values.

4) Click “Save”.

5) Do not click Ok on the prompt that follows.

6) Go to the config directory for the new agent that was installed;
e.g. C:\agent2\launcher\conf\

7) Edit the “wrapper.conf” file, at the very bottom of it change the following config values to be unique for this agent:
- wrapper.ntservice.name
- wrapper.ntservice.displayname
- wrapper.ntservice.description

8) Return to the Agent installer and click Ok on the popup window.

9) Complete the install.

Repeat these steps to install additional Agents.

team city build agents multiple build agents