ZPM - manajer paket untuk InterSystems IRIS

Manajer paket untuk berbagai platform sangat banyak digunakan, mereka memungkinkan Anda untuk dengan cepat menginstal dan mengkonfigurasi banyak komponen dan pustaka yang sudah jadi. Dan juga digunakan untuk menggunakan solusi mereka sendiri. Adalah penting bahwa manajer paket menangani dependensi, mis. jika aplikasi Anda menggunakan beberapa jenis pustaka dari versi tertentu, maka manajer paket, ketika menginstal aplikasi Anda, juga akan menginstal versi yang diperlukan dari pustaka ini.

Sekarang untuk InterSystems IRIS, manajer paket, ZPM, juga tersedia.

ZPM memungkinkan Anda menemukan, menginstal, memperbarui modul, dan juga dapat digunakan untuk menerbitkan modul. Setiap modul dapat berupa aplikasi terpisah, pustaka, kerangka kerja, utilitas, atau contoh penggunaan teknologi InterSystems.

Manajer Paket ZPM


ZPM terdiri dari dua komponen:

  • Client (CLI)
    Utilitas yang menginstal ke IRIS Anda dan digunakan untuk mengelola modul (misalnya, untuk instalasi)
  • Registri
    Basis data modul dan meta-informasi yang digunakan untuk mengelola modul.

Secara default, klien ZPM dikonfigurasikan untuk menggunakan registri: pm.community.intersystems.com adalah registri komunitas pengembang. Registri ini telah menerbitkan banyak contoh, utilitas, dan perpustakaan.

Anda juga dapat mengambil dan menggunakan registri Anda sendiri (lebih lanjut tentang itu di artikel ini).

Di mana untuk memulai


1. Instal klien ZPM


Unduh penginstal terbaru dari tautan ini .

Impor kelas yang diunduh ke area mana saja dengan cara apa pun yang nyaman bagi Anda: melalui portal, melalui Studio atau melalui terminal.

USER>Do $System.OBJ.Load("/path/zpm.xml", "ck")

Jika Anda menggunakan Docker, maka Anda dapat menggunakan gambar IRIS InterSystems Edisi Komunitas dan IRIS InterSistem untuk Edisi Komunitas Kesehatan, yang sudah mengandung versi ZPM terbaru ( untuk lebih jelasnya, lihat dokumentasi ).

2. Mulai ZPM


Setelah instalasi, ZPM tersedia di area mana pun.
Untuk menggunakan ZPM, cukup ketik perintah zpm di terminal dan Anda akan menjalankan antarmuka baris perintah manajer paket (CLI) ZPM.

MYNS> zpm
zpm: MYNS>

Dengan menggunakan perintah bantuan, Anda bisa mendapatkan daftar semua perintah yang tersedia.

zpm: MYNS>help


3. Memasang modul


Pertama-tama, menggunakan perintah pencarian, lihat daftar modul yang tersedia di registri:

zpm: MYNS>search
 
registry https://pm.community.intersystems.com:
analyzethis 1.1.4
blocksexplorer 2.2.1
dsw 2.1.41

Gunakan perintah install untuk menginstal modul terbaru atau pembaruan. Instalasi akan dilakukan di area saat ini.

zpm: MYNS>install dsw
 
[mdx2json] 	Reload START
[mdx2json] 	Reload SUCCESS
[mdx2json] 	Module object refreshed.
[mdx2json] 	Validate START
[mdx2json] 	Validate SUCCESS
[mdx2json] 	Compile START
[mdx2json] 	Compile SUCCESS
[mdx2json] 	Activate START
[mdx2json] 	Configure START
[mdx2json] 	Configure SUCCESS
[mdx2json] 	Activate SUCCESS
[dsw] 	Reload START
[dsw] 	Reload SUCCESS
[dsw] 	Module object refreshed.
[dsw] 	Validate START
[dsw] 	Validate SUCCESS
[dsw] 	Compile START
[dsw] 	Compile SUCCESS
[dsw] 	Activate START
[dsw] 	Configure START
[dsw] 	Configure SUCCESS
[dsw] 	Activate SUCCESS

Seperti yang Anda lihat, modul mdx2json diinstal terlebih dahulu, di mana modul dsw tergantung, dan kemudian dsw.

Itu saja - modul terpasang dan dikonfigurasi!

Banyak perintah memiliki flag khusus, misalnya, flag -v atau -verbose memungkinkan Anda melihat detail, misalnya:

zpm: MYNS>install dsw -v

Lihat daftar lengkap perintah untuk argumen dan tanda pada halaman dokumentasi atau menggunakan perintah bantuan.

Mempersiapkan dan menerbitkan paket Anda sendiri


Agar Anda dapat mempublikasikan paket Anda sendiri, Anda harus:

  • buat kode Anda bekerja di InterSystems IRIS;
  • siapkan file module.xml.

File module.xml menjelaskan paket Anda, sumber daya yang termasuk dalam paket, dependensi dan komponen yang diperlukan saat menginstal paket (misalnya, membuat aplikasi web).

Jika Anda menggunakan InterSystems IRIS Installation Manifest (% Installer) sebelumnya , Anda akan menemukan banyak kesamaan di module.xml dan di blok XDATA.

Deskripsi format xml dalam dokumentasi

Anda dapat menemukan contoh module.xml untuk modul yang diterbitkan:
github.com/isc-zpm/DeepSeeWeb/blob/master/module.xml
github.com/isc-zpm/Samples-BI/blob/master/ module.xml

Untuk menerbitkan paket Anda ke registry publik pm.community.intersystems.com, cukup terbitkan aplikasi di Open Exchange dan tentukan repositori publiknya.

Setel registri Anda sendiri


Membuat registri Anda sendiri adalah opsional, tetapi dengan itu Anda dapat memeriksa bagaimana modul Anda dirakit dan diinstal.

Jika Anda berencana untuk menerbitkan aplikasi Anda di registri publik pm.community.intersystems.com, Anda disarankan untuk terlebih dahulu memeriksa semua langkah di registri lokal Anda.

Untuk menginstal registri Anda sendiri, Anda dapat menggunakan perintah install.
Pergi ke area registri (selanjutnya kami akan menganggap bahwa itu disebut REGISTRY) dan jalankan

REGISTRY>zpm
zpm: REGISTRY>install zpm-registry

Periksa apakah registri Anda berfungsi - buka halaman localhost : 52773 / registry / _ping di browser Anda (Anda mungkin perlu menentukan port lain, tergantung pada pengaturan IRIS Anda). Saat mengakses halaman, Anda harus menentukan login dan kata sandi pengguna IRIS (misalnya: _system / SYS).

Jika Anda melihat {"message": "ping"} - registri Anda berhasil diinstal.

Sekarang konfigurasikan klien ZPM Anda untuk bekerja dengan registri baru.

Jalankan perintah:

zpm: MYNS>repo -r -n registry -url http://localhost:52773/registry/ -user _system -pass SYS

Perintah ini mengatakan bahwa klien ZPM perlu menggunakan registri yang tersedia di URL yang ditentukan sebagai registri jarak jauh dan meneruskan nama pengguna dan kata sandi yang ditentukan dalam argumen -user dan -pass ketika masing-masing mengakses.

Publikasikan modul


Periksa apakah Anda telah membuat folder terpisah di mana module.xml dan kelas-kelas modul Anda berada (kelas biasanya ditempatkan di folder / src). Pada contoh di bawah ini, modul ini akan disebut demo-module (namanya ditentukan dalam module.xml).

Pastikan Anda telah beralih ke registri pengujian.

Gunakan perintah muat untuk memuat kode Anda ke area saat ini:

zpm: MYNS>load /path/to/module/folder
[demo-module]  Reload START
[demo-module]  Reload SUCCESS
[demo-module]  Module object refreshed.
[demo-module]  Validate START
[demo-module]  Validate SUCCESS
[demo-module]  Compile START
[demo-module]  Compile SUCCESS
[demo-module]  Activate START
[demo-module]  Configure START
[demo-module]  Configure SUCCESS
[demo-module]  Activate SUCCESS

Perintah ini melakukan sejumlah tindakan - unduh dan kompilasi kode Anda dan konfigurasikan modul Anda.

Sekarang klien ZPM tahu segalanya tentang modul Anda dan dapat menerbitkannya.

Untuk mempublikasikan, gunakan perintah aksi modul dengan argumen publikasikan:

zpm: MYNS>module-action demo-module publish

Perintah aksi modul dapat dihilangkan, dan ditulis lebih pendek:

zpm: MYNS>demo-module publish
[demo-module]  Reload START
[demo-module]  Reload SUCCESS
[demo-module]  Module object refreshed.
[demo-module]  Validate START
[demo-module]  Validate SUCCESS
[demo-module]  Compile START
[demo-module]  Compile SUCCESS
[demo-module]  Activate START
[demo-module]  Configure START
[demo-module]  Configure SUCCESS
[demo-module]  Activate SUCCESS
[demo-module]  Package START
Module exported to:
 	/var/folders/9f/r62h3fxj42b5fzb0hgnb28m40000gn/T/direyLtX5/demo-module-1.0.0/
 
Module package generated:
 	/var/folders/9f/r62h3fxj42b5fzb0hgnb28m40000gn/T/direyLtX5/demo-module-1.0.0.tgz
[demo-module]  Package SUCCESS
[demo-module]  Register START
[demo-module]  Register SUCCESS
[demo-module]  Publish START
[demo-module]  Publish SUCCESS

Ketika perintah ini dijalankan, modul pertama-tama akan "dirakit" (yaitu, disiapkan untuk publikasi) dan diekspor ke direktori sementara, diarsipkan dan kemudian diterbitkan ke registri yang saat ini aktif.

Sekarang jika Anda menjalankan perintah pencarian Anda akan melihat modul Anda dalam daftar:

zpm: MYNS>search                          
 
registry http://localhost:52773/registry/:
demo-module 1.0.0

Untuk memverifikasi bahwa instalasi berhasil, instal modul Anda dari registri tes menggunakan ZPM ke instalasi IRIS baru atau area baru.

Beralih ke registri default


Untuk beralih ke bekerja dengan registri default (pm.community.intersystems.com) gunakan flag -reset-default:

zpm: MYNS>repo -r -n registry -reset-defaults


Poskan modul ke registri komunitas


Anda dapat menerbitkan modul Anda di pendaftaran komunitas (pm.community.intersystems.com) sehingga semua pengembang di InterSystems dapat menginstal dan menggunakannya dalam solusi mereka.
Untuk melakukan ini, publikasikan solusi Anda di InterSystems Open Exchange - pasar untuk aplikasi di InterSystems dan tunjukkan selama instalasi bahwa solusinya adalah modul Package Manager:

Selain itu, Anda dapat menonton video ini tentang menginstal solusi di Open Exchange.

Butuh bantuanmu!


ZPM didukung komunitas - tolong laporkan masalah atau saran untuk perbaikan - buat masalah di repositori proyek .

Catatan tentang lisensi.

Klien dan registri ZPM yang terletak di pm.community.intersystems.com tidak didukung oleh InterSystems Corporation dan disajikan sebagaimana berada di bawah lisensi MIT.

All Articles