0

I have this project structure:

    main -- main.csproj

    main/subproject1 --- main.subproject1.csproj
    main/subproject1/view/ --- main.subproject1.view.csproj
    main/subproject1/business/ --- main.subproject1.business.csproj
    main/subproject1/metadata/ --- main.subproject1.metadata.csproj
    main/subproject1/facade/ --- main.subproject1.facade.csproj
    main/subproject1/data/ --- main.subproject1.data.csproj

    main/subproject2
    main/subproject2/view/

...

so, I want to build/compile only the specific .csproj project when there is some modification over its files on my SVN repository "trunk". I'm trying to use MsBuild + ModificationReader but I'm not sure how to modification reader works (the documentantion is very poor)

Do you guys have any idea how to do this?

Felippe Duarte
  • 14,901
  • 2
  • 25
  • 29
  • Just want to know whether there is any dependency between these projects. If it had any dependency then i think you need to build the whole project when there is a change in one project.. – Mahesh KP Aug 07 '12 at 03:45
  • you are right, project in same solution have dependencies, it is not a good idea to build compile one by one. If there are no dependency make different solution, if there are dependency compile whole solution – Hassan Boutougha Aug 07 '12 at 18:47
  • There is some dependency among this projects, but there is a specific build order, so, if more than one project have any modification, it will build using the predefined order. – Felippe Duarte Aug 07 '12 at 20:32
  • You cannot guarantee the order that cruisecontrol.net picks up modifications – Simon Laing Aug 08 '12 at 05:44

1 Answers1

0

Have a look at the filteredSourceControlProvider and inclusionFilters

http://www.cruisecontrolnet.org/projects/ccnet/wiki/Filtered

If each csproj has a ccnet project then each can be triggered for their own changes

Simon Laing
  • 1,194
  • 7
  • 18
  • Unfortunately, I have only 1 ccnet project for each "subproject". I don't think this solution could be applied here :( – Felippe Duarte Aug 07 '12 at 19:50
  • If that's the case then just add the filteredSourceControlProvider and specify the paths to monitor. The build will only be forced if there are modifications in those paths. – Simon Laing Aug 08 '12 at 05:36
  • As @Hassan said above, because there are dependencies between your projects its best to get Msbuild to build the solution instead of each project independently. This will solve any of the dependency issues, ie order of build. – Simon Laing Aug 08 '12 at 05:39