4.26 out of 5
4.26
216 reviews on Udemy

DevOps with GIT(Flow) Jenkins, Artifactory, Sonar, ELK, JIRA

Complete Hands-On DevOps course that will demonstrate efficient use of DevOps Tool Chain
Instructor:
Nand Venegalla
1,462 students enrolled
English [Auto-generated]
Build DevOps environment for their organization.
Expand the DevOps environment for multiple use cases in their organization.
Identify DevOps toolchain fit for their organization and customize as needed.
Full fledged environment setup for major categories in DevOps toolset.

What you will learn and why you should learn DevOps ?

Are you ready to understand and increase your knowledge about DevOps ? Lot of companies are slowly starting to adopt DevOps but they still struggle to get the environment, processes and tool chain required to support enterprise projects. 

In this course we will review some of the best practices and tool chain that will help you setup the automated workflows for operations and development. It will help you increase your knowledge around DevOps and provide you an opportunity to become a change agent in your company to minimize the manual tasks of branching, code commits, code reviews, code merges, build, tests (unit and integration), code quality metrics and standards, integration with repository manager, analytics, deployment of code to the server and application monitoring across environments. The course also covers the Agile lifecycle from the point of identifying a requirement and capturing and development and deployment and provide the traceability by the story. 

Please note that course captions are provided Automatically by Udemy.

What tools will I use and learn ?

Apache Tomcat, Apache Maven, Jfrog Artifactory, Jenkins (Maven Style and Pipeline Style), Jenkins Plugins including Blueocean, SonarQube, ELK (Elasticsearch, Logstash and Kibana), GitHub (Git Flow), Spring STS, Atom, Atlassian Source Tree, CLI, Spring Boot, Junit, Eclemma (Jacoco), JIRA, Confluence, NGROK and several more configuration items.

What will I not learn in this course ?

Please note that the course covers most of the tools in the DevOps toolchain, but will not cover Infrastructure as code for deployment. 

30-day money-back guarantee! 

You will get 30-day money-back guarantee from Udemy for this course. If not satisfied simply ask for a refund within 30 days. You will get full refund. No questions whatsoever asked.

Introduction

1
Introduction

At the end of this lecture students will be able to understand the philosophy of DevOps, benefits of DevOps, adoption in industry and the different categories that the DevOps toolchain can support in automation.

Prerequisites

1
Required Tools And Software Downloads

At the end of this lecture students will be able to understand the required tools before they can install software.

Installation and Configuration of Software

1
Install and Configure Apache Tomcat

At the end of this lecture, students will be able to understand the installation steps for tomcat and be able to navigate to the home page of the app server.

2
Install and Configure Jfrog Artifactory

At the end of this lecture, students will be able to understand the installation steps for Jfrog Artifactory and be able to navigate to the home page of the Jfrog Artifactory server.

3
Install and Configure Apache Maven

At the end of this lecture, students will be able to understand the installation steps for apache maven and be able validate successful installation of maven.

4
Install and Configure Jenkins Part 1

At the end of this lecture, students will be able to understand the installation steps for Jenkins and be able to navigate to the home page of the Jenkins server.

5
Install and Configure Jenkins Part II

At the end of this lecture, students will be able to understand the installation steps for Jenkins and be able to navigate to the home page of the Jenkins server.

6
Maven Security Setup

At the end of this lecture, students will be able to understand the installation steps for Maven and be able to set Maven Home and set up the settings and settings security xml to integrate with artifactory server.

Development (Code, Test, Review and Merge)

1
Setup SSH for GitHub for User

At the end of this lecture, students will be able to understand the SSH setup for the user account and be able to validate the setup to ensure that they can push the code from their computer to Git Hub.

Please refer to the notes for some tweaks.

2
Create a GitHub Repository and setup GitFlow
3
Create a Spring Boot Project

At the end of this lecture, students will be able to create a simple Java Project using Spring Boot and be able to generate the shell. Attached is a sample project that was generated and can be used as a shell project. Also included is the link to the GitHub repository that has been used throughout the project.

4
Spring STS Setup and Import

At the end of this lecture, students will be able to import the Spring Boot project into STS and be able to run the project and validate that all tests pass.

5
Spring Boot Basic Server Code

At the end of this lecture, students will be able to code some basic server side code for the controller and be able to add the test cases.

6
Spring Boot Basic Client Code

At the end of this lecture, students will be able to create an index page that will take them to the home page of the devops application.

7
Configure for SCM and Artifactory

At the end of this lecture, students will be able to configure the spring boot project to talk to the SCM and artifactory. 

Please note that the id's in distributionManagement configuration in pom.xml need to match the server settings in the settings.xml to ensure that you are able to communicate to artifactory successfully.

8
Commit changes and submit pull request

At the end of this lecture, students will be able to commit the changes to their GitHub repository and ensure that their SSH settings work successfully and get familiar with the GitFlow workflow.

Continuous Integration and Continuous Deploy

1
Setup SSH and Maven Settings for Jenkins User

At the end of this lecture, students will be able to configure the Jenkins user for SSH and maven integration. 

Please refer to the attachments for more details.

2
Install Jenkins Plugins

At the end of the lecture, students will be able to install the plugins required for continuous integration with artificatory and GitHub.

3
Jenkins Plugin Basic

At the end of the lecture, students will be able to install the plugins and do basic configuration.

4
Jenkins SNAPSHOT Builds

At the end of the lecture, students will be able to configure the plugins for building snapshot releases.

5
Jenkins Tomcat Deploy Plugin

At the end of the lecture, students will be able to configure the tomcat deploy plugin to deploy the code to Tomcat.

6
Jenkins Tomcat Deploy Script

At the end of the lecture, students will be able to configure the curl requests to deploy to Tomcat.

Please refer to the notes for more details.

For Windows users there is slight deviation on CURL script. Do ensure that you download CURL to a C drive (eg..c:devopscurl) and set in the path. If you download to Program Files ensure that you escape spaces to make sure it works correctly and finds it in the path.

GitFlow Feature Release (1.0.0)

1
Start a Release

At the end of the course, students will understand the process of creating a release using SourceTree and GitFlow.

2
Release code to QA from tag

At the end of the course, students will understand the process of creating a release, tagging a release through Jenkins and uploading to artifactory using Jenkins and deploying code to QA instance of Tomcat.

3
Release code to PROD from artifactory

At the end of the course, students will understand the process of using artifacts from artifactory to deploy to PROD instance of Tomcat.

4
Finish Current Release

At the end of the course, students will understand the process of closing a release branch using SourceTree and GitFlow and ensuring that the code is merged from release branch to master and develop branches.

GitFlow Feature Release (1.2.0)

1
Start a Release and deploy to all environments

At the end of the course, students will understand the process of creating next release branch using SourceTree and GitFlow and ensuring that the code is merged from release branch to master and develop branches and go through the entire deployment cycle across all environments.

2
Finish Release

At the end of the course, students will understand the process of closing a release branch using SourceTree and GitFlow and ensuring that the code is merged from release branch to master and develop branches.

GitFlow HotFix Release (1.2.1)

1
Create a Bugfix Release and Start and Finish a BugFix Release.

At the end of the course, students will understand the process of creating an hotfix branch using SourceTree and GitFlow and ensuring that the code is merged from hotfix branch to master and develop branches.

Application and Log Monitoring

1
Release 1.3.0 for adding Logging and Deploy to all environments

At the end of the course, students will understand the process of creating a release branch for log enhancments that will be used for integration with ELK stack.

2
Finish the Release

At the end of the course, students will understand the process of closing a release branch that was created for log enhancments using SourceTree and GitFlow and ensuring that the code is merged from release branch to master and develop branches.

3
Finish the Release Continued

At the end of the course, students will understand the process of closing a release branch that was created for log enhancments using SourceTree and GitFlow and ensuring that the code is merged from release branch to master and develop branches.

4
Install and Configure Elasticsearch and Kibana

At the end of this lecture, you will be able to configure elastic search and kibana.

5
Install and Configure Logstash

At the end of this lecture, you will be able to configure log stash to process log files from different servers and push the data to elastic search instance.

6
Configure Dashboard and Review the logs

At the end of the lecture, students will get an understanding to create basic visualizations and create a dashboard based on the visualizations.

Please look at the attachments and import the JSON into Kibana to get the same dashboard as defined in the course.

SonarQube Continous Code Quality Metrics Integration

1
SonarQube Installation
2
SonarQube Maven Settings
3
SonarQube Code Changes
4
SonarQube GIT Release Preparation
5
SonaqrQube Jenkins Integration
6
SonarQube Results Overview
7
SonarQube GIT Release Closure

Jenkins Pipeline Configuration and Build

1
Understand Jenkins Pipeline Configuration and Code Changes

This section will include review and understanding of the Jenkins Pipeline Configuration. Please note there is slight variation in the Jenkins File that you see in the video v/s the attached resource that includes the default branch for the develop branch. 

Note: Please note that when you copy the resource file JenkinsFile, please remove the .txt extension. Extension was added so that it could be uploaded as a resource.

2
Jenkins Pipeline Job Configuration and Review Pipeline Results

JIRA Confluence GitHub Jenkins Integration

1
JIRA Confluence and GitHub Integration

This section provides an overview of JIRA and Confluence and integration of JIRA with GitHub and ViceVersa.

2
GitHub Jenkins JIRA Confluence Integration with NGROK

This section provides an overview of web hooks to trigger Jenkins jobs on commits to the repository and integration with JIRA as well.

Jenkins Multibranch Pipeline Introduction using Blueocean

1
Blueocean Introduction Part 1

This section provides an overview of Jenkins pipeline and Blueocean Plugin.

2
Blueocean Introduction Part 2

This section provides an overview of Jenkins pipeline and Blueocean Plugin.

3
Blueocean Multibranch Pipeline Configuration

This section provides an overview of multibranch pipeline configuration.

4
Blueocean Setup and Git Configuration

This section provides an overview of Blueocean setup and integration with Git.

5
Blueocean Develop Branch Configuration

This section provides an overview of adding code for Develop branch on the Jenkinsfile.

6
Blueocean Understanding Pipeline as Code Configuration

This section provides an overview of Jenkins pipeline changes.

7
Blueocean Multibranch Pipeline Configuration Release Build Part 1

This section provides an overview of Jenkins pipeline changes for the release build.

8
Blueocean Multibranch Pipeline Configuration Release Build Part 2

This section provides an overview of Jenkins pipeline changes for the release build and adding the ignore committer strategy to prevent recursive builds

9
Blueocean Multibranch Pipeline Configuration Release Build Final

This section finalizing the release build pipeline changes and closing the release and merging to the master branch.

Conclusion

1
Wrapup

At the end of the course, students will get a summary of what was taught in the course and how they can use what they have learned to the next level.

You can view and review the lecture materials indefinitely, like an on-demand channel.
Definitely! If you have an internet connection, courses on Udemy are available on any device at any time. If you don't have an internet connection, some instructors also let their students download course lectures. That's up to the instructor though, so make sure you get on their good side!
4.3
4.3 out of 5
216 Ratings

Detailed Rating

Stars 5
94
Stars 4
67
Stars 3
36
Stars 2
10
Stars 1
10
3a82f771e5298ed6b37f52f33a876984
30-Day Money-Back Guarantee

Includes

7 hours on-demand video
Full lifetime access
Access on mobile and TV
Certificate of Completion