ci

Generates Jenkinsfile, Dockerfile, and Maven pom.xml for Java 21 Spring Boot microservices.

Updated Jun 25, 2026
One-click install
npx skills add https://github.com/oriddd/ai-toolkit --skill ci-oriddd
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: ci
Source: https://github.com/oriddd/ai-toolkit/tree/main/copilot/public/skills/ci
Command: npx skills add https://github.com/oriddd/ai-toolkit --skill ci-oriddd

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Setting up continuous integration for a new Java 21 / Spring Boot microservice requires writing a Jenkins pipeline, a production-grade Dockerfile, and a correctly configured Maven build from scratch, which is repetitive and error-prone. ## Core Features & Use Cases - Declarative Jenkins Pipeline: Produces a vendor-neutral Jenkinsfile with build, test, coverage recording, and conditional Docker image push stages. - Layered Multi-Stage Dockerfile: Generates a non-root, layered Spring Boot image using the Spring Boot 3.2+ JarLauncher entry point. - Baseline Maven Build: Creates a pom.xml with the Spring Boot parent, Java 21 settings, and JaCoCo coverage thresholds enforced at the verify phase. - Use Case: When bootstrapping a new Spring Boot repository, apply this skill to instantly get a working CI setup that integrates with the static-analysis, unit-tests, and cd skills. ## Quick Start Apply the ci skill to generate the Jenkinsfile, Dockerfile, and pom.xml for my new Spring Boot microservice repository.

Frequently Asked Questions about ci

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I set up a Jenkins pipeline for a Spring Boot microservice?

Use a declarative Jenkinsfile with a Maven agent that runs mvn clean verify, publishes JUnit results, records JaCoCo coverage, and builds and pushes a Docker image only on the main branch or version tags.

How do I write a Dockerfile for a Spring Boot 3 application?

Use a multi-stage build that extracts the layered jar with jarmode=layertools, then copies the layers into a runtime stage based on eclipse-temurin:21-jre-alpine running as a non-root user with the JarLauncher entry point.

Should I use Jenkins or GitHub Actions for Spring Boot CI?

Pick exactly one per repository, never both. This skill provides the Jenkins variant; a separate github-actions-ci skill covers the GitHub Actions alternative with equivalent behavior.

Why does my Spring Boot Docker image fail with JarLauncher not found?

Spring Boot 3.2 moved the launcher class to org.springframework.boot.loader.launch.JarLauncher. Using the old org.springframework.boot.loader.JarLauncher path on Spring Boot 3.2+ causes this failure.

How do I enforce code coverage thresholds in a Maven build?

Configure the jacoco-maven-plugin check goal bound to the verify phase with line and branch minimums, such as 0.80 line and 0.70 branch coverage. Running mvn verify then fails the build when coverage drops below the thresholds.

Can I use a private Jenkins shared library with this pipeline?

The public pipeline is deliberately vanilla with no shared library imports. You can wrap the build and image stages in a private fork with a one-line shared library call while keeping the shared catalogue vendor-neutral.