Download presentation
Presentation is loading. Please wait.
Published bySarah Merritt Modified over 9 years ago
2
BODY From Source Code Management to Daily Build Soren Klemmensen, Kamil Sacek & Luc van Vugt
3
Introduction
4
BODY = Build Or Die, Youngman
5
= Build Own Database Yourself
BODY = Build Own Database Yourself
6
= Best Of Dynamics Youngsters
BODY Builders = Best Of Dynamics Youngsters
7
= Soren Klemmensen (CA) Kamil Sacek (CZ) Luc van Vugt (NL)
BODY Builders = Soren Klemmensen (CA) Kamil Sacek (CZ) Luc van Vugt (NL)
8
Agenda Source Code Management (SCM) Build Resume
9
Source Code Management
10
Source Code Management
Local or Virtual Machine Local Workspace or Repository Update WS/Repo Check in Code Central Repository (TFS, GITHub, …) holding .txt files Developer Database Developer Isolation Update/Sync Database with WS/Repo Update WS/Repo
11
SCM - Benefits Secured code History at hand Code Review
code improvement Team Foundation Server (TFVC) or GIT used by many lots of built-in and plug-in tooling API
12
GIT vs TFVC GIT TFVC Distributed Centralized History available locally
History on server only Branches are path- based and created on server Branches are lightweight Partial support in Visual Studio GUI Full support in Visual Studio GUI Full support in external GUI Limited support in external GUI
13
Demo (developing) Create change on local system for some TFS task.
Sync to GIT Commit – Description with reference to WI Push -> Conflict Review the commit on TFS Portal, see the related WI
14
Build
15
TFS Architecture TFS Server (Online/On Prem) Project Server extensions
TFS Web portal SharePoint extensions Build Agent Client TFS Server (Online/On Prem) Build Agent MS SQL Build Controller
16
TFS Server (Online/On Prem)
TFS Architecture TFS Web portal Build Agent TFS Server (Online/On Prem) Build Agent Build Controller
17
Update/Sync Database with
How it works (GIT)? Build Isolated development Build Database (tests) Local GIT repository Update repo & Commit Push Test/Build results GIT server repository (TFS, GITHub …) Developer Database Central development Build Developer Isolation Central Development Database Update/Sync Database with repo Pull Check-in (Update repo)
18
Update/Sync Database with
How it works (TFVC)? Build Isolated development Build Database (tests) Local Workspace Update Workspace Check-in Test/Build results TFVC (TFS) Developer Database Central development Build Developer Isolation Central Development Database Update/Sync Database with Workspace Check-out Check-in (Update repo)
19
But HOW IT WORKS? TFS Build Build Database (tests) Test/Build results
20
Build What does it mean “to build NAV”? Prepare the environment
Create NAV SQL DB from backup Create NAV Server Instance Install external components (Addins, dlls) Import NAV License Update objects Import base FOB file(s) Import txt file(s) Compile objects Test Database Run tests Produce output Export and publish test results Export and publish FOB file Create and publish NAVX
21
What we need to build? PowerShell scripts Build template
Build definition Parameters Trigger
22
Build template XAML Windows Workflow Foundation Activities creating complex Workflow PowerShell support through custom Activities Build agent for Windows vNext (TFS 2015+) Web and script based Basic Activities defining each step Executed step-by-step Native support for PowerShell Build agents for other platforms (xPlat)
23
Build template
24
Build parameters In template Defined by template
Configured in build definition In versioned files e.g. XML file Could change by each changeset/commit
25
Build parameters Examples: SQL Server name SQL Database name
Base DB Backup file Base FOB file License file NAV Version Differential build (yes/no) Clean DB (yes/no) Compile all (yes/no) …
26
Trigger Manual Continuous integration Rolling builds
each commit/check-in Rolling builds Gated check-in (TFVC) Schedule (nightly builds)
27
Demo (building) Show related commits Show related work items
Show the build results with test results
28
Summary
29
Join Us !
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.