Microsoft s Team Foundation Server (TFS) Canute Magalhaes Richland County (IT) SYSTEMS ANALYST / PROJECT LEAD 1



Similar documents
Administering Team Foundation Server 2013

Engine: Using MSBuild and Team Foundation

Effective Team Development Using Microsoft Visual Studio Team System

SourceAnywhere Service Configurator can be launched from Start -> All Programs -> Dynamsoft SourceAnywhere Server.

Introduction to Source Control ---

Developing Solutions for Microsoft Dynamics AX in a Shared AOS Development Environment

Essential Visual Studio Team System

Comparison: Perforce and Microsoft Team Foundation Server (TFS)

Hands-On Lab. Embracing Continuous Delivery with Release Management for Visual Studio Lab version: Last updated: 12/11/2013

User Guide Release Management for Visual Studio 2013

Microsoft Project Server Integration with SharePoint 2010

Leveraging Rational Team Concert's build capabilities for Continuous Integration

ALM2013VS_ACC: Application Lifecycle Management Using Visual Studio 2013

Composite C1 Load Balancing - Setup Guide

Application Lifecycle Management Using Visual Studio 2013 (SCRUM)

Installation Guide. Release Management for Visual Studio 2013

Microsoft Project Server 2010 Administrator's Guide

Deploying Web Applications in Enterprise Scenarios

Visual Studio - Continuous Integration

Kony MobileFabric Messaging. Demo App QuickStart Guide. (Building a Sample Application

EMC E EMC Content Management Foundation Exam(CMF)

Source Control Systems

Web Developer Toolkit for IBM Digital Experience

MOC 10964C: Cloud and Datacenter Monitoring with System Center Operations Manager

This module provides an overview of service and cloud technologies using the Microsoft.NET Framework and the Windows Azure cloud.

Automating Business Processes Using SharePoint Designer

MS-55115: Planning, Deploying and Managing Microsoft Project Server 2013

Configuring Microsoft Dynamics AX 2012 Alerts and Notifications Using an SMTP Relay Server with Office 365

Zoom Plug-ins for Adobe

Using GitHub for Rally Apps (Mac Version)

Document Management. Document Management for the Agile Enterprise. AuraTech Pte Ltd

Microsoft Dynamics AX Windows 8 App Starter Kit. App Development Guide Version 1.0

Key Benefits of Microsoft Visual Studio Team System

Course 55115: Planning, Deploying and Managing Microsoft Project Server 2013

Deployment Guide: Unidesk and Hyper- V

Administration Guide for the System Center Cloud Services Process Pack

Backup and Recovery of SAP Systems on Windows / SQL Server

ALM Solutions using Visual Studio TFS 2013 ALMI13; 5 Days, Instructor-led

Jazz Source Control Best Practices

NiceLabel Control Center 6.5. Release Notes. Rev-1504

Visual Studio Team Edition for Database Professionals. Woody Pewitt Developer Evangelist

Continuous Integration

QlikView 11 Feature Sheet Source Control Integration

Integrating Team Foundation Server, Microsoft Test Manager and Coded UI Tests

estpassport Bessere Qualität, bessere Dienstleistungen!

EMC Documentum Webtop

Lab: Application Lifecycle Management (ALM) Across Heterogeneous Platforms (Java/.NET)

CMB 207 1I Citrix XenApp and XenDesktop Fast Track

Central Release and Build Management with TFS. Christian Schlag

Version Control Using Subversion. 12 May 2013 OSU CSE 1

General TFS Guidelines V2.1.2

This module explains the Microsoft Dynamics NAV architecture and its core components.

TSM Studio Server User Guide

Quick Start Guide. Version R9. English

Getting Started with the Ed-Fi ODS and Ed-Fi ODS API

Optimized Policies and Procedures in Healthcare with Oracle WebCenter Content GEORGE SOKOL & JENNIFER MARZOLF FISHBOWL SOLUTIONS, INC.

Things to consider before you do an In-place upgrade to Windows 10. Setup Info. In-place upgrade to Windows 10 Enterprise with SCCM

10964C: Cloud & Datacenter Monitoring with System Center Operations Manager

MS 10978A Introduction to Azure for Developers

EMC Documentum Composer

Team Foundation Server 2013 Installation Guide

@CodenvyHQ

Windows Azure Data Services (basics) 55093A; 3 Days

CMTRAC. Application Overview APPLICATION DATASHEET

This document is provided to you by ABC E BUSINESS, Microsoft Dynamics Preferred partner. System Requirements NAV 2016

AB Suite in the Application Lifecycle

Master Data Services. SQL Server 2012 Books Online

Continuous integration for databases using Red Gate tools

Microsoft Dynamics Lifecycle Services

About database backups

PASS4TEST 専 門 IT 認 証 試 験 問 題 集 提 供 者

Configure SQL database mirroring

Nintex Workflow 2010 Installation Guide. Installation Guide Nintex USA LLC, All rights reserved. Errors and omissions excepted.

MOC DEVELOPING WINDOWS AZURE AND WEB SERVICES

Effectiveness is to create just ONE system, a SINGLE methodology, always ready to work in any country and adapted to your needs.

Installing Windows Server Update Services (WSUS) on Windows Server 2012 R2 Essentials

IBM WebSphere ILOG Rules for.net

Data processing goes big

DAVE Usage with SVN. Presentation and Tutorial v 2.0. May, 2014

System Requirements for Microsoft Dynamics NAV 2016

System Requirements for Microsoft Dynamics SL 2015

Azure Day Application Development

Please contact Cyber and Technology Training at for registration and pricing information.

Oracle Data Integrator 12c: Integration and Administration

System Administration Training Guide. S100 Installation and Site Management

Industry White Paper. Ensuring system availability in RSView Supervisory Edition applications

IKAN ALM Architecture. Closing the Gap Enterprise-wide Application Lifecycle Management

System Requirements for Microsoft Dynamics NAV 2016

Course Description. Course Audience. Course Outline. Course Page - Page 1 of 5. Microsoft Azure Fundamentals M Length: 2 days Price: $ 1,295.

Kaseya 2. User Guide. Version 1.0

Team Foundation Server

IT Service Management with System Center Service Manager

Experiences with ALM tools in Software Engineering course

Course 10978A Introduction to Azure for Developers

Kit Rowley. Subject: Content type and workflow planning (SharePoint Server 2010) Attachments: image001.gif. Plan content types. Plan content types

Maintenance Plans for MS SQL Database Servers in a ZENworks Environment

Enterprise Document Management

Using HP Systems Insight Manager to achieve high availability for Microsoft Team Foundation Server

Best Practices for Implementing Autodesk Vault

Transcription:

Microsoft s Team Foundation Server (TFS) Canute Magalhaes Richland County (IT) SYSTEMS ANALYST / PROJECT LEAD 1

Topics for this Presentation Why Richland County IT - Business Systems Division uses Team Foundation Server (TFS) What is Team Foundation Server Version Control with TFS Automating Builds with TFS Programmatically Interfacing with TFS Demo a triggered build Questions 2

Why Richland County IT - Business Systems Division uses TFS - Challenges Possibility of more than one user working on a file simultaneously. Need file / code synchronization, repository, history, authorization, etc. Need developers working as a group, doing building, code trails, System Integration and Functionality testing. Nice to have an Early Notification of bad checked-in code. Cannot have a Single Point Of Failure, with work-in-process files sitting on local machine. Need designated teams managing their respective builds without developer involvement. Did not have consolidated environment for version control, repository, build process etc. Need to run builds under an authorized account 3

Multiple solutions under one Umbrella We are a Microsoft shop. We have TFS in our MSDN subscription. Multi-User Check-outs TFS File / code synchronization, repository, history, authorization, etc. Developers can doing development builds for System integration and functionality testing with version control. ShelveSet lets you save work-in-process files on to the TFS server. Analysts now determine and manage QA builds without developer involvement. Builds are kicked off and pushed to Staging and Production under an authorized account by the concerned groups. One consolidated environment for version control, repository, build process etc. Run under an authorized account. 4

What is Team Foundation Server (TFS) Team Foundation Server is the collaboration platform at the core of Microsoft's Application Lifecycle Management (ALM) solution. Source http://msdn.microsoft.com/en-us/vstudio/ff637362.aspx 5

Team Foundation Server Releases Pre - 2013 release 2013 and forward Team Foundation Server Team Foundation Server / Service On Premises & as a Microsoft Hosted Service. (http://tfs.visualstudio.com) The Hosted Service is called Visual Studio Online. 6

Team Foundation Server Architecture Team Foundation Server has three logical tiers Client tier Application tier Data tier 7

Client Tier The client tier consists of Visual Studio Industry Partners (VSIP) components, Microsoft Office integration, command-line interfaces, etc. VSIPs: Applied Materials, App Dev, github, etc. 8

Application Tier Server-level services (also known as application-level services) provide the functionality for operations for Team Foundation Server as a software application. The client tier communicates with the application tier through the server object model, and uses the same Web services that are listed for that tier. This is true whether you deploy TFS locally, or if you use Visual Studio Online. 9

Data Tier The data tier includes data, stored procedures, and other associated logic. When you use Visual Studio Online, the data tier is hosted for you using SQL Server Azure. In a local deployment of TFS, the logical data tier consists of the operational stores within SQL Server. Configuration database (TFS_Configuration) Application warehouse (TFS_Warehouse) Analysis Services database (TFS_Analysis) Databases for team project collections (TFS_CollectionName) These stores might be located on one physical server or distributed across many servers. Source: http://msdn.microsoft.com/en-us/library/ms252473.aspx 10

Major Features Included In Team Foundation Server Version Control Builds (Automated / Manual ) Requirements Management Project Management Work Item Release Management Capabilities Testing Reporting. Lab management 11

Connecting to Team Foundation Server Team Foundation Server Administration Console Visual Studio IDE Team Web Access Team Explorer Everywhere 12

Team Foundation Server Administration Console 13

Via Visual Studio 14

Team Explorer packaged with Visual Studio 15

Team Web Access 16

Check-In, Check-Out from Team Foundation Server without an IDE? Team Explorer Everywhere Download Available: http://www.visualstudio.com/en-us/downloads#d-team-explorer-everywhere 17

According to Microsoft: Your team can collaborate across platforms and improve the predictability of your development processes by using Team Explorer Everywhere. How to get started with Team Explorer Everywhere: http://msdn.microsoft.com/en-us/library/gg413285.aspx 18

Team Foundation Server Administration Console - Details 19

Team Projects In Collection 20

Team Project Collection Security Groups 21

Team Project Collection Administration Security (Global) 22

Team Project Collection Database Repository 23

TFS thru Visual Studio using Team Explorer Connect to Team Project 24

Collections and Projects on TFS 25

Adding Team Project To Collection Using Visual Studio. Team Explorer Using the command line (TFPT.exe) TFPT CreatTeamproject /collection:uri /teamproject:"project name" /processtemplate:"template name" [/sourcecontrol:new None Branch:branchpath] [/log:"logfolder"] [/validate] [/verbose] 26

Version Control with TFS via (Visual Studio IDE) 27

Source Control Explorer 28

Workspace 29

Configuring workspace 30

Buttons on Source Control Explorer Add Items to Folder Check Out Compare Folders New Folder Check In History Get Latest Version (Recursive) 31

Hierarchy & Relationship In Version Control Whenever TFS generates a A a document or documents are checked-in Changeset number Which uniquely identifies the file/s and its/their contents. Label is a collection of Changesets More precisely, when a Label is created. The changeset number of the latest version, of each file in the TFS Project, at the time the label is being created, is taken and that collection of changesets, becomes the metadata of that Label. 32

Changesets (versions) of a file 33

Files in a Changeset 34

Merge User 1 Checks Out Checks Out User 2 Doc 1 User 1 changes Doc 1 and Check-In When user 2 changes Doc 1 and tries to Check-In 35

Pending Changes conflicts 36

TFS Merge Tool Server Version Trying to check-in Merged File 37

Where do project files reside in TFS 38

39

Automating Builds with TFS Build Controller Build Agent Build Definition Workspace XAML file (Build process template) 40

Build Controller Each Build Controller is dedicated to a single Team Project Collection. The Build Controller performs lightweight tasks, such as determining the name of the build, creating the label in version control, logging notes, and reporting status from the build. The Build Controller distribute the processor-intensive work of your build process to its pool of build agents. The Build Controller does not typically require significant processor time, in some cases you can host it on the same computer as your Team Foundation Server. 41

Build Agent Each build agent is dedicated to and controlled by a single build controller. Build agents can be hosted on the same build server that hosts their build controller The build agent executes the steps of your build process that are contained in the AgentScope activity. Typically, these steps include getting files from version control, provisioning the workspace, compiling the code, running tests, and merging files back into version control. AgentScope activity: In the XAML file there is an Activity called "Run on Agent". You can add custom created activities to the "Run on Agent" activity. All activities in the "Run on Agent" are in the AgentScope. 42

Configuring Build Controller and Agents 43

Properties of Build Controller 44

Properties of Build Agent 45

Recommendation By Microsoft On Setting Up Build Agents If you installed Team Foundation Build Service on the same server as Team Foundation Server or are using the hosted service, the default setting for Number of build agents to run on this build machine is 1 (recommended). Choose Scale out build services to run concurrent builds across multiple machines. If you choose this option, you have to specify the number of build agents for this machine and then add them to a new or existing build controller. If you installed Team Foundation Build Service on its own server, the default setting for Number of build agents to run on this build machine is equal to the number of processor cores on this server. Source: http://msdn.microsoft.com/en-us/library/vstudio/ee259683(v=vs.110).aspx 46

Build Server Configuration 47

Build Definition 48

Creating a new Build Definition 49

Build Definition Trigger Typically, for development builds 50

Build Definition Workspace 51

Build Definition Defaults 52

Build Definition Process 53

Build Definition Process (Specify Build Agent) 54

Build Definition Process (Specify MSBuild Info) 55

Build Definition Retention Policy 56

Build Definition Retention Policy (Delete policy) 57

Build Definition Retention Policy (Delete policy - Options) 58

Manual Build Kick-Off 59

Kick-Off Build 60

61

The XAML (Workflow) file Templates 62

Build Process XAML (Workflow) Activities AgentScope activity 63

XAML (Workflow) Activity Toolbox 64

Create Custom Activity 65

Adding Custom Activities to the XAML Toolbox The DLL containing the custom activities needs to be registered in the GAC, using gacutil.exe, on the machine that the XAML will be executed. Right click on the Toolbox and click on Choose Items Add the custom activities DLL 66

Programmatically Interfacing with TFS 67

Web Page used by Analyst to Kick-Off QA Build 68

TFS Objects to programmatically connect to TFS and do builds, etc. TfsTeamProjectCollection VersionControlServer IBuildServer teamprojects BuildDetails Names of the Build Definitions You need the name of the Build Definition to get the Build Definition object Build definition IBuildRequest Use the IQueue object to kick-off the build. IQueuedBuild 69

Required Team Foundation references Imports Microsoft.TeamFoundation.Build Imports Microsoft.TeamFoundation.Build.Client Imports Microsoft.TeamFoundation.Client Imports Microsoft.TeamFoundation.VersionControl.Client Imports Microsoft.TeamFoundation.Framework.Client 70

Code sample Dim tfsprojcollection = TfsTeamProjectCollectionFactory.GetTeamProjectCollection(New Uri("http://Devittfs1:8080/tfs/cama"), New UICredentialsProvider()) Dim tfsversioncontrolserver = tfsprojcollection.getservice(of VersionControlServer)() Dim tfsbuildserver = tfsprojcollection.getservice(of IBuildServer)() Dim teamprojects = tfsversioncontrolserver.getallteamprojects(true) Dim builddetails = tfsbuildserver.querybuilds(project Name) Dim defnames = (From a In builddetails Select a.builddefinition.name).distinct Dim builddef As IBuildDefinition = tfsbuildserver.getbuilddefinition(projectname,definitionname) Dim buildrequest As IBuildRequest = builddef.createbuildrequest buildrequest.getoption = GetOption.Custom buildrequest.customgetversion = "L" & label 'L indicates to TFS that the text passed is a label. buildrequest.requestedfor = Request.LogonUserIdentity.Name Dim queue As IQueuedBuild = TFSBuildServer.QueueBuild(buildRequest, QueueOptions.None) queue.waitforbuildstart() 71

Demo a triggered build 72

Questions??? 73

Thank You Canute Magalhaes Contact: MagalhaesC@rcgov.us 74