Jenkins가 명령을 실행해 줍니다

발행: (2026년 2월 6일 오전 09:06 GMT+9)
3 분 소요
원문: Dev.to

Source: Dev.to

Before Jenkins

  • 엔지니어가 명령을 수동으로 실행
  • 단계들을 잊음
  • 실수를 함
  • 신뢰할 수 있게 반복할 수 없음

With Jenkins

  • 명령을 한 번만 작성
  • Jenkins가 매번 동일하게 실행
  • 누구나 Build Now 를 클릭할 수 있음

🛠 Task Rules (IMPORTANT)

  • ❌ 복사·붙여넣기 금지
  • ✅ 학생이 각 줄을 직접 입력
  • ✅ 각 줄을 입력한 뒤, 존재 이유를 설명

🧩 Step 1: Create Freestyle Job

  1. Jenkins 열기
  2. New Item 클릭
  3. Job name: devops-first-script 입력
  4. Freestyle project 선택
  5. OK 클릭

🧩 Step 2: Add Shell Build Step

  1. Build 로 스크롤
  2. Add build step 클릭
  3. Execute shell 선택

✍️ Step 3: Write This Script (Line by Line)

# Line 1: simple output
echo "Hello from Jenkins"
# echo prints text – proves Jenkins can execute commands

# Validation: who am I?
whoami
# Shows which user Jenkins runs as – important for permissions

# Show current directory
pwd
# Shows where Jenkins runs (workspace), not your home folder

# List workspace contents
ls
# Workspace starts empty – useful before cloning repos

# Create a file
echo "This file was created by Jenkins" > jenkins.txt
# Demonstrates that Jenkins can create artifacts

# Display the file
cat jenkins.txt
# Confirms the file exists and its content

# Final log message
echo "Script completed successfully"
  • Explanation: 각 명령을 직접 입력하여 기본 쉘 작업을 보여주고, Jenkins 환경을 확인하며, 아티팩트(jenkins.txt)를 생성합니다. 마지막 echo는 성공적인 완료를 명확히 표시하는 로그 마커 역할을 합니다.
  1. Save 클릭
  2. Build Now 클릭
  3. Console Output 열어 결과 확인

✅ What Should Be Seen

  • 텍스트 출력 (Hello from Jenkins)
  • 사용자 이름 (whoami 출력)
  • Jenkins 워크스페이스 경로 (pwd 출력)
  • jenkins.txt 가 생성되었음 확인
  • 파일 내용 표시 (cat jenkins.txt)

Concepts

ConceptMeaning
Jenkins job자동화 작업
Workspace안전하게 실행되는 디렉터리
Shell step실제 Linux 명령
Logs디버깅용 소스
Repeatability매번 동일한 결과

Mandatory Failure Example

exit 1
  • Question: “무슨 일이 일어날 것이라고 생각하나요?”
  • Result: 빌드가 RED 로 표시됩니다. Jenkins가 중단되고, 이후 단계는 실행되지 않습니다.
  • Explanation: exit 1 은 실패를 의미합니다. Jenkins는 종료 코드를 신뢰하기 때문에, 실패 코드는 배포를 차단할 수 있습니다. 이는 *Jenkins는 “멍청하지만 정직하다”*는 원칙을 보여줍니다. 실제 DevOps 상황을 반영한 예시입니다.
Back to Blog

관련 글

더 보기 »

Multibranch Pipeline 랩

!Aisalkyn Aidarovahttps://media2.dev.to/dynamic/image/width=50,height=50,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fupl...

Jenkins 에이전트 — 전체 DevOps 강의

우리가 해결하려는 문제는 무엇인가요? 실제 시스템에서는 빌드가 무겁고 다양하며 병렬적으로 진행됩니다. 하나의 Jenkins 인스턴스만으로는 모든 작업을 안전하고 효율적으로 수행할 수 없습니다. A...

개발 팀이 성장함에 따라 CI/CD 최적화

문제의 첫 번째 징후는 보통 빌드 큐입니다. 몇 명의 개발자가 팀에 합류하고 커밋 빈도가 증가하면, 이전에 원활하게 돌아가던 CI/CD 파이프라인이 갑자기…