Jenkins Pipeline As Code All You Need To Know From A Z

Tags: Jenkins

Accelerate your learning with easy to understand examples and real time demonstrations of Jenkins Pipeline Scripts.

Last updated 2022-01-10 | 4

- Understand the difference between declarative pipeline syntax and scripted pipeline syntax
- In depth knowledge of both syntax styles
- Learn how to write common code to be shared across multiple jenkins jobs

What you'll learn

Understand the difference between declarative pipeline syntax and scripted pipeline syntax
In depth knowledge of both syntax styles
Learn how to write common code to be shared across multiple jenkins jobs
Learn how to trigger jobs using pipeline scripts
Learn how you can make use of public java libraries in your pipeline script to be more productive
Learn how you can use docker in your pipeline script
Be confident in using Jenkins Pipeline as Code
And many
many more

* Requirements

* Prior understanding of how Jenkins work
* An existing Jenkins setup
* Some programming knowledge. it would be even better if you already know Groovy but that's not a strong requirement as you should be able to follow what the Groovy code is doing and I will explain more on Groovy during the course.

Description

*** Please note that this is NOT a how to set up Jenkins course. This is a course for people who ALREADY knows what jenkins pipelines are used for, want to use it and want to get up to speed with the syntax or learn more about it quickly.***

*** Get latest course updates in the readme when you search for user pipelineascodecourse in github ***


***Updated for 2021 !!!***


Are you looking to use Jenkins pipeline as code FAST

"With Pipelines, organisations can define their delivery pipeline through a DSL (Pipeline-as-code). Pipelines, thus, can be versioned, checked into source and easily shared within an organisation. "


"The Pipeline DSL helps you capture complex process requirements through code - thus you can try-catch on deployment failures, loop through deployments, run tests in parallel. It brings the power of a programming language (groovy) to do so. At the same time, the DSL is simple enough to capture simple cases easily without having to touch groovy code. You can capture common patterns in functions and keep them in a global library so that new applications can build on these functions rather than re-invent.  "

Source: Cloudbees - Jenkins Pipeline - Software Delivery Made Easy


Jenkins Pipeline as Code allows you to define and automate pipelined job processes with code. Code that can be stored and versioned in a repository which allows you to track changes over time and used by jenkins to run build jobs. If you are already using Jenkins, you should have already heard of pipeline as code but if you have not, this course will help you learn what it is, and also help you to get started quickly with it to make your life as a devops practitioner much easier. This course will help you understand and use both declarative and scripted pipeline scripts and how to use shared libraries for common code across build jobs with realtime demonstrations of the pipeline scripts.

Who this course is for:

  • Beginners who are just starting out on jenkins pipeline as code
  • Intermediate people who want to have more knowledge on implementing pipeline as code in jenkins

Course content

6 sections • 104 lectures

Overview Of Pipeline Syntax Preview 01:29

Hello World Pipeline Script Preview 01:31

Pipeline > Agent Preview 03:59

Pipeline > Stage > Steps > Script Preview 02:11

Pipeline > Stage > Steps > Retry/Timeouts Preview 04:53

Pipeline > Tools Preview 03:23

Pipeline > Stage > Options > Error/Retry Preview 03:20

Pipeline > Stage > Options > Timeout Preview 01:27

Pipeline > Stage > Options > Timestamps Preview 02:32

Pipeline > Stage >Options > Timestamps (alternative method) Preview 02:33

Pipeline > Stage > Options > SkipDefaultCheckout Preview 13:17

Pipeline > Stage > Environment Credentials Preview 08:38

Pipeline > Stage > When (Part 1) Preview 12:54

Pipeline > Stage > When (Part 2) > Branch Preview 03:02

Pipeline > Stage > When (Part 2) > BuildingTag and Tag Preview 12:34

Pipeline > Stage > When (Part 2) > Changelog Preview 04:25

Pipeline > Stage > When (Part 2) > ChangeRequest Preview 11:35

Pipeline > Stage > When (Part 2) > Changeset Preview 05:37

Pipeline > Stage > When (Part 3) > BeforeAgent Preview 02:49

Pipeline > Stage > Parallel/FailFast Preview 03:59

Pipeline > Stage > Input Preview 08:20

Pipeline > Stage > Post Preview 12:26

Pipeline > Options > BuildDiscarder Preview 03:07

Pipeline > Options > DisableConcurrentBuilds Preview 02:00

Pipeline > Options > OverrideIndexTriggers Preview 07:09

Pipeline > Options > SkipStagesAfterUnstable Preview 02:55

Pipeline > Options > CheckoutToSubdirectory Preview 02:17

Pipeline > Options > NewContainerPerStage Preview 03:10

Pipeline > Parameters Preview 03:11

Pipeline > Pipeline Triggers > Cron Preview 06:00

Pipeline > Pipeline Triggers > PollSCM Preview 04:32

Pipeline > Pipeline Triggers > Upstream Preview 04:57

Pipeline > Agent > Docker > Image Preview 02:27

Pipeline > Agent > Docker > Args Preview 01:36

Pipeline > Agent > Docker > AlwaysPull Preview 01:59

Pipeline > Agent > Docker > CustomWorkspace Preview 01:36

Pipeline > Agent > Docker > RegistryUrl/CredentialsId Preview 06:24

Pipeline > Agent > Docker > Label Preview 02:05

Pipeline > Agent > Docker > ReuseNode Preview 03:30

Pipeline > Agent > Dockerfile Preview 02:53

Pipeline > Agent > Dockerfile > Dir Preview 02:40

Pipeline > Agent > Dockerfile > Filename Preview 02:18

Pipeline > Agent > Dockerfile > AdditionalBuildArgs Preview 02:25

Pipeline > Agent > Dockerfile > CustomWorkspace Preview 02:48

Groovy Script Outside of Declarative Pipeline Script Preview 01:19

Test Your Knowledge!

Global Libraries Preview 08:57

Importing Libraries Preview 01:48

Importing Class Libraries Preview 03:06

Importing Static Libraries Preview 02:47

Custom Steps Preview 02:51

Closures Preview 02:02

Importing Third Party Libraries Preview 01:44

Loading Resources Preview 01:31

Defining Pipeline Script In Call Method Preview 02:27

Test Your Knowledge!

Introduction Preview 06:08

Docker > Image Preview 01:42

Docker > Args Preview 01:29

Docker > AlwaysPull Preview 02:13

Docker > CustomWorkspace Preview 02:03

Docker > RegistryUrl/CredentialsId Preview 01:50

Dockerfile Preview 02:13

Dockerfile > Dir Preview 02:09

Dockerfile > Filename Preview 02:21

Dockerfile > AdditionalBuildArgs Preview 02:33

Dockerfile > CustomWorkspace Preview 02:26

Stage > Options > Error/Retry Preview 02:43

Stage > Options > Timeout Preview 02:40

Stage > Options > Timestamps Preview 01:42

Stage > Environment Credentials Preview 03:58

Stage > When (Part 1) Preview 01:55

Stage > When (Part 2) > Branch Preview 02:26

Stage > When (Part 2) > BuildingTag and Tag Preview 03:00

Stage > When (Part 2) > Changelog Preview 05:02

Stage > When (Part 2) > ChangeRequest Preview 04:48

Stage > When (Part 2) > ChangeSet Preview 04:39

Stage > Parallel/FailFast Preview 02:24

Stage > Input Preview 02:45

Stage > Post Preview 05:07

Options > BuildDiscarder Preview 01:30

Options > DisableConcurrentBuilds Preview 02:06

Options > OverrideIndexTriggers Preview 05:45

Options > SkipStagesAfterUnstable Preview 01:38

Options > CheckoutToSubdirectory Preview 01:46

Options > NewContainerPerStage Preview 01:47

Parameters Preview 02:17

Tools Preview 02:26

Triggers > Cron Preview 01:30

Triggers > PollSCM Preview 03:37

Triggers > Upstream Preview 05:08

Test Your Knowledge!

How To Get Output Of Shell Script Preview 04:12

How To Create Env Variables For Shell Script Preview 05:27

Pipeline Maven Integration (Part 1) Preview 13:11

Pipeline Maven Integration (Part 2) Preview 12:17

Pipeline Maven Integration with Jacoco Preview 18:09

Pipeline Maven Integration with SonarQube Preview 12:37

Triggering and Passing Parameters Between Jobs Preview 15:17

Lockable Resources Preview 19:05

Extended Choice Parameter Preview 08:26

More lectures coming... Preview 00:01

More lectures on their way!