TFS setup related issues - tfs

Is there any focused documentation on achieving the following with TFS. I find myself having to read through tonnes of documentation on MSDN and I find nothing is listed under topics as such or maybe I don't know what to look for. I have no experience in TFS other than checking files in and out and I am still trying to understand what each of these mean and how to find it in the docs, without much luck.
Gated check-in + continuous build for select projects.
Gated check-in + scheduled builds for other select projects.
Dashboards and reporting to select individuals or groups
Access for testing team members to only selective work item creation of the TFS project they are assigned to. They
should be able to get the latest version of the code and be able to log a workitem-bug, workitem-issue, workitem-testcase but they should not be able to create for eg. workitem:use case.
Testers should not be able to modify code.
Sending mails to persons who have a work item assigned to them, with
select persons in copy.
Sending of emails to anyone against whom a bug is assigned. When bug
is closed the person who raised the bug should get notified via
email.
Sending mails to key persons of a project defined somewhere in TFS,
on build failure of that project.
If anyone has already done something like any of the points listed above then can you please let me know the steps? Somehow the documentation jumping too many links and going in various tangents.
Thanks for your time and patience..

In order:
Go to the Microsoft TFS site at http://msdn.microsoft.com/en-us/vstudio/ff637362.aspx. Look for the training videos. Most of the stuff you want is covered.
The Visual Studio Team Foundation Server Branching and Merging Guide at http://vsarbranchingguide.codeplex.com/ is an excellent guide.
The Introduction to Visual Studio Team Foundation Server 2010 Training Kit at http://www.microsoft.com/en-us/download/details.aspx?id=27152 is helpful.

Related

Who has accessed a team project in TFS?

How can I see who has accessed files in a team project in TFS? Normal View History only shows you check ins. And exporting the Audit Log from TFS doesn't show you this info. I am interested in knowing who has made a read/get latest access on a specific team project.
This needs to be documented for my QA department. Are there any TFS SQL scripts that can show this info?
Sorry, we do not have this kind record of User's each operation such as read/get latest on a specific team project.
As you have mentioned history command will only displays the revision history of one or more files or folders. It only related to each changeset(checked in files).
Audit logs basically display some modify operation in TFS will also not include any access info at present.
Dig into sql database to query such information maybe a solution. However, highly not recommend to do this, since it may cause some potential risks of your database. And it will also lose support from Microsoft.
This should be a feature quest, you could submit it here. Our PM will kindly review any suggestion.

Duplicate collections in Team Foundation Server 2010

I am currently trying to solve an issue with our current on-premise TFS 2010 Server where I have 2 collections and both of my project collections were set to offline due to some tinkering with trying to upgrade to on-premise TFS 2015.
Whenever I try to activate the desired collection, I am getting the following error:
TF253021:The following team project is duplicated in at least two team
project collections: ProjectName. The collection cannot start while
the duplication exists. You must delete this project from all but one
of the collections before the collection can be started. The project
exists in the following collections: CollectionA, CollectionB.
I also had a look at each of their settings, and apparently the database connection string for both collections are pointing towards the same SQL Server instance and the same database. Both collections also have the same number and names of all team projects too.
I'm thinking of deleting one of the collection and its projects, but I fear that if I do it, it may delete the same collection and settings for the second project collection that I'm trying to set online.
I'm wondering if anybody has encountered this issue and what steps have he/she has done to fix it.
Many thanks!
You've gotten yourself in a remarkable situation, which may need Microsoft support to chime in. Even with creative backups I'd be unsure whether you'd get yourself in an unsupported end-situation.
If you have a backup of the whole situation before you started this experiment, I'd recommend going back to that.
You may find yourself in a catch-22 situation, since TFS 2010 has passed it's support lifecycle. Mentioning it happened while preparing for a TFS 2015 upgrade may convince them.
You can find the contact details here:
https://support.microsoft.com/en-us/contactus/

Can you export history from Visual Studio Online to another ALM system?

I’m beginning to consider moving an on-prem TFS 2012 installation to Visual Studio Online. So, one of the first things I started investigating was how we might export our content back out of VSO in the future if we ever decided we needed to. The more I’m looking, the less I’m finding. It seems there was a temporary time period when VSO first went GA that Microsoft offered that capability if you asked to have it done (http://www.visualstudio.com/en-us/news/2014-apr-3-vso.aspx). By implication, that would seem to mean that this isn’t something that is a planned feature of VSO.
Making a commitment to house all of my source and ALM data in a repository I’d effectively be barred from leaving doesn’t sound particularly appealing. Am I missing something, or does Microsoft really not have export capabilities on their VSO product roadmap? It would seem that this would be a show-stopper for many organizations from coming onto VSO, which is a perfect application to put into the cloud IMHO.
For code you can use Git. Even if you start with TFVC, you can use Git-TF. Clone with the --deep parameter to get the full history in a new Git repo, then push back to a new project (Git or TFVC).
For work items the TEAM tab in Microsoft Excel is a very capable export facility for work items, though you don't get links (other than parent child), or attachments.
In the original project, create a query that lists all your work items.
Open Excel, go to the TEAM tab and click 'New List', you should get the option to select your project and the query you just created.
In the Work Items tab select the 'Choose Columns' button and select all the columns you want to migrate.
If migrating to another TFS / VSO project, create that project, open another list in Excel connected to the new project.
Cut and paste all the work items from the original project list to the new project list (excluding the Id column).
Publish.
voilà.
You're right there's no good solution for this yet. However, if you're using Git as the source-control back-end (instead of TFVC), you can easily pull down the entire repo then push it up into any other source control server (non-VSO) with full history.
For TFVC source-control, or work items (or builds, test results, etc), things aren't so easy.
The answer is not black and white: with the TFS Client API you can connect to both platform and read/write as you please. It is not a trivial task, so someone has created tooling, like Brian says. Another option is using the open source TFS Integration Platform: it is complex but with some help you can do it.
What you really must consider and plan is the data model: moving from an ALM Platform to another is never trivial and the complexity lies in the difference of the underlying model and any customization you made.
As long as you do not customize you on-prem TFS, it is very doable, with a reasonable effort to move to VSO and back. In this context customize means: custom workitems fields, types or workflows, server-side plugins; shortly anything that requires code or schema change. Note that you can still customize builds as this is properly managed.
I expect to see more solutions arriving thanks to the new REST API, but it will take time before we see solid products.
So your original question has a positive answer (TFS on-prem -> VSO) using OpsHub, but know what you are doing and, as I write, it is practically a one way journey.

Not enough permission to change Bug Workflow

I am using TFS Service (on the cloud solution) and I would like to customize the bug states.
There are many resources explaining how to do that using TFS Power Tools, so I downloaded and installed it.
I am able to open the workflow, but I am not able to change anything because I get the following error message:
Failed to save the 'Bug' Work Item Type to the server. TF237113: You
don't have enough permission to complete the import operation
I am using an administrator user.
Is it possible to make this change on Visual Studio Online?
While you are correct that it is not possible to customise the process template on Visual Studio Online you do have a few options:
Kanban Columns - If you want to you can customise the Kanban columns so that you have 'meta states' that you can use. I know that it is not the same but it could get you there.
Go offline - Currently and for a limited time you can take your VSO account on-premises. The TFS team are holding the version of VSO in parity with TFS 2013 Update 2 so that folks can do this. Be aware of what you loose though. No frequent updates and you have to host your own servers...
Not sure if these options help but they are options...
Making more research I found the answer: it is not possible:
http://visualstudio.uservoice.com/forums/121579-visual-studio/suggestions/3654231-customize-process-template-on-visual-studio-online

TFS and Mantis Integration

I'd like to know if it's possible (and how, if anyone has ever done it before) to have Mantis Bug Tracker "tickets" automatically imported/transformed into TFS work items.
We use mantis to keep track of development and TFS as a Repo. Every check-in made to TFS must be associated with one work item. Right now, these two systems are not integrated which causes, for example, that the ticket 100 is relative to the work item 497 without no way of knowing that one is relative to the other.
I've looked at TFS Integration Tools but was unable to install it for some reason at this time.
So, how can I have an automation process that "imports" Mantis tickets into TFS work items automatically? Is this even possible?
There is a plugin for source integration which supports Git, SVN and Mercurial (experimental).
https://github.com/mantisbt-plugins/source-integration
I am not aware that there is something similar avalaible for TFS, but it should be no big problem to implement TFS integration based on the framework which is offered by the plugin.

Resources