Wise for Windows Installer – Continuous integration

msiexpert created the topic: Wise for Windows Installer – Continuous integration
Has anyone ever integrated Wise for Windows Installer into an continuous build/integration process? My plan is to have a try at this, using WFWI.exe and passing it a *.wsi with properties that won’t change between builds and passing in appropriate property values that will change (e.g. build version numbers, etc.) through the command line. Will this approach work? Does anyone have any thoughts on what I’m planning to do? Many thanks!

InstallerExpert replied the topic: Re: Wise for Windows Installer – Continuous integration
A lot of users have used WFWI in automated build processes.
The automation interface (via the wfwi.document object) also allows you a great deal of flexibility in directly editing the tables of your WSI using vbscript (for example), and then saving and compiling the end result.

Give it a try and if you encounter any specific issues then post here with details, including your version of Wise tools.

Tagged :

Is it Continuous Compilation Or Continuous Integration?

Hello Friends,

I am creating a checklists of questionnaire for the project mgmt to know the fact whether their project is CI or CC. I have got here few points which can be asked to Dev mgr to findout if they are CC or CI.

Please add your inputs as well if I am missing anything here….

How much code coverage do you have with your tests?
How long does it take to run your builds?
What is your average code complexity?
How much code duplication do you have?
Are you labeling your builds in your version control repository?
Where do you store your deployed software?
Regards,
Rajesh Kumar
Twitt me @ twitter.com/RajeshKumarIn

Tagged :

Top 5 Cloud Based Continuous Integration Tools

top-5-cloud-based-continuous-integration-tools
Today we are going to discuss about Cloud based continuous integration tools. As we already discussed about Continuous integration, it’s benefits and top continuous integration tools in our previous article which was published few weeks ago, you can click here go there. In this article, we tried to make your selection process easy if you are looking for cloud based continuous integration tools.
These days organisations are increasingly turning to cloud based options for continuous integration and this is obvious because cloud based options allows you hassle free process. You don’t need to build new server, downloading or installing or configuring the softwares in local platform. You don’t need to spend your time to manage or upgrade them frequently. Alongwith that when you need more resources during business hours, you also get the leverage for infrastructure resources on-demand and greatly reduce the time to run large builds or regression test suites. Therefore cloud hosted CI tools are on demand, just configure and go.
So, without any further ado, let’s check out the Top 5 Cloud based Continuous Integration tools.
1. Travis CI
Travis CI
Travis CI is a cloud based continuous integration tool which is developed by Travis CI community. This is written in Ruby and it is an open source tool. You can easily synchronise GitHub projects with this tool. It’s supports platforms like Linux, Mac or iOS and also supports many languages in which Node js, php, Xcode, python, java, are few of them.
Key Features
  • Supports pull request and branch build flow
  • Run tests in parallel
  • Great API and command line tool
  • Open Source tool
  • Multi-language support
  • Easy to sync GitHub projects
  • Pull request build flow
  • Branch build flow
  • Notifications by Slack, HipChat, Emails and more
  • Deploy to S3 and Heroku
2. Go CD

Go CD

Go CD is also amongst the top tools which is used for cloud based continuous integration. However, Go CD is continuous delivery tool. This tool is written in Java and Ruby and available under Apache license. It was Developed by ThoughtWorks in the year 2007 and renamed GoCD later in the year 2010.
Key Features
  • Open source tool
  • Supports Cross platform
  • Manual triggers to customise and save good versions of Apps
  • Value Stream Map allows you to track a change from commit to deploy at a glance.
  • Test reporting
  • compare builds feature for both files and commit messages – across any two arbitrary builds
  • Allow to set multiple servers to keep your data available in the case of an emergency
  • GitHub Integration
3. CircleCI
CircleCI
CircleCI is a cloud based continuous integration software which is belongs to Circle CI and was founded in the year 2011. It is available as free and paid with trail option. It is integrated with popular code management services such as GitHub & Bitbucket. It supports languages like Python, Node.js, Ruby, Java, Go, etc.
Key Features
  • Free plan even for a business account
  • Rest API — you have an access to projects, build and artifacts
  • You can trigger SSH mode to access container
  • Integrated with Github & Bitbucket
  • It’s easy, lightweight and fast to start
  • Compatible with Ubuntu and Mac OS X
  • Compatible with AWS, Azure, Heroku, Docker, dedicated server
4. GitLab CI
GitLab CI
GitLab CI is also amongst the best Hosted continuous integration tool which belongs to GitLab Inc and available under open source and commercial license. This is written in Ruby and Go. Gitlab build scripts are command line driven and work with Java, PHP, Ruby, C, and any other language.
Key Features
  • Fully integrated with GitLab
  • Supports platforms like Unix, Windows, OSX, and any other platform that supports Go
  • Tests run distributed on separate machines of which you can add as many as you want
  • GitLab CI offers the same great experience as GitLab. Familiar, easy to use, and beautiful.
  • Easy to use
  • Each build can be split in multiple jobs that run in parallel on multiple machines
  • There are multiple executors and you can reproduce tests locally
5. Codeship

Codeship

Codeship is one of the most powerful cloud based CI tool which available in open source but for support you need to choose paid option. It’s easy to start using Codeship, the size of team and needs does not affect the performance. This tool works on GitHub and Bitbucket, but you can use it with docker platform too by opting packages. This tool support languages such as Java, PHP, Ruby (Rails), Node.js, Python, and Go.
Key Features
  • Easy to start and Use
  • Fully customizable hosted CI platform
  • You can sign up with GitHub, GitLab & Bitbucket
  • Flexible Pricing
  • ParallelCI feature
  • Open source tool but for support you need to pay
  • Docker Supported (by upgrading)
Do you agree with this list? If not than feel free to respond in the comment box with your own take on the top cloud based or hosted continuous integration tools. One more thing, I would like to add here, if you need help to learn all these build tools or DevOps courses than scmGalaxy can help you in this. scmGalaxy is a community of DevOps professionals who are well experienced in this domain. So, feel free to contact us.
Tagged : / / / / / / / / / / / / / /

Top 10 Continuous Integration Tools | List of Best CI Tools | scmGalaxy

continuous-integration-tools
Today we are present here with another interesting article which will help you to know about the best tools which are used for continuous integration in DevOps practices.
Continuous Integration has become a mainstream technique for software development. Which makes it mandatory to implement it in your software development lifecycle (SDLC). But implementation of CI required best selection of tools to achieve good results and there is still a confusion amongst beginners and even in vetrans of software industry while choosing the best tools. So keep reading, I have done some research and compile a list of CI tools which will definitely going to help you.
Before going further, let’s first see what is Continuous Integration?
Continuous Integration is a practice in DevOps software development process which improves the quality of the code. In this practice all the developers who are related and working on the project integrate there codes into a central repository frequently for several times in a day. After which automated build and automated tests run, which verify each integrations in the repository. The main objective of the continuous integration is to provide rapid feedback when any defect is found in the code base and correct it as soon as possible.
Now we know about continuous Integration but one question arises here, Why we do Continuous Integration?
So, Now let’s see the benefits of CI
  • Earlier finding & addressing of Bugs – By implementing continuous integration you can do frequent testings which helps to find bugs and error quickly before they ruin your whole efforts later.
  • Improve software quality – Early finding issues in the codes, developers can act on them early before they grow into larger problems later,  which ultimately improves the quality of the software.
  • Reduce the time it takes to validate – CI immensely reduce the waiting time to find out if your code’s going to work or not.
  • Release new software updates – Doing frequently and numbers of time automated build and test of codes helps teams to deliver the new updates to the user more often and faster.
So, these are the major benefits of CI. Now back to the point and purpose of this article, as I said earlier continuous intergation needs various tools to implement the process and choosing amongst the available tools for your purpose can be a daunting task, especially when you are going to select for the first time.
So, without further wasting any time let’s check out the top 10 Continuous integration tools.

1. Jenkins

jenkins
Jenkins is a Java written Continuous Integration tool, which was initiated as the fork of Hudson after conflict with oracle. It is a cross platform tool which allow GUI interface and console commands configuration. It available under MIT license which make it free to use. It supports rich plugins that integrates with virtually every existing software configuration management [SCM] or builds tool.

Features:- 

  • Open Source
  • Easy installation
  • Easy configuration
  • Rich plugin ecosystem
  • Extensibility
  • Distributed builds
  • Platform: Cross-platform

2. TeamCity

teamcity

 

TeamCity is one of the mature and wise java based continuous integration server which is belongs to JetBrains labs. It is available in free and paid license for users. It’s free version offers almost all the features but for up to 20 build configurations and 3 free Build Agents. Teamcity also supports different tools and frameworks and also it’s available with wide variety of plugins. It’s also support .Net features which makes it suitable for .Net projects.

Features :- 

  • Free and Paid
  • Gated Commits (prevents developers from breaking sources in a version control system by running the build remotely for local changes prior to commit)
  • Build Grid. Allows running multiple builds and tests under different platforms and environments simultaneously
  • Integrated code coverage, inspections and duplicates search
  • Integration with IDEs: Eclipse, IntelliJ IDEA, Visual Studio
  • Platforms supported: Java, .NET and Ruby
  • Supports cloud integration

3. Travis CI

travis ci

 

Travis CI is an open source continuous integration tool which is written in RUBY. It’s easily get sync with GitHub. It’s supports platforms like Linux, Mac or iOS and also supports many languages in which Node js, php, Xcode, python, java, are few of them. It also performs parallel test runs using their great APIs and command line tools.
  • Open source
  • Supports pull request and branch build flow
  • Parallel test runs
  • Easily synchronize with GitHub
  • Flexible plans for every size project
  • Platforms: Hosted
  • Supports Many Languages like Node js, php, Xcode, python and many more.

4. Microsoft Team Foundation Server

tfs
Team foundation server which is also abbreviated to TFS is a product of microsoft. It is a collaborative tool that consists the code repositories, continuous integration, and bug or task tracking. TFS perform in environment like Eclipse, Xcode, Visual Studio or in Git client. It’s also support languages like Python, C#, HTML, Java and various others too. It is available for free downloading but under trialware license.

  • Trial-ware
  • Supports many languages like Python, C#, HTML, Java and various others
  • Work in any environment like Visual Studio, Xcode, Eclipse, or any Git client
  • Extensible tool can work effectively for all shapes and sizes

5. Bamboo

bamboo

Bamboo is also one of the top continuous integration tool which is developed by Atlassian. This is available with free trial license. Bamboo is written in Java and it is easily works with JIRA & Bitbucket. It’s also allow you to import jenkins data to Bamboo easily. Bamboo also supports others tools like AWS, Amazon S3, Ant, Docker, codeDeploy, Maven, Git & SVN.

Features:- 

  • Paid and Free trial
  • Cross platform
  • Allow to Import data from Jenkins
  • Works with JIRA and Bitbucket
  • Works with others tools like CodeDeply, Ducker, Maven, Git, SVN, Mercurial, Ant, AWS, Amazon S3 buckets
  • Support many languages
  • Can run multiple builds parerally
  • customization of triggers and variables
  • Very fast and easy to use

6. UBuild-UDeploy-URelease

ubuild-udeploy-urelease
UBuild-UDeploy-URelease is also known as Urbancode deploy is a collaborative product of IBM. It provides continuous delivery, self-service, speedy feedback and progressive updates within the agile development and automates the applying deployments during a consistent manner. With urbancode You can systemise the changes you pushed on servers, tiers and components and also restore the applications.

Features:- 

  • Licensing plans
  • Hosted service
  • Server virtualization
  • Integrated with middle-ware
  • Clear visibility: what is deployed where and who changed what
  • Configuration and security differences across environments
  • Orchestration of changes across servers, tiers and components
  • Automated provisioning, updating, and de-provisioning of cloud environments
  • Automated, consistent deployments and rollbacks of applications

7. Go CD

go cd


Go CD
 is a free of charge (excluding commercial support) tool written in Java and Ruby which belongs to ThoughtWorks. This tool works on Linux, Windows and Mac Platforms. It’s also supports many languages but which makes it stand out among-st the tools is the Pipeline concept which makes build process easy and it eliminate the file-handle leak errors and fix the OOM on agents when parsing large xml test artifacts.

Features:- 

  • Availability: Free with paid support
  • Platform: Windows, Linux, Mac
  • Pipeline Concept
  • Parallel execution of the tasks
  • Support Many languages
  • Easily compare builds
  • Clearly visualize workflow
  • Promote trusted artifacts
  • Plugins availability
8. GitLab CI

gitlab ci

GitLab CI is an open source and also comes with commercial licesnse continuous integration tool. It belongs to Gitlab inc. which is written in Ruby and Go. This tool support platforms like Windows, OSX , Linux, Unix and various others which supports Go. Gitlab work with languages like Java, PHP, Ruby, C and with various others too.

Features:- 

  • Platform: Hosted
  • Availability: Free and paid with trial
  • Easy to learn
  • GitLab CI is fully integrated with GitLab
  • Docker support
  • Pipeline Concept
  • Supports multi-languages – Java, PHP, Ruby, C etc..
  • Parallel builds
  • Autoscaling
  • Build artifacts

9. CircleCI

circleci
CircleCI is also belongs to Gitlab Inc, free and paid with trail option which runs in any environment like cross platform mobile app too. Circle ci supports languages such as Python, Ruby/Rails, Node.js, PHP, Haskell, Skala and Java. This tool is scalable which minimize the errors and improves application quality. Circle CI also supports Docker.

Features:- 

  • Availability: Free and paid with trial
  • Platform: Cross platform
  • Supported languages includes Java, Ruby/Rails, Python, Node.js, PHP, Haskell, and Skala
  • Supports Docker
  • Flexible pricing model

10. Codeship

codeship

Codeship is also an powerful hosted CI tool which is available with free and paid support options. This tool is very easy to set up and it automatically deploy the passed tests results. This tool works on GitHub and Bitbucket, but you can use it with docker platform too by opting packages. This tool support langusges such as Java, PHP, Ruby (Rails), Node.js, Python, and Go.

Features:- 

  • Availability: Free and paid
  • Platform: Hosted
  • ParallelCI feature
  • Supported languages Go Ruby on Rails, Node.js, PHP, Java, Go, Dart etc..
  • Flexible Pricing
  • Docker Supported (by upgrading)
  • Easy to setup, fast and reliable
So, this is my list of top continuous integrations tools. Hope my efforts will help you in your Continuous integration process. One more thing, I would like to add here is that, if you want to learn the continuous integration process or you need support to get started with these tools in your work environment than scmGalaxy offers support from industry experts. And, If you think that any others tools deserves place in this list than feel free to share with us in the comment section.
Tagged : / / / / / / / / / / / / / / / / / / / / / / /

DevOps Courses and Training | DevOps Training | Online | Classroom

devops-course-training
About the DevOps Course
DevOps integrates devlopers and operation teams in order to improve collobration and productivity by automation infrastrcure, automationg workflows and continously application performance. DevOps helps You deliver the best user experience possible and benefits your company by increasing the frequency of deployments of your software and services. DevOps Helps to improve performance and quickly release of application. As rapid delivery of software has become a strategic business asset, progressive IT organizations are pursuing a DevOps culture, where development and operations teams, systems, and tools work in lockstep. By aligning goals and sharing tools and strategies, you can improve velocity and code quality, allowing you to innovate faster.
In this course, we look at the necessity of Devops and how a DevOps transformation can help focus on value and streamlined delivery of your software. We will also cover concepts like Automation, tools & technology which play huge roles in DevOps success;
Course Objective – DevOps
After the completion of DevOps course at DevOpsCo, you will be able to :
  1. Understand the need for DevOps and the problems it resolves.
  2. Learn about the common Infrastructure Servers, Scalability and Availability
  3. Implement Automated Installations and Deployments
  4. Understand Performance and basic Security for Infrastructure
  5. Implement Virtualization Concepts
  6. Understand the need and concepts of Monitoring and Logging
  7. Understand the Continuous Integration and Deployment (CI/CD)
  8. Learn various DevOps tools Chef, Puppets, Jenkins, Nagios, Docker, GIT, etc
Who should go for this course?
This course is a foundation to anyone who aspires to become a DevOps Engineer, a Service Engineer in the field of Enterprise Infrastructures. The following professionals are the key beneficiaries of this course :
  1. DevOps Engineer
  2. Build and Release Engineer,
  3. AppOps Engineer,
  4. Site Reliability Engineer
  5. System Administrator
  6. Operations Engineer
  7. Automation Engineer
Who should go for this course?
This course is a foundation to anyone who aspires to become a DevOps Engineer, a Service Engineer in the field of Enterprise Infrastructures. The following professionals are the key beneficiaries of this course :
  1. DevOps Engineer
  2. Build and Release Engineer,
  3. AppOps Engineer,
  4. Site Reliability Engineer
  5. System Administrator
  6. Operations Engineer
  7. Automation Engineer
This course will also help professionals who is somehow associated with cloud infrasture, managing the team or from development and Testing background.
  1. Project Managers,
  2. Testing Professionals,
  3. Software Developers and Architects,
And have experience with either administering IT infrastructure/applications or with automation
Pre-requisites
  1. Basic understanding of linux/unix system concepts
  2. Familiarity with Command Line Interface (CLI)
  3. Familiarity with a Text Editor
  4. Experience with managing systems/applications/infrastructure or with deployments/automation
How to contact?
  1. info@scmGalaxy.com
  2. +91 700 483 5930
  3. skype – scmGalaxy
How to enroll for this training?
Testimonials : What professionals feel about our training?

Please read our training and courses review at…

Web

Youtube

Facebook

FAQ : Do you have additional questions?
Please click on this url to know Click Here
Why Online training is more preferred than classoom?
Please click on this url to know Click Here
Classroom Training and Workshop?

We do offer classroom training and workshop in Bangalore, Hyderabad, Pune, Mumbai and New Delhi. For more details, please send us an email to info@scmGalaxy.com

Also, you can follow this url Click Here

Fees Details (Fixed)

With Lifetime Enrollment
INR 25K

Why to Learn DevOps
  1. Technical benefits: Continuous software delivery
  2. Technical benefits: Less complex problems to fix
  3. Technical benefits: Faster resolution of problems
  4. Business benefits: Faster delivery of features
  5. Business benefits: More stable operating environments
  6. Business benefits: More time available to add value (rather than fix/maintain)
Course Features:
  1. 30 Hours instructor led online class
  2. Hands on Approach – We emphasize on learning by doing.
  3. Life time free re-enrollment to future DevOps courses
  4. Life time free access to all learning materials including
    1. Class recordings
    2. Presentations
    3. Sample Code
    4. Projects
  5. Total Lab Infrasture in cloud and 24×7 available
  6. 70% of the class is consist of Lab
  7. Each week assignments (total 4) with personal assistance
  8. Two real time senario based projects with standard evaluation
  9. 24×7 online support to queries during and after the course completion
  10. 1 dedicated class for Interview preparations
  11. Online Quizs for each tool
  12. Lifetime Free access to Our Learning Portal for FreeVideos, Scripts Collection, Quiz, Interview Guide, Projects, Tutorials etc.
  13. Two Courses One Fee – DevOps and Build & Release which includes Chef and Puppet courses are together is being offered to our students.
  14. Life time Enrollment – Once you enroll, its life time enrollment. That means you can attend any number of session, Any Batch, Any time without paying another time for DevOps, Build & Release, Chef and Puppet. That means all courses, only one fees for life time.

Agenda of the training: DevOps Concept and Process

  1. Continous Integration and Delivery Process
  2. Problem That DevOps Solves
  3. Explore the DevOps background, approach, and best practices
  4. Integrate test automation with DevOps
  5. Implement continuous testing
  6. Learn how DevOps practices and principles improve software quality and efficiency
  7. Understand the differences between DevOps and traditional operational methodologies
  8. Discover the major steps required to successfully implement delivery pipelines
  9. DevOps Transition to a Project
  10. Understanding the Continuous Integration and Deployment (CI/CD)
  11. Implement DevOps – Organization & Culture

Agenda of the training: Tools and Technologies

DevOps Concept, Foundation, Culture, Best Practices and Learning

  • Problem That DevOps Solves
  • Implement DevOps – Organization & Culture
  • Continous Integration and Delivery Process
  • Explore the DevOps background, approach, and best practices
  • Integrate test automation with DevOps
  • Implement continuous testing
  • Discover the major steps required to successfully implement delivery pipelines
  • DevOps Transition to a Project

Operating Systems
Windows
Linux (CentOs & Ubantu)

Version Control Management Tools Using
Git

Build & Lifecycle Management Tools Using
Maven
MSBUILD
Gradle

World of Application Packaging Tools with 
Nuget
YUM
APT

Virtualization and Container with
Docker
Vagrant

Static Code Analysis using
SonarQube

Test Coverage using
Jacoco
Cobertura

Incident and Task Management System
Jira

Configuration Management, Automation & Deployment Tools Using 
Chef
Puppet

Continuous Integration & Delivery Using
Jenkins

Understanding the Cloud Infrastructure with 
Amazon AWS EC2

Server Monitoring Tools with 
Nagios

Programming and Scripting with 
Bash Scripting
Ruby Fundamental

Tagged : / / / / / / / / / / / / / / / / / / / / /

Shell Scripting (Bash) Training | Bash/Shell Scripting Course

shell-bash-scripting-training

Introduction

  • Introduction
  • Why Shell Scripting?
  • Linux Internal
  • What to Expect From This Course?
  • Prerequisites

Git fundamental

  • Introduction of git
  • Git setup
  • Basic operations in git
  • Github
  • Summary

A First Look At Shell Scripts

  • Introduction
  • Creating A Shell Script
  • Demo: A Note-Taking Script
  • Calling The Script
  • The Shebang
  • Naming Your Script
  • Demo: The type Command
  • Summary

Variables

  • Introduction
  • Demo: Variables
  • Using Variables in A Script
  • Using Variables: Good Habits
  • Reading Input
  • Debugging your Script
  • Summary

If, Then, Else

  • Introduction
  • Demo: The If Statement
  • The If Statement
  • Return codes
  • The Conditional Expression
  • Demo: The Conditional Expression
  • The Conditional Expression 2
  • Arithmetic Tests
  • Demo: Arithmetic Tests
  • The If Statement Revisited
  • And, Or, Not
  • Summary

Input and Output

  • Introduction
  • Output: echo and printf
  • Input: read revisited
  • Standard Streams and Redirection
  • Demo: Redirection
  • Summary

Control Flow

  • Introduction
  • While and Until
  • The Classic For Statement
  • The C-Style For Statement
  • Break and Continue
  • The Case Statement
  • && and ||
  • Summary

Variables 2

  • Introduction
  • Integer Variables
  • Arithmetic Expressions
  • Arithmetic Expressions 2
  • Read-only Variables
  • Exporting Variables
  • Arrays
  • Summary

Handling Script Parameters

  • Introduction
  • Special Variables
  • Shift
  • Getopts
  • Getopts: Handling Errors
  • Summary

Shell Functions

  • Introduction
  • Shell Functions
  • Shell Functions 2
  • Functions: Demo
  • Some Miscellaneous Remarks
  • Summary

Fun with Strings

  • Introduction
  • Removing Part Of A String
  • Search and Replace
  • Setting A Default Value
  • Conditional Expression Patterns
  • Regular Expressions in The Conditional Expression
  • End of Options
  • Summary

Many Ways to Run Your Script

  • Introduction
  • Running your Code
  • Nohup and The Background
  • Exec
  • At and Cron
  • Set and Shopt
  • Summary
Tagged : / / / / / / / / / / / / / / / / / / / / / / / / /

Going meta with Meta-Runners in TeamCity

teamcity-meta-with-meta-runners

Going meta with Meta-Runners in TeamCity

Official Reference – https://confluence.jetbrains.com/display/TCD9/Working+with+Meta-Runner

We have seen that build runners can be very handy. Even though most build runners can be replaced with an equivalent command using the command-line runner, build runners come with the convenience of easily setting up build steps, along with the necessary agent requirements and parameters.

Meta-Runners provide a straightforward way to create custom build runners. Meta-Runners can be thought of as a way to avoid duplications in build steps across build configurations.

Note

While templates can be used to create and maintain build configurations that are very similar, Meta-Runners can be used across build configurations that perform the same build steps. Moreover, a build configuration can only be based on one template, but it can make use of multiple Meta-Runners.

In Chapter 3, Getting Your CI Up and Running, we created the deploy-to-test build configuration that deploys the Django application to Heroku. Using this build configuration as an example, we can see how we can extract a Meta-Runner Deploy To Heroku that can be used by any build configuration that wants to deploy to Heroku.

Recall that the deploy-to-test build configuration had a simple command-line runner that executed the following commands:

git remote add heroku git@heroku.com:django-ci-example.git  git push heroku master

To create a generic Meta-Runner out of this, we need to provide a way to push to any remote, rather than just git@heroku.com:django-ci-example.git.

Note

Deploying to Heroku using remotes needs the ssh keys to be set up on the agent. The example used here just illustrates Meta-Runners and may not be ideal for production use.

As mentioned in Chapter 6, TeamCity for Ruby Projects, we can use a gem such as heroku-headless (https://github.com/moredip/heroku-headless).

As expected, we will do this by extracting the remote out into a build parameter. The command-line runner will have the following as the Custom Script to be run:

git remote add heroku %heroku.remote%  git push heroku master

We will provide the value for the %heroku.remote% parameter in the Build Parameters section of the build configuration.

Now we are ready to create a Meta-Runner from this build configuration. This can be done by clicking on the Extract Meta-Runner button in the right-hand side bar of the build configuration settings page. This brings up the Extract Meta-Runner dialog, which is shown in the following screenshot:

Going meta with Meta-Runners

In the dialog, we give a name to the Meta-Runner. This is the name that will appear in the Runner Type field when configuring a build step for a build configuration.

Click on Extract to create the Meta-Runner. Once the Meta-Runner is created, we can see it listed in the Meta-Runners tab on the project administration page. We can also edit the Meta-Runner to fine-tune it as desired.

Tip

A Meta-Runner is essentially an XML configuration (much like most TeamCity configurations) that can be edited directly from the web interface.

The following screenshot shows the edit page of the Deploy To Heroku Meta-Runner that we just created:

Going meta with Meta-Runners

The Meta-Runner extracts all the parameters and steps defined in the build configuration. We can edit the Meta-Runner to have only the necessary parameters and steps.

Using Meta-Runners

We can now use the Meta-Runner that we created pretty much like a normal build runner. We will remove the existing build step in the deploy-to-test build configuration (from which we extracted the Meta-Runner) and add a Deploy To Heroku Meta-Runner-based build step.

Tip

We can also disable build steps if we don’t want to remove them while experimenting.

In the New Build Step page, for the Runner type field, the newly created Deploy To Heroku Meta-Runner is available, as shown in the following screenshot:

Using Meta-Runners

Once we choose the Deploy To Heroku Meta-Runner, we can see that the heroku.remote parameter is one of the fields to be configured. Since we created the Meta-Runner with the heroku.remote parameter with the value git@heroku.com:django-ci-example.git, that remote is available by default. The Deploy To Heroku runner configuration page is shown in the following screenshot:

Using Meta-Runners

Tip

It is possible to remove the value for parameters in the Meta-Runner XML so that no default values are present for the fields.

We can click on Save to add the build step. The new build step, based on the Deploy To Heroku Meta-Runner, will function in the same way as the previous build step based on the command-line runner.

Note

Of course, the value of Meta-Runners becomes more apparent when we create them out of multiple build steps. The same set of steps that may be repeated across multiple configurations can be extracted i

Tagged : / / / / / /

Build and Release Course Training with Jenkins / Maven /Ant/ SVN & Git

build-and-release-training-with-jenkins-maven-ant-svn-git

Upcoming Training Dates | Training Agenda | Training Calender | FAQ | Why scmGalaxy Online Training

Click Here

Mode – Online based
Email – info@scmgalaxy.com

Lab Setup Details – Prerequisites
Operating Systems – Windows 7 or Linux(RHEL 7.X or Ubantu)
JDK 1.7 or Higher
SCM Tool Clients Installed (SVN, GIT, Perforce)
Servlet container like GlassFish and Tomcat (If one wants to host Jenkins outside) – Optional

[If trainee is having any specific learning agenda to be addressed in this training apart from the table of Content as below; please email me @ info@scmgalaxy.com]

Table of Content

Continuous Integration with Jenkins

  • What is Software Configuration Management
  • What is Build and Release Engineering
  • Introduction of Version Control Management?
    • Basic usage of Subversion
    • Basic usage of git
  • Introduction of Build Management?
    • How to write ant script?
    • How to write Maven script?
    • How to write MSBuild Script?
  • Introduction of Release Management?
  • Benefit of Continuous Integration?
  • Different Continuous Integration Tools?
  • Focus on Jenkins
  • Installation and Setup of Jenkinks
  • Configure a Job to Build the Project using SVN /GIT and ANT/Maven
  • Using Build Script (Ant, Maven and MSBuild) with Jenkins
  • Authentication and Authorization in Jenkins
  • Lab and Assignment
  • Nodes Setup in Jenkins
  • Labels, Tags and Notification using Jenkins
  • Empowered with Plugins in Jenkins
  • 20 Popular Plugins and Their Usage
  • Integrating Jenkins with Junit for automated testing
  • Integrating Jenkins with HP-QC for automated testing
  • Integrating Jenkins with Cobertura for test Coverage
  • Integrating Jenkins with Sonar for static code analysis
  • Release and Deployments using Jenkins and Nexus
  • Advance Jenkins
    • Jenkins Scripting
    • Jenkins Command line
  • Reporting and Dashboard using Jenkins
  • Lab and Assignment

Build and Release Training In Bangalore | Build and Release Training in India | Build and Release Training in Hyderabad | Build and Release Training in Delhi | Build and Release Training in Pune | Build and Release Trainer In Bangalore | Build and Release Trainer in India | Build and Release Trainer in Hyderabad | Build and Release Trainer in Delhi | Build and Release Trainer in Pune

Tagged : / / / / / / / / / / / / / / / / / / / / / / / /

Build and Release Training in Bangalore

build-and-release-training-in-bangalore

Upcoming Training Dates | Training Agenda | Training Calender | FAQ | Why scmGalaxy Online Training

 

Click Here


Mode – Online

Lab Setup Details OR Prerequisites for personal Laptop

Operating Systems – Windows 7 or Linux (RHEL 7.X or Ubantu)
JDK 1.7 or Higher,
SCM Tool Client and server Installed (SVN, GIT, Perforce)

Send us an email to info@scmgalaxy.com with the confirmed payment receipt for acknowledgement

Free Lunch would be serve to all Participants.
Registration is based on First Come basis and only confirmed registration would be considered.

  1. What is Software Configuration Management
  2. What is Build and Release Engineering
  3. Introduction of Version Control Management?
  4. Basic usage of Subversion
  5. Basic usage of git
  6. Introduction of Build Management?
  7. How to write ant script?
  8. How to write Maven script?
  9. How to write MSBuild Script?
  10. Introduction of Release Management?
  11. Benefit of Continuous Integration?
  12. Different Continuous Integration Tools?
  13. Focus on Jenkins
  14. Installation and Setup of Jenkinks
  15. Configure a Job to Build the Project using SVN /GIT and ANT/Maven
  16. Using Build Script (Ant, Maven and MSBuild) with Jenkins
  17. Authentication and Authorization in Jenkins
  18. Lab and Assignment
  19. Nodes Setup in Jenkins
  20. Labels, Tags and Notification using Jenkins
  21. Empowered with Plugins in Jenkins
  22. 20 Popular Plugins and Their Usage
  23. Integrating Jenkins with Junit for automated testing
  24. Integrating Jenkins with HP-QC for automated testing
  25. Integrating Jenkins with Cobertura for test Coverage
  26. Integrating Jenkins with Sonar for static code analysis
  27. Release and Deployments using Jenkins and Nexus
  28. Advance Jenkins
  29. Jenkins Scripting
  30. Jenkins Command line
  31. Reporting and Dashboard using Jenkins
  32. Lab and Assignment

Build and Release Training In Bangalore | Build and Release Training in India | Build and Release Training in Hyderabad | Build and Release Training in Delhi | Build and Release Training in Pune | Build and Release Trainer In Bangalore | Build and Release Trainer in India | Build and Release Trainer in Hyderabad | Build and Release Trainer in Delhi | Build and Release Trainer in Pune

Tagged : / / / / / / / / / / / / / / /

Continuous Integration Training | Continuous Integration Course | Online | Classroom | India

continuous-integration-training

Continuous integration techniques with MSBuild, TeamCity, NUnit, NCover, FxCop, and Microsoft Web Deploy

scmGalaxy is a community initiatives based on Software configuration management that helps community members to optimize their software development process, Software Development Life Cycle optimization, Agile Methodologies and improve productivity across all aspects of Java development, including Build Scripts, Testing, Issue Tracking, Continuous Integration, Code Quality and more. scmGalaxy group that helps organisations optimize their software development process. We provide consulting, training and mentoring services in Agile Development Practices such as Version Management, Continuous Integration, Build Management, Test-Driven Development, Acceptance-Test Driven Development, Build Automation, Code Quality Practices and Automated Testing.

We provide job oriented training in the area of Configuration management, Build and Release Engineering. Candidates with engineering or software background and looking to either start or change their career to Build and Release Engineering, would benefit most from this training. Instructor-led training course offered in India, Bangalore, Delhi, Pune, Mumbai and Hydrabad. Instructor is an expert in Software configuration management, Build and release engineering with more than 15 years industry experience in india.The Goal of the course make the training attendants equip with all the concepts of build and release engineering.

Contact us at info@scmGalaxy.com | Call – +91 700 483 5930 | Skype – scmGalaxy

Course Objectives
To bring your team up to speed with agile development, We can also run the from Continuous Integration to Continuous Delivery with autoamted course within your premises.

Course Schedule
This course is an intensive 1-day & 2-day workshop with a mixture of teaching and lab exercises. Currently, this course is offered exclusively as an on-site course. Please contact us for more details.

Audience
This is a hands-on, practical course designed to teach specialised skills for real-world development situations. It is thus primarily aimed at a SCM Engineer, Build/Release Engineer and developer audience.

Approach
The course is modular and flexible – depending on specific student needs and requests. Through our trainings, you benefit from the wide experience and architectural expertise of our team. We bring that experience to you in an highly interactive, intensely hands-on setting.

Assumptions
We assume participants have a reasonable understanding of Development in any language as well as a basic understanding of the Software Development Life Cycle.

Lab Work
All our courses are above all practical in nature. We believe that the best way to learn is by doing. So the course contains approximately 80% lab work.

Learning Resources
Each registrant will receive a copy of the student notes and lab solutions, a certificate of completion, and a CD containing all the tools covered in the course and CD containing all the tools covered in the course.

Contact Us
This course is provided on-site, and can be tailored to your particular requirements. If you would like our trainings delivered at your premises, or for any additional information please contact us. Please email us at info@scmGalaxy.com

Course outline

The basic course program is outlined here:

A Gentle Introduction

  • Overview
  • Levels of Code Confidence
  • CI as an Enabler
  • Benefits of Continuous Integration
  • Summary

Minimum Requirements

  • Overview
  • The Check-In Dance
  • Continuous Integration Do’s and Don’ts
  • Summary

Building a Solution

  • Building a Solution
  • Overview
  • Hello, Continuous Integration
  • Recommended Solution Layout
  • The Software
  • Building on the CI Servera
  • Build Failure Notifications
  • Receiving a Build Failure Notification
  • Summary

Build Scripts

  • Build Scripts
  • Overview
  • Why Do We Need a Build Script?
  • Decision Point: How to Add Build Steps
  • Recommendation: Do Not Modify csproj/vbproj
  • Recommendation: Do Not Script csc.exe/vbc.exe
  • Recommendation: Script Everything, but Compile with MSBuild
  • Why the Command Line?
  • Hello, MSBuild
  • Defining Targets
  • Running from the Command Line
  • Compiling the Solution
  • Setting the Default Target
  • Eliminating Duplication
  • Switching Between Debug and Release
  • Scripting Other Tasks
  • Using Custom Tasks
  • Handling Non-Fatal Command Failures
  • Depending on Multiple Targets
  • Running on the CI Server
  • Summary

Integrating External Tools

  • Integrating External Tools
  • Overview
  • External Tools
  • Test Runners
  • Integrating NUnit via Exec Task
  • Failing the Build with Exit Codes
  • Running Tests on the Build Server
  • Displaying Test Reports
  • Coverage
  • 100% Coverage Myth
  • Integrating Coverage
  • Integrating NCover via Custom MSBuild Tasks
  • Failing the Build on Low Coverage
  • Running Coverage on the Build Server
  • Static Code Analysis
  • Integrating FxCop
  • Failing the Build by Analyzing XML Output
  • Summary

Deployment Automation

  • Overview
  • Packaging/Deployment Options
  • Server Preparation
  • Deployment Pipeline
  • Continuous Deployment
  • Adding Packaging to the Build Script
  • Finding Microsoft Web Deploy on a Developer Machine
  • Packaging from the Command Line
  • Packaging on the Build Server
  • Installing Microsoft Web Deploy on the Web Server
  • Adding Deployment to the Build Script
  • Integrating Deployment into the Pipeline
  • Demonstrating Continuous Deployment
  • Summary
Tagged : / / / / / / / / / / / / / / / / / / / / /