Mert Özen Further With Every Line

Blog

Mert Özen's blog posts on software development, backend, frontend, and DevOps.

Series
4 posts found #pipeline
Your First Pipeline with a Jenkinsfile: Declarative Syntax, stages, steps, post and environment
DevOps PART 03

Your First Pipeline with a Jenkinsfile: Declarative Syntax, stages, steps, post and environment

A Jenkinsfile describes the pipeline in the same repository as the code; in Declarative syntax agent, stages and steps form the skeleton, while environment, options, parameters, triggers and post define the behavior. Linter output, the quoting rule, the parameter the shell sees as empty on the first build, a stage skipped by when, Snippet Generator and Replay, Scripted Pipeline, and NotSerializableException with @NonCPS.

8 Nov 2026 10 min 3
An Angular Pipeline with Jenkins: Node Container, npm Cache, Headless Tests and stash/unstash
DevOps PART 08

An Angular Pipeline with Jenkins: Node Container, npm Cache, Headless Tests and stash/unstash

We build the Angular 22 app in a node:24 container with npm ci, ng lint, Vitest and ng build in parallel with the .NET API, and combine both into one package with stash/unstash. The npm cache volume, Vitest's JUnit reporter, budgets, the missing-package error for browser mode, not stashing a 329 MB node_modules, and parallel stage durations in Pipeline Graph View.

8 Nov 2026 9 min 3
Parallel, Matrix, input and Deploy Stages in Jenkins
DevOps PART 09

Parallel, Matrix, input and Deploy Stages in Jenkins

We deploy the same package first to staging and, after an input approval that holds no agent, to production with sshagent, rsync and systemctl; Lockable Resources solves concurrency and milestone solves ordering. A deploy script with a health check, real lock output where an old build deploys after a new one, inversePrecedence, failFast, a Node 22/24 matrix and the app_offline.htm structure for IIS.

8 Nov 2026 10 min 4
Reading and Migrating Old Jenkins Setups: Freestyle to Pipeline, Blue Ocean to Pipeline Graph View, Java 17 to 21
DevOps PART 12

Reading and Migrating Old Jenkins Setups: Freestyle to Pipeline, Blue Ocean to Pipeline Graph View, Java 17 to 21

You read an old Jenkins with an inventory first, then migrate step by step: Java 21 first, then the Jenkins version, then jobs. The real message 2.580.2 prints when refusing to start on Java 17, the Java timeline for controllers and agents, the Jenkinsfile equivalent of a Freestyle config.xml, Pipeline Graph View instead of the deprecated Blue Ocean, JNLP to WebSocket, and a quick look at GitHub Actions Importer.

8 Nov 2026 9 min 3
Blog Map