Course : Continuous integration: Best practices for implementation

Continuous integration: Best practices for implementation






INTER
IN-HOUSE
CUSTOM

Practical course in person or remote class

Ref. DIN
  3d - 21h00
Price : Contact us






Teaching objectives
At the end of the training, the participant will be able to:
Understand the components and principles of continuous integration
Work with a version control manager
Understand the software's construction mechanisms and the corresponding Build tools
Configure a project on a continuous integration server.
Decipher the most common code analysis tool metrics
Comprehend the role of artifact repositories and configuration management

Course schedule

1
Introduction

  • Different types of environments: Development, acceptance, production.
  • Configuration management: System and application.
  • Role of application containers: Docker.
  • Configuration centralization: puppet, Ansible.
  • Scaling up deployments.
  • Setting up a continuous integration platform.

2
Version management

  • Features.
  • Different source managers: Centralized or distributed.
  • Problems integrating changes.
  • The role of branches and tags.
Hands-on work
Handling a Git repository.

3
Automating builds

  • What is a software build?
  • Builds: Project lifecycle.
  • Build tools with Maven.
  • Plug-ins, profiles, and modules.
Hands-on work
Setting up a simple project build (Maven).

4
Repository management

  • Roles of repository managers.
  • Types of repositories: public, internal.
  • Deliverable management (artifacts): releases, snapshots, deployment.
  • Organizing repositories: Development, testing, production.
  • Integrating repository managers with build tools and task management tools.
  • Example solutions: Nexus, Artifactory, etc.
Hands-on work
Publishing artifacts in Nexus.

5
Automating tests.

  • What tests, and to do what?
  • Testing environments.
  • Overview of testing tools.
  • Implementing and automating tests.
Hands-on work
Setting up automated tests with JUnit.

6
Continuous integration server

  • Role of the continuous integration server.
  • Major features.
  • Job management.
  • Dependency between jobs.
  • Servers: Hudson/Jenkins, CruiseControle, Bamboo, etc.
Hands-on work
Configuring the project on a Jenkins continuous integration server.

7
Setting up metrics

  • Generating reports.
  • Analysis and reporting tools (PMD, Findbugs, Cobertura, Emma, Checkstyle, etc.).
  • Publishing results.
Hands-on work
Setting up metric tools.

8
Feedback management

  • Managing a complete cycle.
  • Traceability of changes.
Hands-on work
Using Sonar.


Customer reviews
3,9 / 5
Customer reviews are based on end-of-course evaluations. The score is calculated from all evaluations within the past year. Only reviews with a textual comment are displayed.


Dates and locations
Select your location or opt for the remote class then choose your date.
Remote class