image
Introduction to Continuous Integration
Intro
Difficulty
Beginner
Duration
57m
Students
26271
Ratings
4.7/5
Description

Continuous integration is the first step toward a completely automated development, deployment and operations pipeline. It helps to mitigate integration issues, and catch known issues early via automated testing. If you're new to continuous integration, this Course is a great place to start. We'll explore the various tools, technologies, and vocabularies surrounding the continuous integration ecosystem, as well as introduce you to the key tools of the trade that will enable you to get a headstart in your burgeoning DevOps career. 

Course Objectives

You will gain the following skills by completing this Course:

  • How to set up your development environment
  • How version control works
  • How to begin implementing testing in your environment
  • The why and how of database schema migrations
  • What Jenkins is and why you should care

Intended Audience

You should take this Course if you are:

  • A newcomer to the DevOps or cloud world
  • Looking to upgrade your skills from a conventional software development career

Prerequisites 

None specified.

This Course Includes

  • Expert-guided lectures about continuous integration
  • 57 minutes of high-definition video
  • Solid foundational knowledge for your explorations into DevOps

What You'll Learn

Video Lecture What You'll Learn
What Is CI? What continuous integration is and why it matters.

Creating a Development Environment

How to set up your development environment.
Version Control How version control interacts with the CI process.
Testing How to mechanize your testing with CI.
Database Schema Changes How to implement and run database schema changes.
Introduction to Jenkins An overview of Jenkins and how to utilize it within your CI process.

 

If you have thoughts or suggestions for this Course, please contact Cloud Academy at support@cloudacademy.com.

Transcript

Welcome to Introduction to Continuous Integration, I'm Ben Lambert, and I'll be your instructor for this course.

The goal of this course is to introduce you to Continuous Integration, also called CI. We'll take a look at what CI is, and why it's useful.

I'll introduce you to Vagrant and VirtualBox for setting up a development environment. I'll introduce you to Version control wit Git and GitHub.
I'll provide a brief introduction to testing specifically what tests are run as part of the CI process. I'll cover database schema changes, and the challenge that they pose. And I'll wrap up with an Introduction to Jenkins, a Continuous Integration server.

For this course, I'm assuming that you have either development or operations experience, however, I'm also assuming that you're new to the concept of Continuous Integration. So, we won't go into too much detail for this course, again the goal is to introduce you to the concepts around Continuous Integration.

My expectations of you are that by the end of this course, you will know at least the following.

First, you'll know what Continuous Integration is.

Next, you'll know why creating a development environment that mirrors production can reduce the potential for bugs.

You'll know what version control is, and you'll recognize some of the Git commands.

You'll know some of the tests that should be included in the CI process.

You'll know the challenge posed by schema changes.

And finally, you'll know some of the things that Jenkins can do.

Now, before we get started, I want to mention that in the settings for the video player, you can adjust the speed to your liking. I like to use two x so I can watch through a video during my lunch break. So play around and find the speed that's right for you.

Okay, if you're ready let's get started.

About the Author
Students
101181
Labs
37
Courses
44
Learning Paths
58

Ben Lambert is a software engineer and was previously the lead author for DevOps and Microsoft Azure training content at Cloud Academy. His courses and learning paths covered Cloud Ecosystem technologies such as DC/OS, configuration management tools, and containers. As a software engineer, Ben’s experience includes building highly available web and mobile apps. When he’s not building software, he’s hiking, camping, or creating video games.