How bjegan92-saineha/jenkins-cicd-projects works
This repository is a Jenkins CI/CD learning playbook, progressing from a manually triggered Freestyle job to pipeline-as-code, container deployment, multibranch builds, and distributed agents. Its six project directories also contain small Express demo APIs; sampled API code confirms basic and health endpoints, but does not show how pipeline stages invoke them. The README documents the first five projects; Project 6’s ECR/ECS scope is indicated by its directory name, so its deployment wiring is not inferred here.
Main entry points: project-3-cicd-docker-deploy/Jenkinsfile Docker deploy pipeline · project-1-freestyle Freestyle job · project-2-pipeline-jenkinsfile/Jenkinsfile Declarative pipeline · project-6-cicd-docker-ecr-ecs/Jenkinsfile ECR/ECS pipeline
Components 21
Jenkins basics
- Freestyle job
project-1-freestyle - Declarative pipeline
project-2-pipeline-jenkinsfile/Jenkinsfile
Container delivery
- Docker deploy pipeline
project-3-cicd-docker-deploy/Jenkinsfile - Container image
project-3-cicd-docker-deploy/Dockerfile - ECR/ECS pipeline
project-6-cicd-docker-ecr-ecs/Jenkinsfile - Container image
project-6-cicd-docker-ecr-ecs/Dockerfile
Pipeline scaling
- Multibranch pipeline
project-4-multibranch-pipeline/Jenkinsfile - Controller and agents
project-5-master-agent/Jenkinsfile - Container image
project-4-multibranch-pipeline/Dockerfile - Container image
project-5-master-agent/Dockerfile
Demo APIs
- Project 1 API
project-1-freestyle/index.js - Project 2 API
project-2-pipeline-jenkinsfile/index.js - Project 3 API
project-3-cicd-docker-deploy/index.js - Project 4 API
project-4-multibranch-pipeline/index.js - Project 5 API
project-5-master-agent/index.js - Project 6 API
project-6-cicd-docker-ecr-ecs/index.js
Other components
- Learner
- Git repository
- Jenkins
- Image registry
- Deploy target
Connections 22
- Learner → Jenkins: creates job
- Git repository → Freestyle job: provides source
- Jenkins → Freestyle job: runs job
- Git repository → Declarative pipeline: provides changes
- Jenkins → Declarative pipeline: runs stages
- Git repository → Docker deploy pipeline: provides changes
- Jenkins → Docker deploy pipeline: runs stages
- Docker deploy pipeline → Container image: builds image
- Docker deploy pipeline → Image registry: pushes image
- Docker deploy pipeline → Deploy target: deploys
- Git repository → Multibranch pipeline: provides branches
- Jenkins → Multibranch pipeline: discovers branches
- Git repository → Controller and agents: provides source
- Jenkins → Controller and agents: assigns workloads
- Git repository → ECR/ECS pipeline: provides source
- Jenkins → ECR/ECS pipeline: runs pipeline
- Learner → Project 1 API: requests endpoint
- Learner → Project 2 API: requests endpoint
- Learner → Project 3 API: requests endpoint
- Learner → Project 4 API: requests endpoint
- Learner → Project 5 API: requests endpoint
- Learner → Project 6 API: requests endpoint