SlideShare a Scribd company logo
Build             A Project




            Build Using
Automated
             Team City
            -: Md. Jawed
              jawed.ace@gmail.com
BUILD Automation




Manual     What are we…

 Automate
 Build
            Where do we want to be..

TeamCity
   +
MsBuild
           How do we get there..
Problem Statement



Currently the Code is getting Compiled on Developer Local machine involvement
of Manual Steps.

Which is prone for error(s) as:
1. Time Consuming.
2. Trigger some build operations from within a development environment (IDE) is
   usually not sufficient: as it is often the case that some build operations are not
   supported within the IDE, it must be possible to perform a build outside of the IDE.
3. Introduce of Human Error.
4. No centralized Drop location
5. No instant Build notification to other team members about whether build failed or
   passed.
6. No Dedicated Build server.
7. Currently while compiling the code no Unit test, Code coverage and other analyses
   process getting executed. Just straight forward F5 or right click Select Build of
   respective project.
Automated Build Process



An automated build process compiles, deploys and then runs build verification tests
(BVTs) against the latest source code for a project at regular, predetermined intervals.
Then a “build report,” which details the success or failure of the build process, is
disseminated to the project stakeholders. The build report is analyzed to determine
what areas of the project need attention and/or if the project should be rolled back
to an earlier version/build.

The power of an automated build process is it can be scheduled to be run during “off
hours” so it can help ensure the stability of the project without taking cycles directly
away from the development time. This topic provides an overview of the build
process, describes how build verification testing fits into the build process, describes
aspects of functional testing used during build verification testing and provides
information about the importance of automating the build process.
Automated Build Process

Advantages :
1. No More F5 or Right click Build.
2. An automated build process runs faster, saving valuable time in the development and
    deployment process.
3. An automated build requires less manual involvement, reducing the developer’s work load.
4. An automated build is more reliable because it reduces the number of opportunities for
   human error.
5. In an automated build process all actions are scripted, which creates intrinsic
   documentation of the steps involved in the build.
6. Builds Definition based on Environment like separated Build for DEV, DEV-Q, test and
    Production.
7. Build notifications.
8. Integrated the Build to run Unit test, Code Coverage or code Quality while compiling the
    tool. And published the result to Respective Stack Holder.
9. Builds can run at night – less network load, effective resource utilization
           -Early error detection (e.g. continuous integration, automated unit testing)
           -Automatic log archiving (all the information is saved)
           -Better processes – automation requires process revision and simplification, which
           more often than not leads to process improvement.
10. More Important
Improved Software Quality
Solution

        We have decided to Use Team City to Automate our Build Process.

What TeamCity Offers
 •     Software build automation and management
 •     Team communication for the above
 •     Code inspection and coverage analysis
 •     Platform agnostic
 •     Free professional version
•     Automate code analyzing, compiling, and testing processes, providing instant
•     feedback on build progress, problems and test failures, all in simple, intuitive
•     web-interface;
•     Run multiple builds and tests under different configurations and platforms
•     simultaneously.
•      Perform Pre-tested commits, helping the rest of a team sustain an
•      uninterrupted workflow.
•      Have build history insight with customizable statistics on build duration, success
     rate, code quality and custom metrics.
Pulling It All Together


• Periodically (to process daily or nightly builds), or
• upon version control system check-in (by setting up VCS triggers), or
• upon another build successful completion (by setting up dependencies).
• TeamCity offers multiple ways to instantly notify you about build problems or any
  other changes in your projects
• Detailed Test Results Analysis
• Analysis of Unit Tests code coverage
• Build History




 For more information visit Below Link
http://www.jetbrains.com/teamcity/features/index.html
Approaches


Separate Build server installed with Teamcity and Different Builds definition for respective
Branch, Trunk, Tag and for Individual use.


     SVN Structure                         Team City Builds             Drop Location




                                                 Dev Build                     Dev


                                                Internal Test                Internal
                                                    Build                     Test-Q

                                                  Test Build                   Test


                                                 Production                 Production
                                                    Build
System Requirements


To Setup Team city to Automate Build process we need below Server/Hardware and Software


   Server: Windows 2008
   Data Base: MS Sql server 2008 R2
   Software Installed: Visual Studio 2010
                     IIS7.0+
                     Nunit
                     Team City
                     any Acetarx dependencies
                     FXCop

   Login: Dedicated Teamcity AD ,Having SVN permission
   EmailID: Dedicated emailid for Notification.
   Port: 8111
END TO END
Private Build-pre-tested commits
Private Build-pre-tested commits
Best Practices For Project Layout in SVN
Here are some best practices for getting the most out of your project layout:
Project root – This is the anchoring point for a project. A repository may contain one
project root, or multiple roots, but each project root contains three subdirectories: /trunk,
/branches, and /tags. The use of a project root is officially recommended by the Apache
Subversion project.
Trunk - This is where you should store current release code – only! Don’t muddy the trunk
directory with revisions or release names.
Branches – Use these to work on significant changes, variations of code etc, without
disrupting the current release code.
Bug fixing on a branch – Branches should be created to fix major bugs; this allows bug
changes to be immediately worked on without disrupting whatever work is currently
underway in the trunk/development branches.
“Toe in the water” branches – Branches can be used as a code “sandbox” where new
technology can be tested without risking the working code. If things go right, the new code
can always be merged back into the trunk.
Tags – Should be used as “code milestones” providing a snapshot of the code at specific
points in its history.
Tagging bug fix / development branches – when creating a code or bug fix branch, it’s
useful to create a “pre” tag, and a “post” tag after the bug fix or code change has been
completed:
http://10.2.5.2:9880/encom/tags/PRE_authchange_bug9343
http://10.2.5.2:9880/encom/tags/POST_authchange_bug9343
Perform Operation




                                              Copy to drop
                                  Published   location

                       Run test


         Compilation


Check
Out on
Agent
Questions & Answers
Ad

More Related Content

What's hot (20)

Software Testing - Part 1 (Techniques, Types, Levels, Methods, STLC, Bug Life...
Software Testing - Part 1 (Techniques, Types, Levels, Methods, STLC, Bug Life...Software Testing - Part 1 (Techniques, Types, Levels, Methods, STLC, Bug Life...
Software Testing - Part 1 (Techniques, Types, Levels, Methods, STLC, Bug Life...
Ankit Prajapati
 
An introduction to Software Testing and Test Management
An introduction to Software Testing and Test ManagementAn introduction to Software Testing and Test Management
An introduction to Software Testing and Test Management
Anuraj S.L
 
A new approach of program slicing
A new approach of program slicingA new approach of program slicing
A new approach of program slicing
Dr Sandeep Kumar Poonia
 
Mocking in python
Mocking in pythonMocking in python
Mocking in python
Ooblioob
 
ISTQB - Software development life cycle
ISTQB - Software development life cycleISTQB - Software development life cycle
ISTQB - Software development life cycle
HoangThiHien1
 
Introduction to Testcontainers
Introduction to TestcontainersIntroduction to Testcontainers
Introduction to Testcontainers
VMware Tanzu
 
Unit testing & TDD concepts with best practice guidelines.
Unit testing & TDD concepts with best practice guidelines.Unit testing & TDD concepts with best practice guidelines.
Unit testing & TDD concepts with best practice guidelines.
Mohamed Taman
 
Software quality assurance
Software quality assuranceSoftware quality assurance
Software quality assurance
Rajeev Sharan
 
Exploratory testing using heuristics
Exploratory testing using heuristicsExploratory testing using heuristics
Exploratory testing using heuristics
Michelle Lagare, CSM
 
Software quality assurance activites
Software quality assurance activitesSoftware quality assurance activites
Software quality assurance activites
Golu Gupta
 
Test Driven Development
Test Driven DevelopmentTest Driven Development
Test Driven Development
Sachithra Gayan
 
Automation Testing
Automation TestingAutomation Testing
Automation Testing
Sun Technlogies
 
Software Testing
Software TestingSoftware Testing
Software Testing
Dhanasekaran Nagarajan
 
Chapter 1 introduction
Chapter 1 introductionChapter 1 introduction
Chapter 1 introduction
Piyush Gogia
 
Develop a Defect Prevention Strategy—or Else!
Develop a Defect Prevention Strategy—or Else!Develop a Defect Prevention Strategy—or Else!
Develop a Defect Prevention Strategy—or Else!
TechWell
 
TDD (Test Driven Design)
TDD (Test Driven Design)TDD (Test Driven Design)
TDD (Test Driven Design)
nedirtv
 
Test-Driven Development
Test-Driven DevelopmentTest-Driven Development
Test-Driven Development
John Blum
 
TDD CrashCourse Part2: TDD
TDD CrashCourse Part2: TDDTDD CrashCourse Part2: TDD
TDD CrashCourse Part2: TDD
David Rodenas
 
Building a Test Automation Strategy for Success
Building a Test Automation Strategy for SuccessBuilding a Test Automation Strategy for Success
Building a Test Automation Strategy for Success
Lee Barnes
 
Role Of Qa And Testing In Agile 1225221397167302 8
Role Of Qa And Testing In Agile 1225221397167302 8Role Of Qa And Testing In Agile 1225221397167302 8
Role Of Qa And Testing In Agile 1225221397167302 8
a34sharm
 
Software Testing - Part 1 (Techniques, Types, Levels, Methods, STLC, Bug Life...
Software Testing - Part 1 (Techniques, Types, Levels, Methods, STLC, Bug Life...Software Testing - Part 1 (Techniques, Types, Levels, Methods, STLC, Bug Life...
Software Testing - Part 1 (Techniques, Types, Levels, Methods, STLC, Bug Life...
Ankit Prajapati
 
An introduction to Software Testing and Test Management
An introduction to Software Testing and Test ManagementAn introduction to Software Testing and Test Management
An introduction to Software Testing and Test Management
Anuraj S.L
 
Mocking in python
Mocking in pythonMocking in python
Mocking in python
Ooblioob
 
ISTQB - Software development life cycle
ISTQB - Software development life cycleISTQB - Software development life cycle
ISTQB - Software development life cycle
HoangThiHien1
 
Introduction to Testcontainers
Introduction to TestcontainersIntroduction to Testcontainers
Introduction to Testcontainers
VMware Tanzu
 
Unit testing & TDD concepts with best practice guidelines.
Unit testing & TDD concepts with best practice guidelines.Unit testing & TDD concepts with best practice guidelines.
Unit testing & TDD concepts with best practice guidelines.
Mohamed Taman
 
Software quality assurance
Software quality assuranceSoftware quality assurance
Software quality assurance
Rajeev Sharan
 
Exploratory testing using heuristics
Exploratory testing using heuristicsExploratory testing using heuristics
Exploratory testing using heuristics
Michelle Lagare, CSM
 
Software quality assurance activites
Software quality assurance activitesSoftware quality assurance activites
Software quality assurance activites
Golu Gupta
 
Chapter 1 introduction
Chapter 1 introductionChapter 1 introduction
Chapter 1 introduction
Piyush Gogia
 
Develop a Defect Prevention Strategy—or Else!
Develop a Defect Prevention Strategy—or Else!Develop a Defect Prevention Strategy—or Else!
Develop a Defect Prevention Strategy—or Else!
TechWell
 
TDD (Test Driven Design)
TDD (Test Driven Design)TDD (Test Driven Design)
TDD (Test Driven Design)
nedirtv
 
Test-Driven Development
Test-Driven DevelopmentTest-Driven Development
Test-Driven Development
John Blum
 
TDD CrashCourse Part2: TDD
TDD CrashCourse Part2: TDDTDD CrashCourse Part2: TDD
TDD CrashCourse Part2: TDD
David Rodenas
 
Building a Test Automation Strategy for Success
Building a Test Automation Strategy for SuccessBuilding a Test Automation Strategy for Success
Building a Test Automation Strategy for Success
Lee Barnes
 
Role Of Qa And Testing In Agile 1225221397167302 8
Role Of Qa And Testing In Agile 1225221397167302 8Role Of Qa And Testing In Agile 1225221397167302 8
Role Of Qa And Testing In Agile 1225221397167302 8
a34sharm
 

Similar to Automated Build using teamcity (20)

Enabling Continuous Integration with Azure Pipelines
Enabling Continuous Integration with Azure PipelinesEnabling Continuous Integration with Azure Pipelines
Enabling Continuous Integration with Azure Pipelines
Eng Teong Cheah
 
Continuous Integration: A Case Study
Continuous Integration: A Case StudyContinuous Integration: A Case Study
Continuous Integration: A Case Study
IndicThreads
 
Flight East 2018 Presentation–Continuous Integration––An Overview
Flight East 2018 Presentation–Continuous Integration––An OverviewFlight East 2018 Presentation–Continuous Integration––An Overview
Flight East 2018 Presentation–Continuous Integration––An Overview
Synopsys Software Integrity Group
 
Jenkins_1679702972.pdf
Jenkins_1679702972.pdfJenkins_1679702972.pdf
Jenkins_1679702972.pdf
MahmoudAlnmr1
 
jenkins.pdf
jenkins.pdfjenkins.pdf
jenkins.pdf
shahidafrith
 
Continuous Integration
Continuous IntegrationContinuous Integration
Continuous Integration
XPDays
 
CI, CD -Tools to integrate without manual intervention
CI, CD -Tools to integrate without manual interventionCI, CD -Tools to integrate without manual intervention
CI, CD -Tools to integrate without manual intervention
ajayrajaganeshkayala
 
Build automation best practices
Build automation best practicesBuild automation best practices
Build automation best practices
Code Mastery
 
Continous integration and delivery for single page applications
Continous integration and delivery for single page applicationsContinous integration and delivery for single page applications
Continous integration and delivery for single page applications
Sunil Dalal
 
What is Continuous Integration and Continuous Delivery
What is Continuous Integration and Continuous Delivery What is Continuous Integration and Continuous Delivery
What is Continuous Integration and Continuous Delivery
Sarah Elson
 
Delivering Quality Software with Continuous Integration
Delivering Quality Software with Continuous IntegrationDelivering Quality Software with Continuous Integration
Delivering Quality Software with Continuous Integration
Aspire Systems
 
MF_Modernization.pptx
MF_Modernization.pptxMF_Modernization.pptx
MF_Modernization.pptx
ManishaCh5
 
Dev ops using Jenkins
Dev ops using JenkinsDev ops using Jenkins
Dev ops using Jenkins
Synergetics Learning and Cloud Consulting
 
A Continuous Delivery Safety Net for Databases
A Continuous Delivery Safety Net for DatabasesA Continuous Delivery Safety Net for Databases
A Continuous Delivery Safety Net for Databases
IBM UrbanCode Products
 
PratheshBV_Resume
PratheshBV_ResumePratheshBV_Resume
PratheshBV_Resume
pradeesh bv
 
Software engineering
Software engineeringSoftware engineering
Software engineering
bartlowe
 
Continuous Integration to Shift Left Testing Across the Enterprise Stack
Continuous Integration to Shift Left Testing Across the Enterprise StackContinuous Integration to Shift Left Testing Across the Enterprise Stack
Continuous Integration to Shift Left Testing Across the Enterprise Stack
DevOps.com
 
Hudson
HudsonHudson
Hudson
8x8
 
Continuous integration
Continuous integrationContinuous integration
Continuous integration
Dennis van der Stelt
 
Enter the Team City
Enter the Team CityEnter the Team City
Enter the Team City
Kashif Ali Siddiqui
 
Enabling Continuous Integration with Azure Pipelines
Enabling Continuous Integration with Azure PipelinesEnabling Continuous Integration with Azure Pipelines
Enabling Continuous Integration with Azure Pipelines
Eng Teong Cheah
 
Continuous Integration: A Case Study
Continuous Integration: A Case StudyContinuous Integration: A Case Study
Continuous Integration: A Case Study
IndicThreads
 
Flight East 2018 Presentation–Continuous Integration––An Overview
Flight East 2018 Presentation–Continuous Integration––An OverviewFlight East 2018 Presentation–Continuous Integration––An Overview
Flight East 2018 Presentation–Continuous Integration––An Overview
Synopsys Software Integrity Group
 
Jenkins_1679702972.pdf
Jenkins_1679702972.pdfJenkins_1679702972.pdf
Jenkins_1679702972.pdf
MahmoudAlnmr1
 
Continuous Integration
Continuous IntegrationContinuous Integration
Continuous Integration
XPDays
 
CI, CD -Tools to integrate without manual intervention
CI, CD -Tools to integrate without manual interventionCI, CD -Tools to integrate without manual intervention
CI, CD -Tools to integrate without manual intervention
ajayrajaganeshkayala
 
Build automation best practices
Build automation best practicesBuild automation best practices
Build automation best practices
Code Mastery
 
Continous integration and delivery for single page applications
Continous integration and delivery for single page applicationsContinous integration and delivery for single page applications
Continous integration and delivery for single page applications
Sunil Dalal
 
What is Continuous Integration and Continuous Delivery
What is Continuous Integration and Continuous Delivery What is Continuous Integration and Continuous Delivery
What is Continuous Integration and Continuous Delivery
Sarah Elson
 
Delivering Quality Software with Continuous Integration
Delivering Quality Software with Continuous IntegrationDelivering Quality Software with Continuous Integration
Delivering Quality Software with Continuous Integration
Aspire Systems
 
MF_Modernization.pptx
MF_Modernization.pptxMF_Modernization.pptx
MF_Modernization.pptx
ManishaCh5
 
A Continuous Delivery Safety Net for Databases
A Continuous Delivery Safety Net for DatabasesA Continuous Delivery Safety Net for Databases
A Continuous Delivery Safety Net for Databases
IBM UrbanCode Products
 
PratheshBV_Resume
PratheshBV_ResumePratheshBV_Resume
PratheshBV_Resume
pradeesh bv
 
Software engineering
Software engineeringSoftware engineering
Software engineering
bartlowe
 
Continuous Integration to Shift Left Testing Across the Enterprise Stack
Continuous Integration to Shift Left Testing Across the Enterprise StackContinuous Integration to Shift Left Testing Across the Enterprise Stack
Continuous Integration to Shift Left Testing Across the Enterprise Stack
DevOps.com
 
Hudson
HudsonHudson
Hudson
8x8
 
Ad

Recently uploaded (20)

Rusty Waters: Elevating Lakehouses Beyond Spark
Rusty Waters: Elevating Lakehouses Beyond SparkRusty Waters: Elevating Lakehouses Beyond Spark
Rusty Waters: Elevating Lakehouses Beyond Spark
carlyakerly1
 
Role of Data Annotation Services in AI-Powered Manufacturing
Role of Data Annotation Services in AI-Powered ManufacturingRole of Data Annotation Services in AI-Powered Manufacturing
Role of Data Annotation Services in AI-Powered Manufacturing
Andrew Leo
 
Cybersecurity Identity and Access Solutions using Azure AD
Cybersecurity Identity and Access Solutions using Azure ADCybersecurity Identity and Access Solutions using Azure AD
Cybersecurity Identity and Access Solutions using Azure AD
VICTOR MAESTRE RAMIREZ
 
UiPath Community Berlin: Orchestrator API, Swagger, and Test Manager API
UiPath Community Berlin: Orchestrator API, Swagger, and Test Manager APIUiPath Community Berlin: Orchestrator API, Swagger, and Test Manager API
UiPath Community Berlin: Orchestrator API, Swagger, and Test Manager API
UiPathCommunity
 
Manifest Pre-Seed Update | A Humanoid OEM Deeptech In France
Manifest Pre-Seed Update | A Humanoid OEM Deeptech In FranceManifest Pre-Seed Update | A Humanoid OEM Deeptech In France
Manifest Pre-Seed Update | A Humanoid OEM Deeptech In France
chb3
 
How analogue intelligence complements AI
How analogue intelligence complements AIHow analogue intelligence complements AI
How analogue intelligence complements AI
Paul Rowe
 
Dev Dives: Automate and orchestrate your processes with UiPath Maestro
Dev Dives: Automate and orchestrate your processes with UiPath MaestroDev Dives: Automate and orchestrate your processes with UiPath Maestro
Dev Dives: Automate and orchestrate your processes with UiPath Maestro
UiPathCommunity
 
Splunk Security Update | Public Sector Summit Germany 2025
Splunk Security Update | Public Sector Summit Germany 2025Splunk Security Update | Public Sector Summit Germany 2025
Splunk Security Update | Public Sector Summit Germany 2025
Splunk
 
HCL Nomad Web – Best Practices and Managing Multiuser Environments
HCL Nomad Web – Best Practices and Managing Multiuser EnvironmentsHCL Nomad Web – Best Practices and Managing Multiuser Environments
HCL Nomad Web – Best Practices and Managing Multiuser Environments
panagenda
 
tecnologias de las primeras civilizaciones.pdf
tecnologias de las primeras civilizaciones.pdftecnologias de las primeras civilizaciones.pdf
tecnologias de las primeras civilizaciones.pdf
fjgm517
 
Mobile App Development Company in Saudi Arabia
Mobile App Development Company in Saudi ArabiaMobile App Development Company in Saudi Arabia
Mobile App Development Company in Saudi Arabia
Steve Jonas
 
AI and Data Privacy in 2025: Global Trends
AI and Data Privacy in 2025: Global TrendsAI and Data Privacy in 2025: Global Trends
AI and Data Privacy in 2025: Global Trends
InData Labs
 
Special Meetup Edition - TDX Bengaluru Meetup #52.pptx
Special Meetup Edition - TDX Bengaluru Meetup #52.pptxSpecial Meetup Edition - TDX Bengaluru Meetup #52.pptx
Special Meetup Edition - TDX Bengaluru Meetup #52.pptx
shyamraj55
 
Increasing Retail Store Efficiency How can Planograms Save Time and Money.pptx
Increasing Retail Store Efficiency How can Planograms Save Time and Money.pptxIncreasing Retail Store Efficiency How can Planograms Save Time and Money.pptx
Increasing Retail Store Efficiency How can Planograms Save Time and Money.pptx
Anoop Ashok
 
Transcript: #StandardsGoals for 2025: Standards & certification roundup - Tec...
Transcript: #StandardsGoals for 2025: Standards & certification roundup - Tec...Transcript: #StandardsGoals for 2025: Standards & certification roundup - Tec...
Transcript: #StandardsGoals for 2025: Standards & certification roundup - Tec...
BookNet Canada
 
Build Your Own Copilot & Agents For Devs
Build Your Own Copilot & Agents For DevsBuild Your Own Copilot & Agents For Devs
Build Your Own Copilot & Agents For Devs
Brian McKeiver
 
Enhancing ICU Intelligence: How Our Functional Testing Enabled a Healthcare I...
Enhancing ICU Intelligence: How Our Functional Testing Enabled a Healthcare I...Enhancing ICU Intelligence: How Our Functional Testing Enabled a Healthcare I...
Enhancing ICU Intelligence: How Our Functional Testing Enabled a Healthcare I...
Impelsys Inc.
 
ThousandEyes Partner Innovation Updates for May 2025
ThousandEyes Partner Innovation Updates for May 2025ThousandEyes Partner Innovation Updates for May 2025
ThousandEyes Partner Innovation Updates for May 2025
ThousandEyes
 
TrustArc Webinar: Consumer Expectations vs Corporate Realities on Data Broker...
TrustArc Webinar: Consumer Expectations vs Corporate Realities on Data Broker...TrustArc Webinar: Consumer Expectations vs Corporate Realities on Data Broker...
TrustArc Webinar: Consumer Expectations vs Corporate Realities on Data Broker...
TrustArc
 
Drupalcamp Finland – Measuring Front-end Energy Consumption
Drupalcamp Finland – Measuring Front-end Energy ConsumptionDrupalcamp Finland – Measuring Front-end Energy Consumption
Drupalcamp Finland – Measuring Front-end Energy Consumption
Exove
 
Rusty Waters: Elevating Lakehouses Beyond Spark
Rusty Waters: Elevating Lakehouses Beyond SparkRusty Waters: Elevating Lakehouses Beyond Spark
Rusty Waters: Elevating Lakehouses Beyond Spark
carlyakerly1
 
Role of Data Annotation Services in AI-Powered Manufacturing
Role of Data Annotation Services in AI-Powered ManufacturingRole of Data Annotation Services in AI-Powered Manufacturing
Role of Data Annotation Services in AI-Powered Manufacturing
Andrew Leo
 
Cybersecurity Identity and Access Solutions using Azure AD
Cybersecurity Identity and Access Solutions using Azure ADCybersecurity Identity and Access Solutions using Azure AD
Cybersecurity Identity and Access Solutions using Azure AD
VICTOR MAESTRE RAMIREZ
 
UiPath Community Berlin: Orchestrator API, Swagger, and Test Manager API
UiPath Community Berlin: Orchestrator API, Swagger, and Test Manager APIUiPath Community Berlin: Orchestrator API, Swagger, and Test Manager API
UiPath Community Berlin: Orchestrator API, Swagger, and Test Manager API
UiPathCommunity
 
Manifest Pre-Seed Update | A Humanoid OEM Deeptech In France
Manifest Pre-Seed Update | A Humanoid OEM Deeptech In FranceManifest Pre-Seed Update | A Humanoid OEM Deeptech In France
Manifest Pre-Seed Update | A Humanoid OEM Deeptech In France
chb3
 
How analogue intelligence complements AI
How analogue intelligence complements AIHow analogue intelligence complements AI
How analogue intelligence complements AI
Paul Rowe
 
Dev Dives: Automate and orchestrate your processes with UiPath Maestro
Dev Dives: Automate and orchestrate your processes with UiPath MaestroDev Dives: Automate and orchestrate your processes with UiPath Maestro
Dev Dives: Automate and orchestrate your processes with UiPath Maestro
UiPathCommunity
 
Splunk Security Update | Public Sector Summit Germany 2025
Splunk Security Update | Public Sector Summit Germany 2025Splunk Security Update | Public Sector Summit Germany 2025
Splunk Security Update | Public Sector Summit Germany 2025
Splunk
 
HCL Nomad Web – Best Practices and Managing Multiuser Environments
HCL Nomad Web – Best Practices and Managing Multiuser EnvironmentsHCL Nomad Web – Best Practices and Managing Multiuser Environments
HCL Nomad Web – Best Practices and Managing Multiuser Environments
panagenda
 
tecnologias de las primeras civilizaciones.pdf
tecnologias de las primeras civilizaciones.pdftecnologias de las primeras civilizaciones.pdf
tecnologias de las primeras civilizaciones.pdf
fjgm517
 
Mobile App Development Company in Saudi Arabia
Mobile App Development Company in Saudi ArabiaMobile App Development Company in Saudi Arabia
Mobile App Development Company in Saudi Arabia
Steve Jonas
 
AI and Data Privacy in 2025: Global Trends
AI and Data Privacy in 2025: Global TrendsAI and Data Privacy in 2025: Global Trends
AI and Data Privacy in 2025: Global Trends
InData Labs
 
Special Meetup Edition - TDX Bengaluru Meetup #52.pptx
Special Meetup Edition - TDX Bengaluru Meetup #52.pptxSpecial Meetup Edition - TDX Bengaluru Meetup #52.pptx
Special Meetup Edition - TDX Bengaluru Meetup #52.pptx
shyamraj55
 
Increasing Retail Store Efficiency How can Planograms Save Time and Money.pptx
Increasing Retail Store Efficiency How can Planograms Save Time and Money.pptxIncreasing Retail Store Efficiency How can Planograms Save Time and Money.pptx
Increasing Retail Store Efficiency How can Planograms Save Time and Money.pptx
Anoop Ashok
 
Transcript: #StandardsGoals for 2025: Standards & certification roundup - Tec...
Transcript: #StandardsGoals for 2025: Standards & certification roundup - Tec...Transcript: #StandardsGoals for 2025: Standards & certification roundup - Tec...
Transcript: #StandardsGoals for 2025: Standards & certification roundup - Tec...
BookNet Canada
 
Build Your Own Copilot & Agents For Devs
Build Your Own Copilot & Agents For DevsBuild Your Own Copilot & Agents For Devs
Build Your Own Copilot & Agents For Devs
Brian McKeiver
 
Enhancing ICU Intelligence: How Our Functional Testing Enabled a Healthcare I...
Enhancing ICU Intelligence: How Our Functional Testing Enabled a Healthcare I...Enhancing ICU Intelligence: How Our Functional Testing Enabled a Healthcare I...
Enhancing ICU Intelligence: How Our Functional Testing Enabled a Healthcare I...
Impelsys Inc.
 
ThousandEyes Partner Innovation Updates for May 2025
ThousandEyes Partner Innovation Updates for May 2025ThousandEyes Partner Innovation Updates for May 2025
ThousandEyes Partner Innovation Updates for May 2025
ThousandEyes
 
TrustArc Webinar: Consumer Expectations vs Corporate Realities on Data Broker...
TrustArc Webinar: Consumer Expectations vs Corporate Realities on Data Broker...TrustArc Webinar: Consumer Expectations vs Corporate Realities on Data Broker...
TrustArc Webinar: Consumer Expectations vs Corporate Realities on Data Broker...
TrustArc
 
Drupalcamp Finland – Measuring Front-end Energy Consumption
Drupalcamp Finland – Measuring Front-end Energy ConsumptionDrupalcamp Finland – Measuring Front-end Energy Consumption
Drupalcamp Finland – Measuring Front-end Energy Consumption
Exove
 
Ad

Automated Build using teamcity

  • 1. Build A Project Build Using Automated Team City -: Md. Jawed [email protected]
  • 2. BUILD Automation Manual What are we… Automate Build Where do we want to be.. TeamCity + MsBuild How do we get there..
  • 3. Problem Statement Currently the Code is getting Compiled on Developer Local machine involvement of Manual Steps. Which is prone for error(s) as: 1. Time Consuming. 2. Trigger some build operations from within a development environment (IDE) is usually not sufficient: as it is often the case that some build operations are not supported within the IDE, it must be possible to perform a build outside of the IDE. 3. Introduce of Human Error. 4. No centralized Drop location 5. No instant Build notification to other team members about whether build failed or passed. 6. No Dedicated Build server. 7. Currently while compiling the code no Unit test, Code coverage and other analyses process getting executed. Just straight forward F5 or right click Select Build of respective project.
  • 4. Automated Build Process An automated build process compiles, deploys and then runs build verification tests (BVTs) against the latest source code for a project at regular, predetermined intervals. Then a “build report,” which details the success or failure of the build process, is disseminated to the project stakeholders. The build report is analyzed to determine what areas of the project need attention and/or if the project should be rolled back to an earlier version/build. The power of an automated build process is it can be scheduled to be run during “off hours” so it can help ensure the stability of the project without taking cycles directly away from the development time. This topic provides an overview of the build process, describes how build verification testing fits into the build process, describes aspects of functional testing used during build verification testing and provides information about the importance of automating the build process.
  • 5. Automated Build Process Advantages : 1. No More F5 or Right click Build. 2. An automated build process runs faster, saving valuable time in the development and deployment process. 3. An automated build requires less manual involvement, reducing the developer’s work load. 4. An automated build is more reliable because it reduces the number of opportunities for human error. 5. In an automated build process all actions are scripted, which creates intrinsic documentation of the steps involved in the build. 6. Builds Definition based on Environment like separated Build for DEV, DEV-Q, test and Production. 7. Build notifications. 8. Integrated the Build to run Unit test, Code Coverage or code Quality while compiling the tool. And published the result to Respective Stack Holder. 9. Builds can run at night – less network load, effective resource utilization -Early error detection (e.g. continuous integration, automated unit testing) -Automatic log archiving (all the information is saved) -Better processes – automation requires process revision and simplification, which more often than not leads to process improvement. 10. More Important Improved Software Quality
  • 6. Solution We have decided to Use Team City to Automate our Build Process. What TeamCity Offers • Software build automation and management • Team communication for the above • Code inspection and coverage analysis • Platform agnostic • Free professional version • Automate code analyzing, compiling, and testing processes, providing instant • feedback on build progress, problems and test failures, all in simple, intuitive • web-interface; • Run multiple builds and tests under different configurations and platforms • simultaneously. • Perform Pre-tested commits, helping the rest of a team sustain an • uninterrupted workflow. • Have build history insight with customizable statistics on build duration, success rate, code quality and custom metrics.
  • 7. Pulling It All Together • Periodically (to process daily or nightly builds), or • upon version control system check-in (by setting up VCS triggers), or • upon another build successful completion (by setting up dependencies). • TeamCity offers multiple ways to instantly notify you about build problems or any other changes in your projects • Detailed Test Results Analysis • Analysis of Unit Tests code coverage • Build History  For more information visit Below Link http://www.jetbrains.com/teamcity/features/index.html
  • 8. Approaches Separate Build server installed with Teamcity and Different Builds definition for respective Branch, Trunk, Tag and for Individual use. SVN Structure Team City Builds Drop Location Dev Build Dev Internal Test Internal Build Test-Q Test Build Test Production Production Build
  • 9. System Requirements To Setup Team city to Automate Build process we need below Server/Hardware and Software  Server: Windows 2008  Data Base: MS Sql server 2008 R2  Software Installed: Visual Studio 2010 IIS7.0+ Nunit Team City any Acetarx dependencies FXCop  Login: Dedicated Teamcity AD ,Having SVN permission  EmailID: Dedicated emailid for Notification.  Port: 8111
  • 13. Best Practices For Project Layout in SVN Here are some best practices for getting the most out of your project layout: Project root – This is the anchoring point for a project. A repository may contain one project root, or multiple roots, but each project root contains three subdirectories: /trunk, /branches, and /tags. The use of a project root is officially recommended by the Apache Subversion project. Trunk - This is where you should store current release code – only! Don’t muddy the trunk directory with revisions or release names. Branches – Use these to work on significant changes, variations of code etc, without disrupting the current release code. Bug fixing on a branch – Branches should be created to fix major bugs; this allows bug changes to be immediately worked on without disrupting whatever work is currently underway in the trunk/development branches. “Toe in the water” branches – Branches can be used as a code “sandbox” where new technology can be tested without risking the working code. If things go right, the new code can always be merged back into the trunk. Tags – Should be used as “code milestones” providing a snapshot of the code at specific points in its history. Tagging bug fix / development branches – when creating a code or bug fix branch, it’s useful to create a “pre” tag, and a “post” tag after the bug fix or code change has been completed: http://10.2.5.2:9880/encom/tags/PRE_authchange_bug9343 http://10.2.5.2:9880/encom/tags/POST_authchange_bug9343
  • 14. Perform Operation Copy to drop Published location Run test Compilation Check Out on Agent