Showing posts with label tfs. Show all posts
Showing posts with label tfs. Show all posts

Wednesday, 17 October 2018

Resigning and Deploying Xamarin iOS Apps with Azure DevOps

Creating iOS mobile application with Xamarin is a good option for developers who are familiar with Visual Studio family of products. Any project you create nowadays demand for CI/CD implementation as it is the first step towards enabling DevOps. Azure DevOps comes with feature rich set of tasks for building the iOS apps. Tasks that allows re-signing of packaged ipa (iOS deployment files) are available as Marketplace task. App Center allows you to do mobile application testing in much simpler way. Let’s look at steps required to resign and deploy iOS package to APP Center using Azure DevOps pipelines.

Tuesday, 28 August 2018

Check if a Build Definition Exists for a Given Repo in VSTS/TFS

In scenarios where you have many teams working in the same team project, you might have multiple TFS Git repos within a single team project. When you want to create a build definition for a given repo, you might be wondering what if there is a build definition already exists for the repo. Opening each build definition to find that out is a waste of time. Let’s look at a small utility script that can give you the information quickly using VSTS/TFS REST API.

Sunday, 26 August 2018

Values of repositoryType Parameter in VSTS REST API

VSTS REST API is really useful in achieving automations in many aspects of the software development process, and it can be used to write some handy utilities to obtain information quickly with appealing formats. However, sometimes you have to bit struggle to find out which are the correct values to pass for some parameters expected by VSTS REST API, where the documentation does not provide much of a valid information. One such parameter is ‘repositoryType’ in documentation found here for listing build definitions, which does not give any information what are the expected values for the parameter.Documentation here gives some hint on what could be the values but does not have information for REST API expected values.

Friday, 27 July 2018

Finding Membership Information of a User/Group/Team in VSTS/TFS

Managing permissions of a VSTS/TFS sometimes become a nightmare specially if you have many teams groups etc. created in your account and in team projects. It is important to have a way to find group membership of an individual or group, so that you can analyze where the memberships are assigned in order to make required maintenance or change permission activities. Lets look at a command which can help you find that information quickly.

Thursday, 28 June 2018

Building and Deploying Windows Services with VSTS/TFS

Generally windows services are deployed by creating an msi installer. It is possible to deploy msi via VSTS/TFS release management using the extension available in the marketplace. Packaging the windows as non msi would give opportunity to have more control on the configurations etc, when deployment and let’s see how to package a windows service and then get it deployed via VSTS/TFS release management.

Monday, 25 June 2018

Packaging "Assemblies in GAC Installed with SDKs" in Build and Getting Deployed to Target Machine GAC

There can be projects depending on assemblies in Global Assembly Cache installed with may be a internal company SDK, which would even be installed in developer machines and in build servers. These assemblies should be packaged with the project and deployed to the GAC of target machines such as QA,staging and Production etc.  as well. Since the code repo does not include such assemblies in the build server it may be required to extract those assemblies from GAC and packaged with the builds. Let’s see how we can get the assemblies in GAC packaged and get deployed to targets, using VSTS build and release management.

Tuesday, 22 May 2018

Securing Build Definitions When Multiple Teams Work on a Single Team Project

Securing a build definition is quite straight forward when an organization uses multiple team projects in VSTS/TFS to handle different applications they develop. Each team project build administration can be assigned to different individuals easily. There are organizations using a single team project to manage all of their applications, dividing them into teams inside a single team project. Let's look at possibilities of securing each application teams' builds in single team project for organization scenario.

Sunday, 29 April 2018

Visual Source Safe (VSS) to TFS Migration

In modern software development usage of only a source control mechanism would not add value to the software delivery process. However, some organizations still using Visual Source Safe (VSS) to manage their source code, but it is unsupported tool as of now and they should consider moving their code bases to a different tool. As a fully DevOps capable ALM tool TFS is a good choice to move the code from VSS. Let’s look at the steps required to perform such a migration of VSS code, including history.

Thursday, 12 April 2018

Finding Active Team Projects Based on Code CheckIns/Commits

When you have many team projects in your TFS instance or in your team services account (VSTS), manually finding out what are the active projects is not going to be an easy task, by looking at each code repository in each of the projects to determine whether project is getting updated with code changes. TFS/VSTS REST API can be used in this scenario to obtain the projects that have any code commits/checkins from a given date using the script available here.

Tuesday, 27 February 2018

Cloning TFS 2018

How to clone TFS before TSF 2018 is explained in posts, Backing Up and Restoring Databases, Prepare Restored Databases and Configuring the AT. Out of these steps Backing Up and Restoring Databases is valid for TFS 2018. But you do not have to perform the Prepare Restored Databases as it can be done while configuring the Application Tier of the cloned TFS instance. Let’s look at valid steps for cloning TFS 2018.

Monday, 1 January 2018

Configure Search Service for TFS 2018 in a Separate Server to Enable Work Item & Code Search

Work Item Search & Code Search allow TFS users to do advanced and dynamic way of quick searching on code or work items, with drill down etc. To enable Code Search in VSTS you have to install the Marketplace extension for code search, work item search is default enabled for VSTS. You can configure search for on-premises TFS in TFS AT (described here), itself. But if you want to setup search service in a separate box from your TFS AT, you can follow the steps described in this post.

Sunday, 31 December 2017

TFS Build Agent Fail on Get Source After Upgrade

TFS on premise requires you to keep your TFS updated as almost in every quarter a new update to the TFS is released as well as a new version every year. For this you might have to do TFS Upgrades. If you have upgraded from TFS 2015 to TFS 2018 you have to remove the version 1.xx build agents and configure version 2.xx build agents. Your existing build might encounter workspace issues and may not be able to get sources downloaded to build, in the build agents after the upgrade of agents done. Let’s look at how we can get this issue resolved.

Saturday, 30 December 2017

Updating TFS Build Agents from Version 1.xx to 2.xx After TFS Upgrade 2018 from TFS 2015

If you have upgraded the TFS from TFS 2015 to TFS 2018 you will encounter a situation where your vNext build agents 1.xx are no longer valid. You will get a message in the Agent Pool/Queue indicating that the agents are deprecated and you need to migrate them. Let’s understand the steps required to migrate your TFS build agents from 1.xx to 2.xx.

Script to Delete All Workspaces of a Computer from TFS

Sometime you need to clean up machines, especially build servers after a TFS upgrade to get the agents working as intended. If you ever come across a situation where you want to remove all Team Foundation Version Control (TFVC) workspaces from TFS for a given machine, considering all collections and all users, the script available here will help you to do that.

Monday, 25 December 2017

TFS 2015.2 to TFS 2018 Upgrade–Lesson Learnt

It is great if the latest updates to TFS can be applied as and when they are released. But for a large organization it might not be sometimes easy. There may be few version gaps when you try to upgrade your TFS. Let’s discuss a problem with SQL server, faced while upgrading from TFS 2015.2 to TFS 2018, and how can it be fixed without getting into deeper troubles. This upgrade was done after a pre production trial using a clone of the TFS 2015.2, and no issues faced during TFS2015.2 from to TFS 2018 in the trial steps, which were exactly followed in production, except for clone TFS 2015.2 of course. Still in a production scenario you might run into unexpected Smile.

Monday, 18 December 2017

Creating Multiple Artifacts in a Single Build

Sometime you may want to create multiple artifacts in a build for separate each project output into different artifact. This question was asked in a forum “To create CI/CD pipeline to deploy web application and windows service on different VMs there is a need to create separate artifacts, for both project. How artifacts for all projects can be published separately in a CI pipeline ?” To answer that question, let’s look at very simple implementation possibility in VSTS/TFS builds.

Tuesday, 7 November 2017

Moving TFS 2005 Collection to TFS 2013.3 – Plan, Execution & Lessons Learnt

Many organizations still use old platforms and they are reluctant to move to new platform with fear of failure in doing the move. But hanging onto older products would not give any benefit as well as it would eventually fail to meet the demands of the modern business and software development requirements. Visual Studio Team System 2005 (TFS 2005) is such old tool, but still people using it for the production work. Let’s have a look at steps taken to move a TFS 2005  as a collection into TFS 2013.3 (again this is not the latest version, but this client demand was to get it to 2013.3), and the thing to keep an eye on to avoid any issues in the move.

Tuesday, 31 October 2017

TLS 1.2, PowerShell and Dynamics CRM with VSTS Release Management

PowerShell often used in tasks in VSTS release management. When accessing services authenticated via AAD (Azure Active Directory) it might require to use TLS 1.2 protocol, if it is configured to be required in AAD setup. Setting up the machine as per instructions here to allow TLS 1.2 may not work with PowerShell. In case you are accessing Dynamics CRM online with PowerShell using Microsoft.Xrm.Data.PowerShell in VSTS release management you might see this issue as  “[error]Get-CrmConnection : The pipeline has been stopped.”

Tuesday, 24 October 2017

Trigger Release from PS in TFS 2015.2

Can you trigger a release in TFS 2015.2 from another release definition execution? Was the request from one of the teams. To fulfill this requirement, if you are using VSTS or TFS2017,  you can use the extension “VSTS Trigger” available in marketplace. But this is not usable in TFS 2015.2 as it does not have the Personal Access Token feature. The PowerShell script described in this post will let you trigger a release from another release.

Thursday, 12 October 2017

Mistake in .sln Can Cause NuGet Restore Task in Build to Fail and Hide the Real Issue

NuGet packages are very commonly used in VS Development. Using build VSTS task NuGet Restore is general practice of downloading packages while doing the automated builds. Today suddenly a team ran into the same issue described here https://developercommunity.visualstudio.com/content/problem/97737/error-da-toolnuget400x64nugetexe-failed-with-retur.html. Let’s have a look at the real issue caused this error in this particular teams’ instance and how it was found and resolved.

Popular Posts