0

Come Join Polaris at CCC 2014 on April 26th

by Angela 10. March 2014 14:53

So if you haven’t been to Chicago Code Camp yet, you should! I know, I know, there are SO MANY conferences in the Chicago area, how do you choose? It’s true, there are a lot of good ones but here are some benefits to CCC:

a) Because it is community- driven, there is some amazing sessions, including a few sessions on TFS and agile. Here are the ones I am hoping to attend (to be fair I am GIVING two of those talks):

 

Other great sessions cover a wide variety of topics like Windows 8, TypeScript, PowerShell, Unity 3D and Azure, JavaScript and Elixir.

b) it’s FREE for a full day of techie goodness, lunch included. Yeah, you read that correctly, FREE.

c) it’s super easy to get to. It’s right off of 294 and the parking is free.

d) it’s on a Saturday so you don’t even have to miss work! OK, so maybe you don’t see this as an advantage, but I do.

e) Polaris Solutions is a Platinum sponsor and will have a booth. So stop by, say hi, and pick up one of our sweet little booklets on Agile practices.

 

So register now before it sells out, and check out the full list of sessions here: http://www.chicagocodecamp.com/Public/Sessions

0

Chicago ALM User Group - New years 2014 Edition

by Angela 13. January 2014 17:14

Join Us Wednesday, January 29, 2014 from 6:30 PM to 9:00 PM

In case you missed the annual Christmas Edition of the ALM user group, we are holding another special event for the New year in the Chicago location. In December, we took an Open Spaces approach to our meeting and it went very well. Open Spaces is sort of an “unconference” thing if you have not participated before, where you enter into it with no formal agenda and let the attendees decide what is important and/or interesting to talk about. So think of a topic you’d be willing to lead, or a topic you would like someone else to lead.  We will write them on a board, pick some locations for groups to gather, and then you vote with your feet, bouncing around if need be.  We had some great topics presented last month - InRelease in the real world, and automated testing tips and tricks with VS 2013 CodedUI. There was a LOT of active discussion and some great deep dives.

I’ll have lots of fun giveaways including pens, stickers, and a few more books. I’ll also have special prizes for people who lead an Open Spaces discussion during the meeting.

 

So I hope to see you at the Chicago meeting this month! Register soon to make sure we save you a seat: http://chicagoalmug.org/

Location:      Microsoft-Chicago 200 E Randolph, 2nd Floor, Chicago

Speaker Bio: You, me, anyone who is interested in speaking!

Agenda:       6:30pm dinner --   7:00pm Open Spaces Kickoff – 9:00pm Wrap-up

0

Chicago ALM User Group Talks About TFS For Automated Deployment in February!

by Angela 20. February 2013 12:43

Hi Gang!  After a short hiatus for the holidays, we are back for a great discussion on using Team Foundation Server in conjunction with Powershell and TFS Deployer for automating the build and deployment of your applications. What kinds of applications you ask? ALL KINDS! And not even just .NET applications. Crazy talk!

Ismail Ahmed Syed is our first speaker of 2013, and he is graciously returning to the podium to demonstrate how you can utilize TFS build quality change events of TFS for deploying .Net Applications using TFS Deployer and custom PowerShell scripts.  He will also be talking about how you can achieve automated build and deployment processed for Non.NET Applications Such as JavaArch11, Tibco AMXBPM, IBM SPSS etc. Lastly, he will demonstrate how web transformations can be used for getting away from the manual task of writing configuration files for each environment  and  how the config files will be transformed automatically as part of the automated deployment using TFS Deployer.

This is a topic ANYONE using TFS should get a lot out of. Who doesn’t want a more streamlined and effective way to do automated build and deployment of their applications? Can't wait to see it myself!  Here are some important details and a link to registration:

Date: Wednesday February 27th, 2013

Location: Microsoft Office - 3025 Highland Pkwy, Ste 300, Downers Grove, IL

Agenda: 6:30PM dinner and networking, 7:00pm presentation and demos

As always, please be sure to RSVP at least 24 hours before the event to ensure that we can get you registered with security. If you need to cancel, we’d also appreciate a heads up so we can have the appropriate amount of food, soda and supplies on hand.

Tags:

ALM | Application Lifecycle Management | Build Automation | Power Tools | TFS 2012 | TFS Power Tools | Team Foundation Server | Powershell | Deployment | Web transformations

1

Making TFS 2012 Work Item Types Read-Only Based on User Roles

by Angela 14. January 2013 09:35

Warning: this is most certainly NOT the most elegant solution to the problem. It’s a known shortcoming, or maybe it’s a feature, that you cannot limit access to an entire work item based on a user’s role in TFS.  I can limit transitions, and access to individual fields, but for very large and complex work item types, this is cumbersome and fragile. In a nutshell, I am trying to limit access to specific work item types, so that they are only editable by specific groups of people, and I had posted it to the forums to no avail.  So here is my ugly solution which for now, is sufficient. 

I started with Gregg’s post from 2009 that provided a workaround to my issue, but the error message thrown has changed in such a way as to make it even less intuitive as to what is going on. Below is the implementation of his suggestion and the resulting user experience:

image

image

The other issue with the above solution, is that it only prevents a user from CREATING that work item type, I need the user to also not be able to edit the item.

 

So I decided to try something a little different. I created a custom field, that is never displayed on any form, specifically for the use of locking down work items since we have several scenarios where we have to enforce read-only access to a work item type for certain users. I called it “UserAccessDenied”, since that is at least indicative of the issue when displayed to a user.

clip_image001

Like I said, the field is never displayed to a user, so it should never be populated.  We make that field required for any user that should NOT be editing the work item as below, which prevents them from saving it since it will always be empty:

clip_image002

 

Still not an awesome solution but at least now the provided error is a BIT more helpful, and the client was happy which is all that matters right? Smile 

image

image

 

You can provide a better experience to the user if you have the ability to create custom controls or write listeners that capture work item events to handle this. Where I am, they want something easy to maintain that does not require any kind of code to be written or maintained. So it is what it is.  If you, like me, would find the ability to set access permissions at the work item level, vote on my suggestion here.

 

And as always, if YOU have come up with a better way to do this, I’d love to hear about it!

Tags:

ALM | Application Lifecycle Management | MSDN | Power Tools | SDLC | TFS | TFS 2012 | TFS Administration | TFS Power Tools | Team Foundation Server | Visual Studio 2012 | Visual Studio | Work Item Tracking

0

Untangling TFS Connectivity to SSRS Snafus

by Angela 5. December 2012 08:55

So, as you may know, SSRS cannot host up reports for multiple instances of TFS, or for other applications period.  IOW, TFS SSRS instances MUST be dedicated. The reason is pretty obvious once you dig around in the properties of the reporting databases on your report server, but trust me on this unless you really WANT to know how it all works under the covers.

Long story short, we accidentally configured two different TFS application tiers (TFS1 running TFS2012 and TFS2 running TFS2010) to use the same instance of SSRS, doh!  We only need reporting on TFS1, for the record. After some troubleshooting we found that the connection strings for the TFS2010OlapReportDS and TFS2010ReportDS databases on the report server pointed to TFS2 and not the original one any more (TFS1). But oddly, the reports on the new TFS instance don't work either, I would have assumed that ONE of the instances would have had reporting that worked. I went to the Reports folder, and could see all of the reports for all of the team projects across the both TFS1 and TFS2 but always received this error, on every single report:

  • An error has occurred during report processing. (rsProcessingAborted)
    • Query execution failed for dataset 'dsIteration'. (rsErrorExecutingCommand)
      • For more information about this error navigate to the report server on the local server machine, or enable remote errors

 

Anyway, I digress. 

I figured a good first step was turning off Reporting on TFS2, and then reconfiguring SSRS for TFS1 in an effort to "reset" the connection.  But I could turn off reporting on TFS2.  I assumed that normally I *should* be able to do this, just un-check the "Use Reporting" feature and it's gone right? Maybe there is something amiss with the TFS 2010 instance? It is brand new, so not sure how it could already be corrupted.  Here is the error I receive when I try to "turn off" reporting on TFS1:

 

I did a lot of searching of MSDN and forums and couldn’t find anything that seemed to help.  I got desperate and tried a different order of operations, a "Hail Mary" if you will, and it worked!

I could not turn off reporting on TFS2 for some reason, but it occurred to me that the error message I was getting ("the database is not properly configured") was rather generic and could mean a LOT of things. And alas I do not have remote login access to the SSRS instance (don't get me started on the why or what of that!), so I couldn't even do research on it.  So instead I focused on getting TFS2 WORKING with SSRS even through the end goal was turning off reporting.  I went to the TFS1 app tier that had been connected to SSRS successfully originally, went into the Admin Console and unchecked "Use Reporting" to break the connection. That worked great, of course.

Next I went back to TFS2, and via the Admin Console verified the SSRS configuration information to hit the report server was all correct (it was), re-started all the jobs, and rebuilt the warehouse. Once reporting was working again on TFS2, I tried to turn it off again, and this time when I unchecked "Use Reporting" it was successful.  So apparently if reporting is broken, you cannot turn it off. Great.

Anyway, next I went back to TFS1, reconfigured reporting through the admin console and now all is well with the world again. Oy, I need a drink.

Tags:

ALM | Application Lifecycle Management | MSDN | SDLC | TFS 2010 | TFS 2012 | TFS Administration | TFS Power Tools | Team Foundation Server | Visual Studio 2012 | Visual Studio

0

Chicago Visual Studio ALM User Group - Holiday Party on Dec 12th 2012

by Angela 1. December 2012 12:48

Are you a regular attendee? Someone who hasn’t been to a meeting in a while? Someone who has never been and has been looking for the perfect topic? Well, c’mon down! Next week is our annual holiday meeting. In the past few months there has been a release of Visual Studio as well as an update, and not just any update but a MASSIVE update with lots of good new functionality. So go download it today!

We'll have fun giveaways for everyone who attends, but some particularly awesome giveaways for people who are willing to get up and demo their favorite VS 2012 (so anything related to VS, MTM or TFS) feature! It doesn't have to be a long or complicated demo, but it does need to highlight something about the latest release or the update that you find particularly useful or cool. Shoot me an email at Angela.Dugan@PolarisSolutions.com with the feature you want to highlight so I can ensure we don't end up with duplicates. Everyone that does a demo gets an additional gift, but we will also vote for one or two big winners to receive something extra cool! More details to come...  We will have many speakers that night, hopefully including you!

So far we have the following presenters and topics:

image

When: Wednesday, December 12, 2012 from 6:00 PM to 8:30 PM
Location: Microsoft-Downers Grove 3025 Highland Pkwy, Ste 300, Downers Grove

Agenda:6:00PM Food, drinks and prizes. 7:00PM VS 2012 Demo contest. 8:00PM Grand prizes awarded

Register here: http://chicagoalmug.org/
0

Hmm, So Apparently TFS 2012 Power Tools Require VS Pro or Better

by Angela 19. November 2012 15:37

So I had gotten used to installing a VS 2010 Shell on my TFS app tier for doing basic administration type activities that required a Team Explorer. One of my most common tasks was editing the TFS process template using the TFS Power Tools. So when I upgraded TFS to 2012, I immediately downloaded the TFS 2012 Team Explorer and Power Tools and installed them so I could get to work.

Today I discovered that is no longer a supported scenario once you have upgraded to TFS 2012, not that the error message is AT ALL helpful for figuring this out, shocking. I loaded up the VS Shell, opened Tools | Process Editor | Work Item Types | Open WIT from Server like I always do

image

and got a strange error I hadn’t seen before. I tried a few other options, projects, work item types, kept getting errors. I was able to export work items, just not open them. ::sad trombone::  So this is an error you might end up encountering after upgrading if you haven’t seen the update I am talking about.

image

Cannot load ‘C:Users37653\AppData\Roaming\Microsoft Corporation\Microsoft® Visual Studio® 2012\11.0.50727.1\usnbka366p_Str_Enterprise_User Story,wit’: Could not load file or assembly Microsoft.VisualStudio.XmlEditor,Version=1 1.0.0.0, Culture=neutral,PublicKeyToken=b03f5f7f11d50a3a or one of its dependencies. The system cannot find the file specified.

 

When I dug around, I discovered a few MSDN posts referring to a licensing change for VS 2012.  I suppose if I still worked at Microsoft I wouldn’t have missed that valuable little nugget. So no longer can you get away with a free VS Shell and the Power Tools for simple administrative tasks on your server, you must install at LEAST VS Professional.  Lame.

If you are lucky, like me, your boss bought you a copy of VS Ultimate and it’s not an issue since with MSDN benefits, you can install it on pretty much any server YOU are going to use. Just be sure if it is a shared server, that everyone is properly licensed for whatever you install there. And alas, this is at my client, so now I need to work with their server folks to get that installed and make sure they are licensed properly for it ::sad face::

Tags:

ALM | Application Lifecycle Management | MSDN | Power Tools | SDLC | TFS 2010 | TFS 2012 | TFS Administration | TFS Power Tools | Team Foundation Server

0

Multi-Tenant TFS Data Tiers? Yes You Can!

by Angela 6. November 2012 08:27

Multi-what TFS? In other words, hosting multiple instances of Team Foundation Server data tiers and all of their associated databases on the same data tier.

So we ran into quite the conundrum here, wherein we had just one physical server available to act as a TFS Data Tier, but needed to host at least 2 TFS 2010 instances on it to try some stuff out in relation to a coming upgrade. I needed to upgrade a number of our project collections to TFS 2012, while leaving some number still on TFS 2010 until we could do further validation on some customizations. It seemed risky, maybe even impossible, but mostly because I had never tried.  I certainly never saw that as an option in the installation docs or on MSDN.  It wasn’t until I sat down with a DBA who looked at it purely from a database perspective that I thought to just give it a try and see what happened. Obviously this is a development environment and NOT their production TFS Smile  You certainly COULD do this in production but it would make me nervous when it came to things like DR, so I’m not going to even entertain that notion.  But, in my situation, I already had a dual tier TFS 2010 environment setup in DEV, and I had a second AT server to use as a test bed for the upgrade to TFS 2012, but my main issue was how I could take collections from a single TFS instance, and upgrade only half of them to 2012 while the others were still available on 2010. I wondered, “can I upgrade the new app tier to 2012 while leaving the other app tier, hitting the same data tier, on TFS 2010?” The answer is, “sure you can!” 

we_can_do_it

Now if you look at TFS merely from the front end perspective this might seem odd, or risky, but like I said, I had a DBA who knew nothing about TFS but knew databases really well helping me to noodle through it.  I knew just enough about SQL Server to be dangerous, so together we made quite the team when it came to “let’s just try it and see what happens, it’s only DEV after all!”.  What I came to understand, and maybe I should have realized this sooner, is that when you upgrade TFS, or do any operations on it from the App Tier, it only affects the databases that are referenced by its configuration database.  So, 3 separate App Tiers have 3 separate Configuration databases, and 3 separate sets of databases (Collections, warehouse, etc.) that can coexist on a single data tier. So upgrading an AT from TFS 2010 to TFS 2012 only updates the schemas of the databases specified in the Configuration database associated to that AT.  Main requirement here is that it is a version of SQL that can support both products, so SQL 2008 R2 + current Service Packs.

So here is what I am running today:

image

Looking back, knowing what I now know, it makes sense too. Now, once again, I spent many many hours researching this on-line and could not find any documentation to confirm or deny that this was even possible. It took a few emails to some folks in North Carolina, you know – the dudes who WROTE the software – to confirm that yes indeed, you can host multiple instances of TFS on a single Data Tier. Turns out, they do it too! So I was pretty stoked to discover that I could in fact host 2 different TFS instances on a single Data Tier machine AND that it was a supported (although completely undocumented) scenario.

Rad huh? When you dig into the SQL Server instance it can become a confusing mess of config databases, and collection databases to manage, but it can also be a useful thing to know for upgrade and testing scenarios where you simply cannot get additional hardware for the DT.  Now yes, this absolutely can make things tricky for the DBA too if you are not using the TFS Backup and Restore Tools for backing up data. I certainly recommend using the built in TFS Backup tools if it is an option. But that is a discussion for another day… and another blog post.

I will happily accept dark chocolate in tribute Smile

Tags:

ALM | Agile | SDLC | Power Tools | TFS 2010 | TFS 2012 | TFS Administration | TFS Power Tools | Team Foundation Server

0

So I ran into this issue today while creating a TFS 2010 Backup Plan

by Angela 31. October 2012 13:30

So as you would expect, I as a consultant do not have god-like access to things in production like I do in the dev and test environments.  So occasionally I get tripped up on access rights, and when it comes to TFS, well, they could do a much better job of listing out all the places where you do and do not need Admin rights, sysadmin rights, farm admin rights… Well, it’s all out there between the Ranger Guidance, best practices documents, install docs and MSDN documentation but you have to do a LOT of cross referencing to get it all.  And sure, ideally anyone who is a TFS admin would be able to just ask nice and smile and get all those rights, but this is the real world and many large companies are PARANOID about handing out access like that to production.  I had to fight to get the minimal rights documented in the TFS guidance, let alone anything extra.

While upgrading TFS 2010 to 2012 at this current client, I am stopped dead in my tracks at least a few times a week, sometimes a few times a day, by “Access Denied”. My most recent one was extra tricky because it involved a Power Tool and as you know, those are often not documented very well. So, on to my story…  I was setting up a Backup Plan on TFS 2010 using the nifty Power Tools feature (see screen below) from the Admin console.  I login to the TFS application tier with my account, a TFS Admin user.  I know that my account has sysadmin rights on SQL because I am a TFS Admin, and when it comes time to providing the account to run the backup plan under I provided the TFSService account which I know has Administrator and sysadmin rights on the data tier server:

image

So between those two accounts I would think everything was OK. I don’t know for sure, but if the Backup Plan is running as the TFSService account the way it is setup here, well that account is king of the world so everything should “just work”. And yet:

clip_image002

So to hopefully make this something that comes up when someone else does a search on this message, here is what I saw - “Error    [ Backup Plan Verifications ] The current username failed to retrieve MSSQL Server service account. Please make sure you have permissions to retrieve this information.” 

WTH?! And when I opened up the error log the first error I encountered was:

TFS upgrade xp_regread() returned error 5, 'Access is denied.' xp_regread() returned error 5, 'Access is denied.' 

Again, WTH?!

So the DBA goes off and starts researching what xp_regread() does, and tried to figure out why this isn’t an issue in our dev and test environments given that everything was setup the same, and I start digging through forums.  Finally I find one sad and lonely little post on the MSDN forums related to the issue that recommends 1) logging in as a TFS Admin user (OK, I’m with you) and 2) “ensure that the user who perform this Backup Plan have required permission in SQL Server”.  Wait, what?  Be more specific please. What *ARE* the required permissions??  This happens all the time. Don’t tell me to “make sure you have appropriate permissions” without clarifying what those are. Otherwise, well, duh! I *think* I have the right permissions but clearly I am mistaken.

I dig through the Ranger Guidance which as far as I can tell is the only place this tool is documented.  It doesn’t say the person CREATING the backup plan has to be an admin on SQL, and it IMPLIES the account specified to run the job has to be an ADMINISTRATOR but only because the example specified a  Administrator account. Here, right from the guidance:

image

But even that doesn’t necessarily imply a SQL admin, and nowhere in the doc does it say what rights either account (logged in user or “Account”) should have. I just went back and read it AGAIN, does not say anything IRT rights of either of those users in the Guidance. I suppose if you knew what it was doing behind the scenes you could infer the rights needed from the MSDN docs (I found this later). I made an educated guess that because in dev and test I am a server Administrator on the DT, and the Backup worked just fine there, that me being a SQL Server Admin must be a requirement.  So I logged back into my production TFS AT with another account that I knew was admin on every server in the TFS implementation (I know, I know), and the backup plan was created just fine. .

Our DBA does NOT like making TFS admin accounts SQL Administrators, but if I can show him explicit rules that say YOU CANNOT DO YOUR JOB AS A TFS ADMIN WITHOUT IT, he will do it.  So please Microsoft, don’t make it so darn difficult to divine what rights all of the accounts need for the various tasks the user will do. Particularly the Power Tools which make people nervous anyway.

Tags:

ALM | Application Lifecycle Management | MSDN | Team Foundation Server | TFS | TFS 2010 | TFS 2012 | TFS Administration | TFS Power Tools | TFS Rangers

Powered by BlogEngine.NET 2.7.0.0
Original Design by Laptop Geek, Adapted by onesoft