Function Compute mendukung fitur versioning untuk membantu Anda mengelola fungsi dan pemicu secara efisien. Anda dapat menerbitkan beberapa versi dari sebuah fungsi untuk mengimplementasikan integrasi dan penyebaran berkelanjutan (CI/CD) sepanjang siklus hidup pengembangan perangkat lunak serta memastikan stabilitas dan keandalan fungsi tersebut.
Apa itu versi?
Function Compute memberikan kontrol versi yang lebih rinci pada tingkat fungsi, sehingga memungkinkan Anda menerbitkan beberapa versi fungsi sesuai kebutuhan. Menerbitkan versi menangkap kode dan konfigurasi saat ini sebagai garis dasar yang tidak dapat diubah, sementara atribut sumber daya seperti pemicu, pengaturan tugas asinkron, dan kebijakan penskalaan tidak termasuk dalam garis dasar ini. Pemicu dan tugas asinkron dapat dikonfigurasikan secara independen untuk setiap versi, sedangkan kebijakan penskalaan dikelola secara eksklusif melalui alias.
Tanpa versioning, setiap perubahan pada fungsi Anda akan langsung memengaruhi lingkungan produksi tanpa kontrol waktu untuk menerapkan pembaruan. Fitur versioning memungkinkan Anda menerbitkan versi fungsi yang stabil setelah pengujian untuk melayani permintaan online sambil terus mengembangkan dan menguji versi LATEST dari fungsi tersebut. Diagram berikut menggambarkan mekanisme ini.
Versi yang dirilis mencakup informasi fungsi penting seperti runtime, handler, dan perintah startup, bersama dengan detail konfigurasi instans seperti tipe instans, konkurensi, dan kait siklus hidup. Ini juga mencakup lapisan fungsi, variabel lingkungan, konfigurasi log, pengaturan jaringan, konfigurasi penyimpanan, konfigurasi DNS, pemeriksaan kesehatan, dan pengaturan izin. Mengganti versi tidak memerlukan modifikasi apa pun pada kode fungsi atau konfigurasi ini.
Tabel berikut mencantumkan item konfigurasi yang dapat dikaitkan dengan versi dan/atau alias.
menunjukkan bahwa item konfigurasi mendukung pengikatan ke versi atau alias, sedangkan
menandakan bahwa itu tidak mendukung pengikatan.
Item konfigurasi | Versi | Alias |
Logika kode |
|
|
|
| |
Spesifikasi instance, konkurensi instance, instance lifecycle hook |
|
|
|
| |
|
| |
|
| |
Layer, variabel lingkungan, logging, jaringan, penyimpanan, pemeriksaan kesehatan, DNS kustom, izin (peran) |
|
|
Pertimbangan
Fungsi yang baru dibuat dilengkapi dengan versi default LATEST. Sebelum Anda menerbitkan versi apa pun, versi LATEST adalah satu-satunya versi dari fungsi tersebut dan tidak dapat dihapus.
Versi yang telah diterbitkan tidak dapat dimodifikasi. Nomor versi meningkat secara monoton dan tidak dapat digunakan kembali.
Prasyarat
Fungsi telah dibuat. Untuk informasi lebih lanjut, lihat Buat fungsi.
Terbitkan versi
Masuk ke Konsol Function Compute. Di panel navigasi di sebelah kiri, klik Functions.
Di bilah navigasi atas, pilih wilayah. Di halaman Functions, klik fungsi yang ingin Anda kelola.
Klik tab Versions. Pada tab Versions, klik Publish Version. Di panel Publish Version, masukkan deskripsi versi dan klik OK.
Setelah versi diterbitkan, Anda dapat menemukannya di tab Versi. Anda dapat menghapus versi yang tidak lagi Anda butuhkan dan menetapkan versi sebagai versi rilis utama atau versi rilis canary dari sebuah alias sesuai dengan prompt.
Saat Anda menghapus versi, hanya fungsi dan konfigurasi dalam versi tersebut yang dihapus. Alias yang menunjuk ke versi dan pemicu versi tersebut tetap dipertahankan. Oleh karena itu, kami sarankan Anda terlebih dahulu menghapus alias dan pemicu yang terkait dengan versi sebelum menghapusnya. Jika tidak, kesalahan akan terjadi jika Anda mencoba memanggil alias yang menunjuk ke versi tersebut.
Referensi
Untuk informasi lebih lanjut tentang cara menetapkan versi tertentu sebagai versi utama atau versi rilis canary dari alias, lihat Kelola alias dan Gunakan versi dan alias untuk mengimplementasikan rilis canary.
Selain Konsol Function Compute, Anda dapat menggunakan Serverless Devs untuk menerbitkan versi fungsi. Untuk informasi lebih lanjut, lihat Panduan pengguna untuk versi.