Bagaimana cara membersihkan ruang kerja di Jenkins? Saya menggunakan AccuRev
sebagai alat kontrol versi.
Saya membuat freestyle
proyek di Jenkins.
jenkins
jenkins-plugins
accurev
Karthik
sumber
sumber
Jika Anda ingin membersihkannya secara manual, bagi saya dengan versi jenkins saya (sepertinya tidak perlu plugin tambahan terpasang, tapi siapa tahu), ada tautan "ruang kerja" di kolom kiri, klik proyek Anda, lalu di "ruang kerja", lalu tautan "Hapus ruang kerja saat ini" muncul di bawahnya di kolom sebelah kiri.
sumber
Selain solusi di atas, ada cara yang lebih "UMUM" - langsung menghapus pengguna ruang terbesar dari mesin Linux. Anda dapat mengikuti langkah-langkah di bawah ini:
sumber
Plugin Pembersihan Ruang Kerja
Dalam file Jenkins tambahkan
Ini akan menghapus ruang kerja setelah build selesai
sumber
cleanWs()
tidak ada di halaman landing plugin sebagai sintaks untuk ditambahkan ke myJenkinsfile
.PENTING: Aman untuk menghapus ruang kerja untuk pekerjaan Jenkins tertentu selama pekerjaan tersebut tidak sedang berjalan!
CATATAN: Saya mengasumsikan Anda
$JENKINS_HOME
diatur ke default:/var/jenkins_home
.Bersihkan satu ruang kerja
rm -rf /var/jenkins_home/workspaces/<workspace>
Bersihkan semua ruang kerja
rm -rf /var/jenkins_home/workspaces/*
Bersihkan semua ruang kerja dengan beberapa pengecualian
Yang ini menggunakan grep untuk membuat daftar putih:
Bersihkan 10 ruang kerja terbesar
Yang ini menggunakan du dan sort untuk mencantumkan ruang kerja dalam urutan dari yang terbesar ke terkecil. Kemudian, menggunakan head untuk mengambil 10 yang pertama:
sumber
Anda dapat menjalankan skrip di bawah ini di Kelola Jenkins → Konsol Skrip untuk menghapus ruang kerja semua pekerjaan sekaligus. Kami melakukan ini untuk membersihkan ruang pada sistem file.
sumber
Dengan asumsi pertanyaannya adalah tentang membersihkan ruang kerja dari pekerjaan saat ini, Anda dapat menjalankan:
sumber
tidak diperbolehkan berkomentar, oleh karena itu:
Jawaban dari Upen berfungsi dengan baik, tetapi tidak jika Anda memiliki Jenkins Pipeline Jobs yang dicampur dengan Freestyle Jobs. Tidak ada Metode seperti DoWipeWorkspace di Pekerjaan Pipeline. Jadi saya memodifikasi Script untuk melewatkannya:
Anda juga dapat memfilter menurut Nama Pekerjaan jika diperlukan:
item.getDisplayName().toLowerCase().contains("release")
sumber
Anda perlu menginstal plugin ini sebelum opsi yang disebutkan di atas muncul
Plugin Pembersihan Ruang Kerja
Plugin ini menambahkan kotak centang ke semua konfigurasi pekerjaan untuk memungkinkan Anda menghapus seluruh ruang kerja sebelum langkah apa pun (termasuk kontrol sumber) dijalankan
Ini berguna untuk memastikan Anda selalu memulai dari titik yang diketahui untuk menjamin bagaimana build Anda akan berjalan
sumber
Jika Anda ingin menghapus satu dir (atau file), Anda dapat menggunakan Groovy dan Kelola Jenkins → Scripts Console menjalankan skrip yang menghapusnya.
Misalnya, Anda dapat melihat file dengan:
Dan kemudian, ketika Anda memiliki folder yang ingin Anda hapus
dh
, Anda cukup menambahkan kode berikutnya:Dan itu akan dihapus.
Catatan: Jalur yang ditunjukkan dalam contoh adalah untuk instalasi Bitnami Jenkins, jalur Anda mungkin berbeda.
sumber
Ada opsi untuk melakukannya. Konfigurasi -> Tindakan Pasca-build
Opsi ini muncul secara default setidaknya di Jenkins versi 2.236
sumber