Continuous Integration with Jenkins Training in Louisville
We offer private customized training for groups of 3 or more attendees.
|
||
Course Description |
||
This hands-on course is a good introduction to using Jenkins
effectively from start to finish. It teaches the principles of
continuous integration and the knowledge of how to implement it with
automated test execution using Jenkins. It makes a clear distinction
between continuous integration, continuous delivery, and continuous
deployment. Participants will use a local copy of Jenkins to create and
run jobs, to link to a version control system, to run automated testing,
and to generate development reports. In addition, participants will also
learn how the interface works between Jenkins and Gradle and how to kick
off Gradle scripts.
Course Length: 2 Days
Course Tuition: $1090 (US) |
Prerequisites |
|
This course is intended for Java developers who need to know how to use Jenkins to automatically deploy software into a testing environment. |
Course Outline |
This hands-on course is a good introduction to using Jenkins effectively from start to finish. It teaches the principles of continuous integration and the knowledge of how to implement it with automated test execution using Jenkins. It makes a clear distinction between continuous integration, continuous delivery, and continuous deployment. Participants will use a local copy of Jenkins to create and run jobs, to link to a version control system, to run automated testing, and to generate development reports. In addition, participants will also learn how the interface works between Jenkins and Gradle and how to kick off Gradle scripts.
Course Topics
• Introducing Continuous Integration and Jenkins
• Installing and Running Jenkins
• A Jenkins Job
• Advanced Jenkins
• Jenkins Plug-ins, specifically SonarQube
• Best Practices
Course Objectives
Upon completion of this course, participants will be able to:
• Install and configure Jenkins in a servlet container.
• Create Jenkins builds.
• Configure Jenkins to use Gradle (emphasized), Apache Ant, and Apache Maven.
• Use Jenkins to generate Java coding standards reports, code coverage reports, and change notices.
• Use the SonarQube plug-in to generate a report and to open and review how the information is organized.
Course Outline
I. Introducing Continuous Integration and Jenkins
A. Agile Development
B. Continuous Integration versus Continuous Delivery versus Continuous Deployment
C. History of Jenkins
D. State of the Jenkins Community
II. Installing and Running Jenkins Intro
A. Running Jenkins from the jar File
B. Installing Jenkins in a Servlet Container
C. Setup Security
D. Email and Version Control
E. Master/Slave Configurations
III. A Jenkins Job
A. Create a job
B. Configure a job
C. Run a job manually
D. Run a job when source code is checked into version control
E. Run a job on a regular schedule
IV. Advanced Jenkins
A. Monitor External Jobs
B. Distributed Builds
C. File Fingerprint Tracking
D. Using Jenkins for non-Java Projects
E. Matrix Projects
F. Splitting a Big Job into Smaller Jobs
G. Concept of a Pipeline
V. Jenkins Plug-ins
A. Change Reporting
B. Code Coverage
C. Static Analysis
D. Performance Reporting
E. Style Checking
VI. SonarQube Plug-in
A. Install the SonarQube Plug-in
B. Integrate Jenkins with SonarQube
C. Locate and Open Generated Report
D. Review the Report’s Organization
VII. Best Practices for Jenkins
A. Culture Change
1. Bring down the risk by incremental changes
2. Check in code daily
3. Fast feedback loop
B. Attend to broken builds
1. Build alerts email, pagers etc. on broken builds.
C. Write unit tests
1. Follow test pyramid
D. Re-use build Scripts across IDE and Jenkins
1. Leverage Gradle.
E. Use Discover Templates
VIII. Exercises
A. Lab 1
B. Lab 2
C. Lab 3
D. Lab 4
|
Course Directory [training on all levels]
- .NET Classes
- Agile/Scrum Classes
- Ajax Classes
- Android and iPhone Programming Classes
- Blaze Advisor Classes
- C Programming Classes
- C# Programming Classes
- C++ Programming Classes
- Cisco Classes
- Cloud Classes
- CompTIA Classes
- Crystal Reports Classes
- Design Patterns Classes
- DevOps Classes
- Foundations of Web Design & Web Authoring Classes
- Git, Jira, Wicket, Gradle, Tableau Classes
- IBM Classes
- Java Programming Classes
- JBoss Administration Classes
- JUnit, TDD, CPTC, Web Penetration Classes
- Linux Unix Classes
- Machine Learning Classes
- Microsoft Classes
- Microsoft Development Classes
- Microsoft SQL Server Classes
- Microsoft Team Foundation Server Classes
- Microsoft Windows Server Classes
- Oracle, MySQL, Cassandra, Hadoop Database Classes
- Perl Programming Classes
- Python Programming Classes
- Ruby Programming Classes
- Security Classes
- SharePoint Classes
- SOA Classes
- Tcl, Awk, Bash, Shell Classes
- UML Classes
- VMWare Classes
- Web Development Classes
- Web Services Classes
- Weblogic Administration Classes
- XML Classes
Java Programming Uses & Stats
Difficulty
|
Popularity
|
Year Created 1995 |
Pros
Most Commonly Used:
Great Career Choice:
Android Apps Development:
It Can Run On Any Platform:
Great Supporting IDE's: |
Cons
Uses a Lot of Memory:
Difficulty in Learning:
Slow Start Up Times:
Verbose and Complex Code:
Commercial License Cost: |
Java Programming Job Market |
Average Salary
|
Job Count
|
Top Job Locations
New York City |
Complimentary Skills to have along with Java Programming
- If you are an experienced Java developer, learning a complimentary language to Java should come much more naturally. As an example JetBrains recently created the Kotlin programming language which is officially supported by Google for mobile development. Kotlin compiles to Java bytecode and runs on the JVM; it's purported to address many of Java's shortcomings... |