Bird
Raised Fist0
Jenkinsdevops~30 mins

Disk space management in Jenkins - Mini Project: Build & Apply

Choose your learning style10 modes available
Disk space management
📖 Scenario: You are a Jenkins administrator. Your Jenkins server stores many build artifacts and logs. Over time, disk space fills up, causing build failures. You want to manage disk space by cleaning old builds automatically.
🎯 Goal: Build a Jenkins pipeline script that defines a workspace cleanup strategy. You will create a list of build directories, set a threshold for maximum builds to keep, delete older builds beyond the threshold, and print the cleanup result.
📋 What You'll Learn
Create a list of build directories as strings
Define a maximum number of builds to keep as an integer
Write a loop to delete builds older than the threshold
Print the list of builds remaining after cleanup
💡 Why This Matters
🌍 Real World
Jenkins servers accumulate many build artifacts and logs. Managing disk space by cleaning old builds prevents failures and keeps the server healthy.
💼 Career
DevOps engineers and Jenkins administrators often write scripts to automate disk space management and maintain continuous integration environments.
Progress0 / 4 steps
1
Create the list of build directories
Create a variable called buildDirs as a list containing these exact strings: "build_1", "build_2", "build_3", "build_4", "build_5".
Jenkins
Hint

Use Groovy list syntax with square brackets and double quotes for strings.

2
Define the maximum builds to keep
Create a variable called maxBuilds and set it to the integer 3.
Jenkins
Hint

Use def maxBuilds = 3 to define the integer variable.

3
Delete older builds beyond the threshold
Write a while loop that runs while the size of buildDirs is greater than maxBuilds. Inside the loop, remove the first element from buildDirs using remove(0).
Jenkins
Hint

Use while (buildDirs.size() > maxBuilds) and inside remove the oldest build with remove(0).

4
Print the remaining builds
Write a println statement to display the text "Remaining builds:" followed by the buildDirs list.
Jenkins
Hint

Use println("Remaining builds: ${buildDirs}") to show the final list.

Practice

(1/5)
1. What is the main purpose of managing disk space in Jenkins?
easy
A. To reduce the number of Jenkins plugins installed
B. To increase the number of Jenkins users
C. To speed up the Jenkins UI loading time
D. To keep Jenkins builds running smoothly without storage issues

Solution

  1. Step 1: Understand Jenkins build process

    Jenkins stores build files and logs in workspaces which consume disk space.
  2. Step 2: Identify the effect of disk space on builds

    If disk space runs out, builds can fail or Jenkins may slow down.
  3. Final Answer:

    To keep Jenkins builds running smoothly without storage issues -> Option D
  4. Quick Check:

    Disk space management = smooth builds [OK]
Hint: Disk space issues cause build failures, manage to avoid them [OK]
Common Mistakes:
  • Thinking disk space affects only UI speed
  • Confusing disk space with user management
  • Assuming plugins control disk space
2. Which Jenkins pipeline step is used to clean the workspace and free disk space?
easy
A. deleteDir()
B. cleanWs()
C. removeWorkspace()
D. clearDisk()

Solution

  1. Step 1: Recall Jenkins pipeline steps for workspace cleanup

    The step cleanWs() is designed to delete all files in the current workspace.
  2. Step 2: Verify other options

    deleteDir() deletes the current directory but is less specific; others are not valid Jenkins steps.
  3. Final Answer:

    cleanWs() -> Option B
  4. Quick Check:

    Workspace cleanup step = cleanWs() [OK]
Hint: Remember cleanWs() cleans workspace files in pipelines [OK]
Common Mistakes:
  • Using deleteDir() which deletes current dir but not workspace safely
  • Assuming removeWorkspace() or clearDisk() exist
  • Confusing cleanWs() with plugin names
3. What will happen if you add cleanWs() at the end of a Jenkins pipeline script?
medium
A. The build will fail due to missing workspace files
B. The workspace files will be backed up automatically
C. The workspace files will be deleted after the build completes
D. Nothing happens; cleanWs() is ignored

Solution

  1. Step 1: Understand cleanWs() behavior

    cleanWs() deletes all files in the workspace where the build runs.
  2. Step 2: Consider placement at pipeline end

    Placing cleanWs() at the end deletes files after build finishes, freeing disk space.
  3. Final Answer:

    The workspace files will be deleted after the build completes -> Option C
  4. Quick Check:

    cleanWs() at end = workspace cleaned [OK]
Hint: cleanWs() deletes workspace files after build ends [OK]
Common Mistakes:
  • Thinking cleanWs() backs up files
  • Assuming it causes build failure
  • Believing cleanWs() does nothing
4. You added cleanWs() in your Jenkins pipeline, but disk space is still filling up. What is a likely cause?
medium
A. The Disk Usage Plugin is not installed or configured
B. cleanWs() only deletes files older than 7 days
C. cleanWs() does not delete files if the build fails
D. cleanWs() requires manual confirmation to delete files

Solution

  1. Step 1: Understand cleanWs() limitations

    cleanWs() deletes workspace files but does not manage other disk usage like old builds or logs.
  2. Step 2: Role of Disk Usage Plugin

    The Disk Usage Plugin helps monitor and automate cleanup beyond workspace, including old builds and artifacts.
  3. Final Answer:

    The Disk Usage Plugin is not installed or configured -> Option A
  4. Quick Check:

    Disk Usage Plugin needed for full cleanup [OK]
Hint: Use Disk Usage Plugin for full disk cleanup automation [OK]
Common Mistakes:
  • Believing cleanWs() deletes all disk files
  • Thinking cleanWs() deletes only old files
  • Assuming cleanWs() needs manual approval
5. How can you automate disk space cleanup in Jenkins to delete old builds and workspace files regularly?
hard
A. Configure the Disk Usage Plugin and add cleanWs() in pipelines
B. Manually delete workspace files after each build
C. Disable all Jenkins plugins to reduce disk usage
D. Increase disk size instead of cleaning files

Solution

  1. Step 1: Use Disk Usage Plugin for monitoring and cleanup

    This plugin tracks disk usage and can be set to delete old builds automatically.
  2. Step 2: Use cleanWs() in pipelines for workspace cleanup

    Adding cleanWs() deletes workspace files after builds, freeing space regularly.
  3. Final Answer:

    Configure the Disk Usage Plugin and add cleanWs() in pipelines -> Option A
  4. Quick Check:

    Plugin + cleanWs() = automated cleanup [OK]
Hint: Combine Disk Usage Plugin with cleanWs() for automation [OK]
Common Mistakes:
  • Relying on manual deletion only
  • Disabling plugins instead of cleaning
  • Ignoring disk size limits
Recommended

Ready to prove it?

Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

10 questions~5 mineasy hard