Jenkins 2 memiliki jaringan pipa memiliki warga negara kelas satu. Namun, dalam contoh-contoh tugas tampaknya dieksekusi sebagai urutan tunggal:
node {
// Mark the code checkout 'stage'....
stage 'Checkout'
// Get some code from a GitHub repository
git url: '[email protected]:elifesciences/elife-bot.git'
// Mark the code build 'stage'....
stage 'Build'
echo "Unit tests will run here"
stage "Production"
echo "Deploying to production environment"
}
Untuk penyebaran ke dalam sistem produksi, seringkali perlu persetujuan manual; apakah ada cara untuk memasukkan tombol manual untuk menekan di dalam pipa?
Saya telah mencari langkah-langkah yang mungkin untuk mencapai ini pada dokumen , tetapi tidak berhasil.
input
langkah dalam pipa yang berhenti dan meminta input dari pengguna (atau untuk membatalkan pembuatan). Namun, panggung dan indikator status terus berkedip sementara saya ingin keadaan stabil (misalnya Anda masuk ke sana Jumat sore dan memutuskan untuk menggunakan pada hari Senin.)Jawaban:
input adalah opsi yang Anda cari. Inilah cara saya menggunakannya. Sangat penting untuk memiliki langkah di luar simpul, jika tidak jenkins akan menahan agen menunggu langkah selanjutnya. Ingat node kedua mungkin tidak menggunakan ruang kerja yang sama dengan yang pertama.
sumber
Pada akhirnya saya membuat jalur terpisah
test-project
danprod-project
pipa, di mana pada akhirtest-project
kode digabung menjadiapproved
cabang.Kemudian,
prod-project
pipa dapat diatur untuk tidak memicu setiap komit baru sehingga dapat digunakan sesuai permintaan.sumber
Selain itu, Anda juga dapat menambahkan batas waktu otomatis seperti di bawah ini
Jika Anda mencarinya, Anda juga dapat mengikat input jenkins ke kredensial pengguna yang mengakses Jenkins jika Anda hanya ingin mengizinkan orang-orang tertentu untuk dapat menjawab - itu juga didukung oleh fakta bahwa kontrol Git Anda juga memadai.
sumber
Ini hanyalah contoh sederhana tetapi Anda dapat memicunya sesuai kebutuhan.
sumber
Saya melakukannya seperti yang ditunjukkan di bawah ini dengan membaca dokumen ini https://jenkins.io/doc/book/pipeline/syntax/
sumber