Secara default, runtime node.js akan menjalankan npm run build jika skrip build
terdeteksi dalam file package.json. Jika Anda memerlukan kontrol tambahan pada
langkah-langkah build sebelum memulai aplikasi, Anda dapat memberikan langkah-langkah
build kustom. Langkah-langkah build kustom dapat dijalankan dengan menambahkan gcp-build dalam
file package.json Anda.
Untuk mencegah build menjalankan skrip npm run build, Anda harus:
- Menambahkan skrip
gcp-builddengan nilai kosong di filepackage.jsonAnda:"gcp-build":"". Untuk detail tentang cara mengonfigurasipackage.json, lihat konfigurasi buildpack Node.js. Menambahkan variabel lingkungan build
GOOGLE_NODE_RUN_SCRIPTSdengan nilai kosong di fileapp.yaml.build_env_variables: GOOGLE_NODE_RUN_SCRIPTS: ''
build_env_variables dalam file app.yaml.
Saat skrip ini dijalankan, dependensi di kolom dependencies dan
devDependencies dari file package.json Anda akan tersedia.
Setelah menjalankan langkah build kustom, App Engine akan menghapus dan membuat ulang
folder node_modules hanya dengan menginstal dependensi produksi yang dideklarasikan
di kolom dependencies pada file package.json Anda.
Untuk mengetahui informasi selengkapnya tentang cara mengonfigurasi runtime untuk langkah build kustom, baca Menjalankan langkah build kustom selama deployment untuk buildpack Node.js.
Contoh
Skrip build kustom dapat digunakan untuk tugas pra-pemrosesan, seperti
CSS pra-pemrosesan, meminifikasi JavaScript sisi klien, atau menjalankan alat, seperti
webpack atau gulp.
Misalnya, untuk mengompilasi TypeScript ke JavaScript,
file package.json Anda mungkin akan
terlihat seperti berikut. Perhatikan skrip gcp-build:
Menyajikan file statis
Saat Anda membuat atau menyalin file selama langkah build kustom, App Engine tidak
menyalurkan file statis ini langsung dari aplikasi Anda menggunakan
static_dir
atau static_files
yang ditentukan dalam file app.yaml. Sebagai gantinya, App Engine akan mengupload
file statis ke infrastruktur penayangan di lingkungan standar
sebelum menjalankan langkah build kustom. Setiap permintaan ke file yang dihasilkan
atau disalin selama langkah build kustom akan menghasilkan
error HTTP 404 NOT FOUND.