2 questions about Automation Build / Build Types.

Hi folks,

these are very blond questions - i'm trying to figure out what this Build Automation stuff is in TFS.

1) Are there any url links to that explain what this is and how to get started with it
2) How does Build Types differ from Web Deployment projects Basically, i have some class libraries, a web project and some test cases (unit tests and later on some web tests). I'm guessing the build automation that comes with TFS is used to build my solution, test cases and code coverage and then deploy the website to the iis machine

thanks in advance to any help. :)




Answer this question

2 questions about Automation Build / Build Types.

  • Ayala24

    Hi Aaron - I would be forever in your debt if you could post a few blogs about the various wishes i requested (above). I understand that i have been greedy and asked for a few things but anything would be appreciated most graciously - both for myself and the community.

    good work TFS team :)

    * Pure Krome proudly wares his Dev'Garten T-Shirt from this years Australian Tech-Ed :)



  • SunFish7

    The Build Automation in TFS is called "Team Build", it could best be described as a scaffold that sits on top of MSBuild and integrates your build process with TFS.

    You should familiarise yourself with MSBuild first, and then look into Team Build. There are a number of really good blogs on blogs.msdn.com about Team Build, and Aaron's is one of the best:

    http://blogs.msdn.com/aaronhallberg/

    A Build Type is an MSBuild file that describes what TFS should build and influences how it works. In the simplest scenario you can create a new Build Type, tell it the Solution you want built, and then it will do the rest, you can also tell it which tests should be run as part of your build.

    To my knowledge it won't automatically publish the website to an IIS machine, but you can add custom tasks into the process to perform specific tasks.


  • glavian

    Thanks william and aaron for the prompt replies. :)

        I've had a look at both aaron's blog and the link aaron suggested but i'm still stuck. Firstly Aaron, your blog seems to be aimed at people who already know what they are doing or have something running (re: tem builds / msbuild). I'm wondering how many people out there have just started using TFS and have never done something like CI, nightly builds, etc. Sounds scary, but i'm sure there's a fair number out there who are getting intimidated by all these new things which we understand in theory, we agree with in theory and desperatly want to impliment but are stuck at the initial step(s).

        Then again, maybe that's just me / our small-medium sized company :)

        Traditionally i've noticed lots of people have been doing the following (due to lack of implimentation knowledge imo).
    a) Solution consisting of a class library, business layer, data layer, aps.net web site (not a web application).
    b) build all projects and when happy/compiles, PUBLISH the web site to either the staging or production servers.

        So i suppose what i would love (and would hope the community would love) to see is a primer/tutorial about 'setting up a web site in TFS to be deployed to staging / production servers'.

        That's a big ask i know but i think it would be benefitial to many people. I know William suggested i familiarise myself with MSBuild. I checked it out on 'Channel 9' and the sample tutorials are still intensive. I have a feeling that, even though this is a complex topic, it can still be described in a less complex way.

        Show how a simple n-tier Hello World web site can have a team build type that can build and deploy to either staging or production and include the correct web.config also.

        /wrists.



  • Quimbo

    Aw, shucks - thanks for the plug William!

    Pure Krome - also check out the following forum thread addressing a similar question: http://forums.microsoft.com/MSDN/ShowPost.aspx PostID=726371&SiteID=1.

    -Aaron



  • Farhan H Soomro

    Thanks for your feedback! We are certainly aware that website development is a big pain point with Team Build in this version, and will definitely take your suggestions into consideration for future releases.

    In the meantime, I'll see what I can do to get some blog posts together on "getting started with Team Build" - I think you are correct that this would be a valuable resource.

    -Aaron



  • Suresh S

    Aaron,

    I should probably just set your blog as my home page with the amount I'm referencing it at the moment!

    William


  • 2 questions about Automation Build / Build Types.