Lewati ke isi
Profil penulisSeri Buku GIS Kehutanan dan Pertanian/ M4
Tampilkan bagian untuk:

BAB 6: Dari Meja Sendiri ke Tangan Orang Lain: Rilis dan Perawatan

#Studi kasus: "Boleh saya pakai juga?"

Rekan dari kantor lain mendengar tentang plugin Ringkas KPH dan ingin memakainya. Analis Muda sadar bahwa mengirim folder lewat pesan singkat itu rawan: folder mana yang terbaru, siapa yang bertanggung jawab bila ada galat, dan apakah boleh dipakai ulang? Ia perlu mengemas alatnya dengan benar, memberinya nomor versi, dan menyiapkan cara merawatnya.

#Konsep: rilis dalam tiga kalimat

Rilis adalah versi alat yang sudah diuji, diberi nomor, dan dikemas untuk dipakai orang lain. Bayangkan makanan kemasan: ada nama, tanggal produksi, komposisi, dan nomor kontak. Tanpa itu, pembeli tidak tahu apa yang ia bawa pulang.

Ilustrasi 6.1: Jalur rilis
Skema lima tahap: uji, beri versi, kemas, terbitkan, rawat

#Nomor versi yang bermakna

Lima istilah baru untuk bab ini:

  • Nomor versi: tiga angka mayor.minor.tambal, misalnya 0.1.0.
  • Changelog: catatan perubahan tiap versi.
  • Lisensi: aturan yang menyatakan apa yang boleh dilakukan orang lain dengan alat Anda.
  • Repositori: tempat menyimpan dan menerbitkan kode atau paket.
  • Tracker: tempat pengguna melapor masalah.

Aturan nomor versi yang lazim: naikkan mayor bila ada perubahan yang membuat pemakaian lama tidak cocok. Naikkan minor bila menambah fitur dengan tetap cocok. Naikkan tambal bila hanya memperbaiki kesalahan.

Ilustrasi 6.2: Naik versi
Skema tiga angka versi dan artinya: mayor, minor, tambal

#Bagian A: QGIS

#Bagian A: Merilis plugin QGIS

  1. Uji dulu. Jalankan skrip/uji_plugin.py (Bab 1) sampai semua langkahnya lolos.
  2. Periksa metadata. Berkas skrip/kemas_plugin.py memeriksa tiga hal: ada __init__.py dengan classFactory, semua bidang wajib metadata.txt terisi, dan versi berpola tiga angka. Bagian pemeriksa:
kemas_plugin.py
if g.get("version") and not POLA_VERSI.match(g["version"]):
    masalah.append("versi bukan pola mayor.minor.tambal: " + g["version"])
  1. Naikkan versi. Ubah version di metadata.txt dan tambahkan baris di changelog. Misalnya dari 0.1.0 ke 0.1.1 untuk perbaikan kecil.
  2. Kemas. Jalankan python kemas_plugin.py. Hasilnya plugin_ringkas_kph-0.1.0.zip. Satu aturan penting: isi zip harus berupa satu folder bernama sama dengan plugin. Folder itulah yang nanti berada di folder plugin QGIS.
  3. Pasang dari zip. Pada mesin lain, buka Plugins ► Manage and Install Plugins, pilih Install from ZIP, lalu tunjuk berkas zip. [CEK]
  4. Terbitkan (bila perlu). Repositori plugin resmi QGIS (plugins.qgis.org) menerima plugin yang metadata-nya lengkap. Syarat rinci, termasuk akun dan lisensi, perlu dibaca di situs itu. [CEK: tidak dilakukan penulis]
  5. Rawat. Siapkan tempat pelaporan masalah (kolom tracker), perbaiki, naikkan versi, kemas ulang.

#Aturan hidup alat yang sehat

  • Jangan menyimpan kata sandi, kunci, atau alamat internal di dalam kode alat. Alat yang dibagikan akan ikut membawanya.
  • Jangan menyertakan data asli di dalam paket. Pakai data sintetis untuk contoh.
  • Cantumkan lisensi dan penulis. Tanpa lisensi, orang lain tidak tahu apa yang boleh mereka lakukan.
  • Tulis pesan galat yang ramah. "Pilih dulu satu layer vektor di panel Layers" lebih berguna daripada jejak galat panjang.
  • Catat apa yang sudah diuji, dan di versi mana. Seperti pada buku ini: bagian yang belum teruji diberi tanda.

#Bagian B: ArcGIS Pro

#Bagian B: ArcGIS Pro

Bentuk berbagi tergantung jalurnya (Bab 1):

  • Python toolbox atau script tool: bagikan berkas toolbox (.pyt atau .atbx) bersama folder skripnya. Penerima menyambungkannya lewat panel Catalog. [CEK]
  • Add-in .NET: dikemas oleh Visual Studio menjadi berkas add-in yang dipasang oleh penerima. Pembuatannya mengikuti dokumentasi ArcGIS Pro SDK untuk .NET. [CEK]
  • Berbagi lewat portal: alat geoprocessing dan layer juga bisa dibagikan lewat ArcGIS Online atau Enterprise, dengan pengaturan siapa yang boleh melihat. [CEK]

Aturan nomor versi, lisensi, dan perawatan berlaku sama.

#Bagian C: ArcMap 10.8

#Bagian C: ArcMap 10.8

Python add-in dikemas wizard menjadi satu berkas add-in yang bisa dibagikan. Penerima memasangnya lewat Add-In Manager atau dengan klik dua kali berkas itu. [CEK: dari dokumentasi Esri]

Toolbox Python dibagikan seperti di Pro. Karena ArcMap memakai Python 2.7, uji ulang kode di versi itu. [CEK]

#Peta penutup: dari bahan ke produk

Enam bab seri ini membangun satu jalur kerja untuk KPH Contoh:

BabProdukBerkasAngka uji
1Plugin Ringkas KPHplugin_ringkas_kph/16 objek, 16,00 ha
2Processing scriptkerapatan_hotspot.py12 titik, 1 petak rawan (batas 2)
3Peta web lokalbuat_peta_web.py16 petak, 12 titik
4Dasborbuat_dasbor.py385 titik panas, puncak 21 September
5Model 3Ddsm_ke_obj.py2.500 titik sudut, 4.802 segitiga
6Paket riliskemas_plugin.pyzip 4 berkas

#Ceklis kesiapan

Sebelum merasa mahir pada bahan seri ini, periksa dengan jujur:

  • Saya bisa menjelaskan fungsi initGui dan unload pada plugin.
  • Saya bisa menulis Processing script dengan parameter dan keluaran.
  • Saya bisa menjelaskan perbedaan WMS, WFS, ubin, dan GeoJSON.
  • Saya tahu mengapa CRS harus diubah sebelum ke web.
  • Saya bisa membuat dasbor yang menjawab satu pertanyaan.
  • Saya bisa menyebut skala vertikal pada model 3D.
  • Saya tidak menaruh kata sandi atau data asli di dalam paket alat.

#Cek paham

  1. Kapan menaikkan angka mayor pada versi alat?
  2. Mengapa isi zip plugin harus satu folder?
  3. Apa risiko menaruh kata sandi di dalam kode plugin?

Jawaban:

  1. Saat ada perubahan yang membuat pemakaian lama tidak lagi cocok.
  2. Folder itulah yang diletakkan di folder plugin QGIS. Bila berkas berserakan, plugin tidak dikenali.
  3. Siapa pun yang menerima plugin bisa membacanya.

#Kesalahan umum

  • Zip berisi berkas langsung tanpa folder. Plugin gagal dipasang. Kemas ulang dengan satu folder induk.
  • Versi tidak dinaikkan setelah perbaikan. Pengguna tidak tahu mana yang terbaru. Naikkan versi tiap rilis.
  • Alamat contoh ikut terbit. Ganti example.org sebelum menerbitkan sungguhan.
  • Tanpa lisensi. Orang ragu memakai atau memperbaiki alat Anda. Cantumkan lisensi.

#Ringkasan dan latihan

Ringkasan: Rilis berarti uji, beri versi, kemas, terbitkan, dan rawat. Nomor versi tiga angka menyampaikan jenis perubahan. Alat yang sehat tidak membawa rahasia dan menyebut lisensinya.

Latihan: Naikkan versi plugin ke 0.1.1, tambahkan baris changelog, lalu jalankan kemas_plugin.py. (Petunjuk: nama zip hasilnya plugin_ringkas_kph-0.1.1.zip.)

#Tabel perbandingan: berbagi alat kustom

HalQGISArcGIS ProArcMap 10.8
Berkas yang dibagikanZip pluginToolbox atau add-inBerkas add-in atau toolbox
PemasanganInstall from ZIPSambung lewat Catalog atau pasang add-inAdd-In Manager atau toolbox
Penerbitan resmiRepositori plugin QGISLewat portal Esri [CEK]Tidak ada padanan setara [CEK]