I am trying to set up a build definition in TFS 2013 which is triggered via CI watching a branches folder. It needs to determine which branches were involved in the checkin which triggered, then compile each and place in the drop folder.
UserStoryBranchesFolder
- US1(branch)
- US2(branch)
- US3(branch)
CI observes UserStoryBranchesFolder and is triggered by a checkin on US1,US2,or US3 (this is working).
Now it needs to determine which branch is associated with the checkin, TFS supports multiple branches in a checkin so this could be 1,2 or 3 effected branches. (not working)
What hasn't worked:
TFS 2013 utilizes the new workflow XAML so I don't think < projectsToBuild> tags are supported, maybe they are and I don't know how.
Wildcard configurations, attempted SourceSettings -> SourceControlFolder = UserStoryBranches/*/mySolution.sln
With the USBranches being dynamically created I attempted to add a DummySolution.sln inside UserStoryBranchesFolder and pointed SourceControlFolder at that, which matches and works correctly, but I don't know how to make that build process template search through the directory, make decisions, and then build.
If I can get programmatic access: what is the most recently modified time of all branches, build all branches with that as their timestamp.
End Goal(open to alternative solutions): I would like to cut user story branches at the start of each sprint and have them deploy to a single IIS site as 1 app per branch without changing anything in TFS or in RM(release management). I am good once the builds are in the drop folder, if there is an alternative way to accomplishing this I am very open.