Tugas dan Properti Plugin App Engine Gradle

Setelah menambahkan plugin App Engine ke project, Anda dapat menggunakan tugas Gradle khusus App Engine berikut untuk aplikasi di lingkungan standar App Engine:

Tugas Deskripsi
tasks Menampilkan informasi bantuan tentang tugas yang diinstal.
appengineCloudSdkLogin Menetapkan status gcloud CLI global untuk account.
appengineDeploy Melakukan tahapan dan men-deploy aplikasi ke App Engine.
appengineDeployAll Melakukan tahapan dan men-deploy aplikasi dengan semua konfigurasi yaml yang valid secara bersamaan ke App Engine.
appengineDeployCron Melakukan tahapan dan men-deploy file konfigurasi cron.yaml ke App Engine.
appengineDeployDispatch Melakukan tahapan dan men-deploy file konfigurasi dispatch.yaml ke App Engine.
appengineDeployDos Melakukan tahapan dan men-deploy file konfigurasi dos.yaml ke App Engine.
appengineDeployIndex Melakukan tahapan dan men-deploy file konfigurasi index.yaml ke App Engine.
appengineDeployQueue Melakukan tahapan dan men-deploy file konfigurasi queue.yaml ke App Engine.
appengineRun Menjalankan server pengembangan App Engine. Saat berjalan, server terus memeriksa untuk menentukan apakah appengine-web.xml telah berubah. Jika ya, server akan memuat ulang aplikasi. Anda tidak perlu menghentikan dan memulai ulang aplikasi karena adanya perubahan pada appengine-web.xml.
appengineStage Menghasilkan direktori aplikasi untuk deployment.
appengineStart Mulai menjalankan server pengembangan aplikasi App Engine secara asinkron, lalu kembali ke command line. Saat sasaran ini berjalan, perilakunya sama dengan sasaran run, kecuali bahwa Gradle terus memproses tugas dan keluar setelah server aktif dan berjalan.
appengineStop Menghentikan server pengembangan web App Engine yang sedang berjalan.
explodeWar Meledakkan file WAR ke dalam direktori build.

Untuk melihat daftar semua tugas:

gradle tasks

Untuk informasi selengkapnya tentang cara menyiapkan dan menggunakan Gradle, lihat Menggunakan Gradle App Engine.

Properti tugas

Konten file gradle.build adalah sekumpulan aturan untuk mendeskripsikan build Anda. Penanda ini ditulis dalam bahasa khusus domain untuk mendeskripsikan build, berdasarkan bahasa Groovy.

Setiap tugas memiliki properti terkait di bawah ini yang dapat Anda gunakan. Anda dapat menentukan properti ini dalam file gradle.build menggunakan tugas penutupan konfigurasi, dan properti.

Dalam contoh berikut:

  • Penutupan konfigurasi untuk plugin adalah appengine.
  • Tugasnya adalah run.
  • Properti port disetel ke 8080.
appengine {  // App Engine tasks configuration
  run {      // local (dev_appserver) configuration (standard environments only)
    port = 8080                 // default
  }

  deploy {   // deploy configuration
    stopPreviousVersion = true  // default - stop the current version
    promote = true              // default - & make this the current version
  }
}

Jika hanya perlu menentukan beberapa properti, Anda dapat menetapkannya dalam satu baris:

  appengine.run.port = 8888

Lihat bagian berikut untuk mengetahui daftar properti yang tersedia untuk setiap tugas.

appengineStage

tugas(tahap)

Menghasilkan direktori aplikasi untuk deployment. appengineStage digunakan oleh tugas appengineDeploy.

Anda dapat menggunakan properti berikut:

Properti Deskripsi
compileEncoding Encoding karakter yang akan digunakan saat mengompilasi JSP. Hanya berlaku untuk aplikasi yang berjalan di lingkungan standar App Engine.
deleteJsps Hapus file sumber JSP setelah kompilasi. Hanya berlaku untuk aplikasi yang berjalan di lingkungan standar App Engine.
disableJarJsps Nonaktifkan penambahan class yang dihasilkan dari JSP. Hanya berlaku untuk aplikasi yang berjalan di lingkungan standar App Engine.
disableUpdateCheck Menonaktifkan pemeriksaan update gcloud CLI.
enableJarClasses Menambahkan WEB-INF/classes content ke dalam jar. Hanya berlaku untuk aplikasi yang berjalan di lingkungan standar App Engine.
useMtimeFileWatcher Menggunakan polling mtime untuk mendeteksi perubahan kode sumber. Berguna jika mengubah kode dari mesin jarak jauh menggunakan sistem file terdistribusi.
enableJarSplitting Pisahkan file JAR yang berukuran lebih dari 10 MB menjadi fragmen yang lebih kecil. Hanya berlaku untuk lingkungan standar App Engine.
enableQuickstart Gunakan panduan memulai Eclipse Jetty untuk memproses anotasi servlet. Hanya berlaku untuk lingkungan standar App Engine.
jarSplittingExcludes Kecualikan file yang cocok dengan daftar SUFFIXES yang dipisahkan koma dari semua file JAR. Hanya berlaku untuk aplikasi yang berjalan di lingkungan standar App Engine.
sourceDirectory Wajib. Lokasi file aplikasi web yang dikompilasi, atau WAR yang meledak. Ini digunakan sebagai sumber untuk staging. Hanya berlaku untuk lingkungan standar App Engine. Default-nya adalah build/exploded-${gradle-module-name}.
stagingDirectory Wajib. Direktori tempat melakukan staging aplikasi. Default-nya adalah build/staged-app.

appengineRun

task(run)

Menjalankan server web pengembangan aplikasi App Engine. Saat server berjalan, server terus memeriksa untuk menentukan apakah appengine-web.xml telah berubah. Jika ya, server akan memuat ulang aplikasi. Ini berarti Anda tidak perlu menghentikan dan memulai ulang aplikasi karena perubahan pada appengine-web.xml.

Anda dapat menggunakan properti berikut, beberapa di antaranya sesuai dengan tanda command line server pengembangan lokal:

Properti Deskripsi
environment Peta variabel lingkungan yang akan dikirim ke server pengembangan lokal. Contoh: [key1: "value1", key2: "value2"]
jvmFlags Argumen tambahan yang akan diteruskan ke perintah java saat meluncurkan instance aplikasi. Dapat ditentukan lebih dari sekali. Contoh: -Xmx1024m -Xms256m
host Nama host yang harus diikat oleh layanan aplikasi. Default-nya adalah localhost.
port Port terendah yang harus diikat oleh layanan aplikasi. Default-nya adalah 8080.
serverVersion Versi server yang akan diluncurkan, opsinya adalah "1" dan "2-alpha". Defaultnya adalah "1".
services Wajib. Jalur ke direktori yang berisi direktori yang berisi WEB-INF/web.xml. Default-nya adalah build/exploded-app.
startSuccessTimeout Jumlah waktu dalam detik untuk menunggu Server Aplikasi Dev dimulai di latar belakang (saat menggunakan appengineStart).

appengineDeploy

task(deploy)

Melakukan tahapan dan men-deploy aplikasi ke App Engine.

Properti Deskripsi
appEngineDirectory Lokasi file konfigurasi .yaml (cron, index, dll.) tempat deployment tertentu konfigurasi (appengineDeployCron, dll.) akan di-deploy. Untuk aplikasi standar, file konfigurasi .xml Anda dikonversi selama tahapan ke .yaml dan ditempatkan di build/staged-app/WEB-INF/appengine-generated.
bucket Bucket Google Cloud Storage digunakan untuk melakukan tahapan file yang terkait dengan deployment. Jika argumen ini tidak ditentukan, bucket default aplikasi akan digunakan.
imageUrl Men-deploy dengan image Docker tertentu. URL Docker harus berasal dari salah satu nama host Google Container Registry yang valid.
projectId Project ID Google Cloud Platform yang akan digunakan untuk pemanggilan ini. Anda harus menentukan projectId, atau Anda dapat menetapkan GCLOUD_CONFIG untuk menggunakan project yang ditetapkan dalam status konfigurasi gcloud Anda.
promote Mempromosikan versi yang di-deploy untuk menerima semua traffic. Defaultnya adalah true.
server Server App Engine yang akan dihubungkan. Biasanya, Anda tidak perlu mengubah nilai ini.
stopPreviousVersion Hentikan versi yang berjalan sebelumnya saat men-deploy versi baru yang menerima semua traffic.
version Versi aplikasi yang akan dibuat atau diganti oleh deployment ini. Jika Anda tidak menentukan versi, versi tersebut akan dibuat untuk Anda.

Properti global

Properti Deskripsi
tools.cloudSdkHome Properti opsional untuk mengonfigurasi lokasi gcloud CLI. Jika properti ini tidak ditentukan, plugin akan otomatis mendownload gcloud CLI.
tools.cloudSdkVersion Parameter opsional untuk menentukan versi gcloud CLI yang diinginkan.