Skip to main content

Gated Check-ins

Our development shop [gently ;-)] ostracizes the developer who "breaks the build" as a way to encourage quality. We also deliver awards for the group who breaks the build most infrequently. Unfortunately, the carrot and the stick treatment doesn't always work.

Completing the build locally is a good first step but obviously, it doesn't replicate the server CI process identically.

Brian Harry writes of an open source solution for TFS described as "Gated Check-ins". The code is shelved until receiving the necessary sign-offs (manual or automated) and can successfully pass the build sequence. Once successful, the source is unshelved and submitted into the "real" build sequence.

Comments

Popular posts from this blog

Rollback a Ooops in TFS with TFPT Rollback

Rhut roe, Raggie. You just checked in a merge operation affecting 100's of files in TFS against the wrong branch. Ooops. Well, you can simply roll it back, right? Select the folder in Source Control Explorer and...hey, where's the Rollback? Rollback isn't supported in TFS natively. However, it is supported within the Power Tools leveraging the command-line TFPT.exe utility. It's fairly straightforward to revert back to a previous version--with one caveot. First, download and install the Team Foundation Power Tools 2008 on your workstation. Before proceeding, let's create a workspace dedicated to the rollback. To "true up" the workspace, the rollback operation will peform a Get Latest for every file in your current workspace. This can consume hours (and many GB) with a broad workspace mapping. To work around this, I create a temporary workspace targeted at just the area of source I need to roll back. So let's drill down on our scenario... I'm worki...

VSTS 2008 Data-Driven Web Test

During a client demo this afternoon, I mind-blanked on creating a data-driven web test. Sure enough, I stepped out of the client offices and figured it out. Super. But, I think it's counterintuitive enough to outline in a blog post (...trying to make myself feel better ;-). Somewhat in my defense, I was thinking about data-driven unit tests. These, IMO, are easy to implement. Data-driven web tests are a bit more effort and challenging. Create a web test: Right-mouse on your test project selecting Add >> Web Test. Use the browser recorder to capture your web test scenario. Let's assume you're submitting an age and credit rating to an insurance rate calculator...similar to the screen capture below: Create a table or CSV file (comma-delimited...just use Excel and save as CSV) with relevant headings for your inputs and expected values: From Solution Explorer, double-click on your web test. In the main window, right-mouse on your web test selecting Add Data Sou...

TFS Reports Out of Date

You may have noticed it takes a while for Team Foundation Server (TFS) reports to reflect changes you've made to work items or builds. Let me guess...about an hour, right? Out of the box, TFS is set to refresh the data warehouse from its transactional store every 60 minutes. How do I change the frequency of the data warehouse refresh? Browse to the TFS Controller Web Service on your TFS application tier server within IE at: http://localhost:8080/Warehouse/v1.0/warehousecontroller.asmx Select the ChangeSetting option Enter RunIntervalSeconds for the settingId and the desired number of seconds for newValue (300 for 5 minutes...5*60) Select Invoke How do I force a data warehouse refresh? Two methods here: either via the above web service or using SQL Server Management Studio. Via the web service: Browse to the TFS Controller Web Service within IE at: http://localhost:8080/Warehouse/v1.0/warehousecontroller.asmx Select the Run option Click Invo...