Elton Stoneman

  Home  |   Contact  |   Syndication    |   Login
  120 Posts | 0 Stories | 3607 Comments | 0 Trackbacks

News

Archives

Post Categories


On my latest project we're using Perforce for source control and my first tasks have been to set up CruiseControl.Net for continuous integration, and define the branching strategy to use. I'm new to P4 and wanted to document the learning curve - the next few posts will cover what I've put in place.

Perforce Concepts

Being an SCM with all the usual features, Perforce naturally has a different set of terminology for all the usual concepts. The repository on the server is the depot and the local dev repository is a workspace. The workspace is also known as a client view, which has a mapping to the depot that looks like:

    //depot/ProjectX/... //a.developer/ProjectX/...

- meaning all files within the ProjectX node of the depot are mapped to the ProjectX node of a.developer's workspace.

Views are also used in branching and labelling, which I'll cover more in the branch strategy post.

CruiseControl Config

Perforce with CC is a well trodden path, but for reference the sourceControl project node is:

    <sourcecontrol type="p4">
        <view>//depot/ProjectX/MAIN/source/...</view>
        <client>BuildServer</client>
        <applyLabel>true</applyLabel>
        <autoGetSource>true</autoGetSource>
    </sourcecontrol>

The client node specifies the workspace to connect to, and the view specifies the exact mapping for the project. That view is used to monitor the folder for changes, and if you specify autoGetSource and applyLabel, they'll run over all the files in the view. This allows you to set up one workspace for the build server which has a view over the entire depot, and then specify different views for each build project.

There are various warnings saying that Perforce doesn't work with purely numeric labels, but in version 2007.3 that seems fine. With the standard iteration labeller for every successful build CC will create a label in Perforce and label every file in the specified view.

Perforce seems like a nice SCM, with excellent cross-platform support. The licensing model allows you to download and use it for free with up to 2 users and 5 workspaces: http://www.perforce.com/perforce/loadprog.html
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati
posted on Friday, April 04, 2008 8:31 AM

Feedback

# re: Using Perforce with CruiseControl.Net 5/29/2008 12:55 PM Tim
I too have recently been put on a project where P4 is the source control tool in place. The first task that I would like to complete is a continous integregation build process. I am really interested in reading more of your implementation notes. If you have any information that you are willing to share I would greatly appreciate it.
timothy_adams_gilbert@yahoo.com

# re: Using Perforce with CruiseControl.Net 5/29/2008 2:37 PM Elton
No problem Tim - I've put up a more detailed post here: http://geekswithblogs.net/EltonStoneman/archive/2008/05/29/sample-cruisecontrol-build-using-perforce.aspx

# re: Using Perforce with CruiseControl.Net 5/24/2010 6:31 AM neways56
I am interested very much in the subject matter of your blog.I like very much your way of presentation and got more useful information on this blog.Thanks a lot for sharing.Keep up the good works.

# re: Using Perforce with CruiseControl.Net 10/6/2010 7:33 AM blackhawk tactical
Hey this is very interesting, thanks for sharing...

# re: Using Perforce with CruiseControl.Net 11/3/2010 6:00 AM checkpoint firewall audit
I have a problem regarding this..I'm trying to configure CruiseControl.NET and have come across an issue with SourceSafe. When ccnet builds I am getting the error. Please help me out..

# re: Using Perforce with CruiseControl.Net 5/12/2011 7:32 AM online graduate programs
I use the 2007.3 version and your perforce can work well in this version. It's nice

# re: Using Perforce with CruiseControl.Net 6/4/2011 11:41 PM London Escorts
Incredible article, it makes a change when you find someone contributing to the net. We are an entertaining group In London that are willing to travel to you anywhere in the world! :-)
Indian escorts London </a

# re: Using Perforce with CruiseControl.Net 6/9/2011 12:10 PM anti rides visage
It appears like your site ate my first comment so I guess I'll just sum it up what I submitted and say, I'm thoroughly enjoying your blog. I as well am an aspiring blog writer but I'm still new to everything.

# re: Using Perforce with CruiseControl.Net 6/18/2011 9:33 AM freetress
hmmm pretty good post
really I like it very much please keep posting such kind of post I am much excited to see it
Thanks for sharing of your information
Thanks again


# re: Using Perforce with CruiseControl.Net 8/19/2011 12:02 PM Selena Gomez
I was just finding information for my assignment and by chance landed here. I feel lucky a bit to be here as I got a good information and material to stuff my research. A good
synthesis of related information made it a worth visiting page and that’s why I can see lots of good comments here.

# re: Using Perforce with CruiseControl.Net 8/19/2011 12:02 PM spiritualism
I was just finding information for my assignment and by chance landed here. I feel lucky a bit to be here as I got a good information and material to stuff my research

# re: Using Perforce with CruiseControl.Net 9/19/2011 3:24 PM food that burn belly fat
Thanks a lot

# re: Using Perforce with CruiseControl.Net 10/11/2011 3:38 PM SEO New York

Wow, what a blog! I mean, you just have so much guts to go ahead and tell it like it is. Youre what blogging needs, an open minded superhero who isnt afraid to tell it like it is. This is definitely something people need to be up on. Good luck in the futu

# re: Using Perforce with CruiseControl.Net 10/11/2011 3:39 PM SEO California
First time I have seen your blog and what a great post that was!Remember the saying “Genius is 99% perspiration and 1% inspiration”So once you have a great idea you have to work hard to turn it into a viable product that doesn’t just exist in your head.

# re: Using Perforce with CruiseControl.Net 10/23/2011 7:27 AM Alex
When I stumbled upon the concept of picking up women, I really had no idea where to begin. It took months and months of practice to learn exactly what to do and say to attract women. After a lot of trial and error, I finally figured out what women want.

# re: Using Perforce with CruiseControl.Net 11/11/2011 7:27 PM Cheap Web Design
I feel lucky a bit to be here as I got a good information and material to stuff my research chance landed here.

# re: Using Perforce with CruiseControl.Net 11/12/2011 5:15 PM twin size memory foam mattress
I'll just sum it up what I submitted and say, I'm thoroughly enjoying your blog. I as well am an aspiring blog writer but I'm still new to everything.

# re: Using Perforce with CruiseControl.Net 11/14/2011 5:36 AM Mail Forwarding
That view is used to monitor the folder for changes, and if you specify autoGetSource and applyLabel, they'll run over all the files in the view. This allows you to set up one workspace for the build server which has a view over the entire depot, and then specify different views for each build project.

# re: Using Perforce with CruiseControl.Net 11/19/2011 7:52 AM North Face Jackets For Women
North Face Jackets, both North Face Jackets For Women and North Face Jackets For men, are playing an important role in our fall, winter and spring life. They can be your daily necessities. They can also be a great gift to your families or friends to show your love. An awesome North Face Jackets as a birthday, Thanks Given Day, Christmas Day or eValentine's Day gift would surely make the receiver full of gratitude and love towards you.

# re: Using Perforce with CruiseControl.Net 12/18/2011 7:21 AM round
version 2007.3 that seems fine. With the standard iteration labeller for every successful build CC will create a label in Perforce and label every file in the specified view.

Post A Comment
Title:
Name:
Email:
Website:
Comment:
Verification: