Open Exchange App Ya está disponible InterSystems ObjectScript Package Manager, el nuevo gestor de paquetes de InterSystems

Solapas principales

¡Hola desarrolladores!

Siempre que desarrollamos una biblioteca, herramienta, paquete o lo que sea en InterSystems ObjectScript, nos surge una pregunta: ¿cómo desplegar este paquete en la máquina destino?

Adicionalmente, en muchas ocasiones se supone que debe haber otras bibliotecas instaladas de las que depende nuestro código y a menudo de una versión particular de las mismas.

Cuando uno programa en javascript, python, etc., el rol de despliegue de paquetes con gestión de dependencias se realiza por el package manager o gestor de paquetes.

Por eso, me complace anunciar que ya está disponible nuestro administrador de paquetes, el InterSystems ObjectScript Package Manager .

¡ADVERTENCIA!

Descargo de responsabilidad.

El servidor de InterSystems ObjectScript Package Manager, ubicado en pm.community.intersystems.com y el cliente InterSystems ObjectScript Package Manager instalable desde pm.community.intersystems.com o desde Github, no cuentan con respaldo de InterSystems Corporation y se ofrecen tal y como están bajo licencia MIT. Úselo, desarróllelo y contribuya a la herramienta bajo su propio riesgo.

¿Cómo funciona?

InterSystems ObjectScript Package Manager consta de dos partes. Por un lado está el servidor de Package Manager que aloja los paquetes de ObjectScript y brinda la API para que los clientes ZPM implementen y listen los paquetes. Hoy contamos con un servidor del gestor de paquetes para la comunidad de desarrolladores disponible en pm.community.intersystems.com

Puedes instalar cualquier paquete en InterSystems IRIS mediante el cliente ZPM instalado primero en el sistema IRIS.

¿Cómo usar InterSystems Package Manager?

1. Compruebe la lista de paquetes disponibles

Abra https://pm.community.intersystems.com/packages/-/all para ver la lista de paquetes disponibles actualmente. 

[{"name":"analyzethis","versions":["1.1.1"]},{"name":"deepseebuttons","versions":["0.1.7"]},{"name":"dsw","versions":["2.1.35"]},{"name":"holefoods","versions":["0.1.0"]},{"name":"isc-dev","versions":["1.2.0"]},{"name":"mdx2json","versions":["2.2.0"]},{"name":"objectscript","versions":["1.0.0"]},{"name":"pivotsubscriptions","versions":["0.0.3"]},{"name":"restforms","versions":["1.6.1"]},{"name":"thirdpartychartportlets","versions":["0.0.1"]},{"name":"webterminal","versions":["4.8.3"]},{"name":"zpm","versions":["0.0.6"]}]

Cada paquete tiene un nombre y una versión.

Si desea instalar uno en InterSystems IRIS, deberá tener instalado primero ObjectScript Package Manager Client, también conocido como cliente ZPM.

2. Instale el cliente de Package Manager

Obtenga del servidor de ZPM la última versión del cliente ZPM : https://pm.community.intersystems.com/packages/zpm/latest/installer

Se trata de un paquete ObjectScript en XML, por lo que para instalarlo puede importarlo en clases mediante el Portal de administración o desde el terminal:

USER>Do $System.OBJ.Load("/yourpath/zpm.xml")

una vez instalado, puede llamarlo desde cualquier namespace, ya que se instala en %SYS como Z-package.

3. Cómo trabajar con el cliente ZPM

El cliente ZPM tiene una interfaz CLI. Llame a ZPM desde cualquier namespace de esta forma:

USER>zpm
zpm: USER>

Consulta la ayuda para ver la lista de comandos disponibles.

Verificar la lista de paquetes disponibles actualmente en el servidor ZPM (pm.community.intersystems.com):

zpm: USER>repo -list-modules -n registry
deepseebuttons 0.1.7 dsw 2.1.35 holefoods 0.1.0 isc-dev 1.2.0 mdx2json 2.2.0 objectscript 1.0.0 pivotsubscriptions 0.0.3 restforms 1.6.1 thirdpartychartportlets 0.0.1 webterminal 4.8.3 zpm 0.0.6

Instalación de un paquete

Para instalar un paquete, utiliza:

install package-name version

Esto instalará el paquete con todas las dependencias. Puedes omitir la versión para obtener la última versión del paquete. Así es como se instala la última versión del terminal web:

zpm: USER> install webterminal

¿Cómo saber lo que ya está instalado?

Llamar al comando list:

zpm:USER> list
zpm 0.0.6
webterminal 4.8.3

Desinstalar el paquete

zpm: USER> uninstall webterminal

Plataformas de datos de InterSystems soportadas

Actualmente, ZPM soporta InterSystems IRIS e InterSystems IRIS for Health.

Quiero que mi paquete se liste en el Package Manager

Por supuesto es posible. Los requisitos son los siguientes:

  • El código debe funcionar en InterSystems IRIS
  • Debe contar con un module.xml en la raíz

Module.xml es el archivo que describe la estructura del paquete y lo que se necesita para implementarlo en la fase de despliegue. Algunos ejemplos de module.xml pueden ser muy simples

Ejemplo de ObjectScript

Or relativamente simple:

Samples BI (antes conocido como HoleFoods),

Terminal web

Módulo con dependencias:

DeepSee Web espera que MDX2JSON esté instalado y así es como está descrito en module.xml:
DeepSeeWeb

Si deseas que tu aplicación aparezca listada en el Administrador de paquetes de la comunidad, coméntalo en esta publicación o envíame un mensaje directo.

Colaboración y Soporte técnico

El código fuente del servidor ZPM no está disponible por el momento, pero lo estará pronto.

El código fuente del cliente ZPM está disponible aquí y actualmente es soportado por la comunidad de desarrolladores de InterSystems, pero no es soportado por InterSystems Corporation. No dudes en enviar incidencias y Pull Requests.

Hoja de ruta

Esta es la hoja de ruta actual:

  • agregar soporte para Open Exchange
  • agregar la automación para la actualización y carga de paquetes
  • servidor ZPM de código abierto

Manténte al tanto y desarrolla tus paquetes de InterSystems ObjectScript en InterSystems IRIS.