0 Seguidores · 17 Publicaciones

Git es un sistema de control de versiones para rastrear las modificaciones que se producen en archivos informáticos y coordinar el trabajo en dichos archivos entre varias personas

Sitio oficial.

Artículo Alberto Fuentes · oct 2, 2025 2m read

Hola,

He pensado en compartir con vosotros un hook bastante útil que me ha ayudado cuando desarrollo en Health Connect Cloud con VS Code y GitBash. Al desarrollar en Health Connect Cloud, si hacéis cambios directamente en el servidor, como reglas de enrutamiento o despliegue de componentes, estos no se incluyen automáticamente en el control de versiones; por lo tanto, debéis exportarlos desde el servidor a vuestros archivos locales y hacer push a vuestro repositorio remoto. Estoy seguro de que hay métodos más sencillos para gestionar esto, que estoy en proceso de probar, pero como solución rápida pensé que sería útil tener un hook de pre-commit que active un recordatorio en GitBash. Mirad el ejemplo a continuación.

0
0 18
Artículo Alberto Fuentes · ago 3, 2023 4m read

¡Hola Comunidad!

Como sabéis, las soluciones de Interoperabilidad de InterSystems IRIS contienen diferentes elementos de la solución, como: producciones, reglas de negocio, procesos, transformaciones de datos, mapeos de registros, etc. Y a veces podemos crear y modificar estos elementos con herramientas visuales en la UI. Y por supuesto necesitamos una forma práctica y sólida de controlar el código fuente con los cambios realizados con herramientas de UI.

Durante mucho tiempo, esto era un proceso de configuración manual (exportar clase, elemento, global, etc.) o engorroso, por lo que el tiempo ahorrado con la automatización del control de fuentes de la UI competía con el tiempo perdido en configurar y mantener la configuración.

Ahora ese problema ya no existe. Con dos enfoques: desarrollo "package first" y uso del paquete IPMgit-source-control, de @Timothy.Leavitt.

Os explico los detalles a continuación.

0
0 159
Anuncio Esther Sanchez · jul 24, 2023

¡Buenas noticias para los desarrolladores que usan GitLab como repositorio de aplicaciones de InterSystems! Open Exchange ha ampliado su soporte para incluir GitLab, lo que permite enviar proyectos tan fácilmente como se haría con repositorios de GitHub. 

Cómo enviar a Open Exchange una aplicación del repositorio de GitLab:

  1. Entra en Open Exchange e inicia sesión con tu cuenta.
  2. Ve a "Submit Application" (Enviar aplicación)
  3. En el campo "GitHub/GitLab URL", añade el enlace a tu repositorio abierto de GitLab.
  4. Asegúrate de marcar la casilla "Use GitHub/GitLab README as long description". Esto asegura que el fichero README de tu proyecto sirve como descrición larga para la aplicación.
0
0 96
Artículo Alberto Fuentes · mayo 20, 2022 3m read

Si estás desarrollando soluciones en IRIS y quieres utilizar Git, ¡es genial! Sólo tienes que utilizar VSCode con un repositorio git local y enviar los cambios al servidor, así de fácil.

Pero qué sucede si:

  • Colaboras con otros desarrolladores en un entorno de desarrollo remoto compartido y quieres evitar la edición simultánea del mismo archivo
  • Utilizas editores basados en el portal de administración para BPL, DTL, tablas dinámicas, cuadros de mando, etc. y quieres incluir esos elementos en el control de código de forma sencilla.
  • Aún utilizas Studio para realizar algunas cosas y/o ocasionalmente vuelves a usarlo desde VSCode. O tu equipo todavía no ha adoptado completamente VSCode y algunos miembros del equipo todavía quieren utilizar Studio
  • Trabajas en varios proyectos diferentes al mismo tiempo en el mismo namespace - digamos, en varios paquetes definidos mediante InterSystems Package Manager - y quieres trabajar con todos ellos desde una vista de edición de isfs (en vez de en varios proyectos distintos) con los cambios rastreados automáticamente en el repositorio de git apropiado

En ese caso no era tan sencillo... hasta finales del año pasado, cuando lanzamos Git para Entornos de Desarrollo Compartidos (Open Exchange / GitHub).

Puedes descargar esta extensión mediante InterSystems Package Manager:

zpm "install git-source-control"

Antes de esto, las opciones para controlar las fuentes con Git eran una antigua extensión de Git, principalmente para Windows, y sólo para entornos de desarrollo local y un proyecto más reciente de Open Exchange basado en él pero más sencillo. También está Port, que únicamente maneja archivos y es independiente del sistema de control de versiones.

¿Qué tiene git-source-control que no tienen estos paquetes?

  • Una integración sencilla con git, basada en un menú, que funciona en cualquier sistema operativo
  • Una interfaz de usuario de git para cubrir un conjunto de operaciones comunes de git, sin tener que conectarse con SSH al entorno remoto.
  • Control de concurrencia para múltiples usuarios que trabajan en el mismo entorno al mismo tiempo. Una vez que realizas cambios en una clase/rutina/etc., se vuelve tuya hasta que se descarten o se confirmen los cambios. (Sin embargo, tenemos formas de evitarlo cuando es necesario)
  • Integración con el administrador de paquetes: simplemente usa zpm mediante "load -dev /path/to/package" y si "/path/to/package/.git" existe, los cambios en los recursos de tu paquete se reflejarán automáticamente en el sitio correcto del sistema de archivos del servidor. La interfaz de usuario también funciona con esto, basada en la clase/etc. desde la que se ejecuta.

Todo esto funciona desde VSCode:

Spoiler

Y Studio:

 
Spoiler

Para que tengas el control y la visión de tu repositorio de git:

 
Spoiler

Esperamos que esto permita desarrollar con éxito las soluciones basadas en IRIS.

¡Agradecemos vuestros comentarios!

NOTA: Para ver la presentación del lanzamiento en el Global Summit de 2021, consultad este artículo: https://community.intersystems.com/post/video-git-gitlab-shared-development-environments

1
1 273
Artículo Muhammad Waseem · jun 28, 2022 3m read

¡Hola Comunidad!

Recientemente, migré una serie de repositorios de Objectscript de formato XML a UDL. Después de la migración, me decepcionó un poco la presentación en la interfaz web de GitLab.

Dado que la sintaxis de Objectscript es compatible con GitHub, pensé que también sería compatible con GitLab. Desafortunadamente, la librería utilizada por GitLab para resaltar el código no tiene una extensión para admitir Objectscript.

GitLab usa la librería Rouge, que puede resaltar más de 200 idiomas. Es una librería escrita en Ruby (consulta la página de GitHub), pero Objectscript no está en la lista. Así que decidí desarrollar una extensión de Objectscript.

El subproyecto Rouge está disponible en mi página de GitHub. Para propósitos de prueba, preparé un repositorio objectscript-syntax-for-gitlab para crear fácilmente un contenedor con un entorno Ruby listo y una página de prueba.

Estado de desarrollo actual:

CaracterísticasEstado
&JS<>implementado
&HTML<>implementado
&SQL<>Parcial
Método con lenguaje Pythonimplementado
Método con lenguaje Javascriptimplementado
XData contiene XMLimplementado
XData contiene JSONimplementado
Almacenamiento (definición XML)implementado
ConsultaParcial
Etiqueta en métodoimplementado
RutinaImplementado
CSPAún no
Archivo de macros (INC)Aún no

Instalación

Simplemente clona el repositorio, extrae la imagen y empieza:

git clone https://github.com/lscalese/objectscript-syntax-for-gitlab.git
cd objectscript-syntax-for-gitlab
docker pull ghcr.io/lscalese/objectscript-syntax-for-gitlab:latest
docker-compose up -d

Prueba

Cuando se inicia el contenedor, puedes abrir esta URL para mostrar una página de prueba: http://localhost:9592/objectscript

Es posible seleccionar un tema diferente en la parte inferior de la página.

Si quieres probar el resaltado con tu propio código, puedes usar este pequeño formulario: http://localhost:9692/csp/irisapp/lscalese.objectscript4gitlab.test.cls (el login/password es el estándar _system/SYS)

Copia/pega tu código en el área de texto y haz clic en enviar. Tu código se abrirá en una nueva pestaña Advertencia: El navegador podría bloquear la apertura de la nueva página. Por favor acepta si es necesario.

El botón “reset” permite restaurar la página de prueba por defecto.

No dudes en enviarme comentarios sobre tus pruebas creando un Issue en mi GitHub. Necesito información para detectar errores y mejorar tanto como sea posible antes de enviar un pull request a Rouge.

Espero que este proyecto sea de utilidad para la comunidad y merezca vuestro apoyo ;D

¡Gracias!

0
0 173
Anuncio Marcus Wurlitzer · dic 28, 2021

¡Hola desarrolladores!

Estoy encantado de presentar Git para InterSystems IRIS, mi primera contribución a OpenExchange.

Git para InterSystems IRIS es un paquete de control de código fuente, que pretende facilitar una integración nativa del workflow de Git con la plataforma InterSystems IRIS. Está diseñado para trabajar como un enlace transparente entre InterSystems IRIS y un directorio de código con Git activado que, una vez configurado, no requiere interacción del usuario. Podéis encontrar una descripción más detallada en GitHub.

0
0 189
Artículo Alberto Fuentes · oct 7, 2021 2m read

¡Hola desarrolladores!

Con frecuencia, cuando colaboramos con el repositorio de alguien en GitHub, seguimos el siguiente ciclo:

  1. Fork: crear nuestra bifurcación del repositorio
  2. Clone: clonar una copia local de nuestro repositorio bifurcado
  3. Realizar nuestros cambios y guardarlos con un Commit en nuestra copia local
  4. Push: publicar nuestros cambios al repositorio clonado de GitHub
  5. Hacer Pull-Request para solicitar incorporar nuestros cambios desde nuestro fork — bifurcación — al repositorio original
  6. Y si todo va bien se hará un Merge — fusión o incorporación — con nuestros cambios en el repositorio original

¡Todo esto es genial y funciona bien!

Y si queremos realizar una segunda colaboración justo después de llevar a cabo un Merge , es necesario que primero realicemos un Fetch upstream en nuestro repositorio clonado para que tengamos disponibles los cambios actualizados que incorporamos al repositorio original a través del Pull Request.

Los más frikies de git lo hacen muy fácilmente, pero muchos terminamos simplemente por eliminar nuestro primer fork y crear otro nuevo.

Hoy me he dado cuenta de que Github ha añadido una nueva funcionalidad en la interfaz de usuario con la que puedo realizar fácilmente el Fetch upstream para mantener mi fork actualizado respecto al clon original y seguir siendo capaz de enviar nuevos Pull-Requests.

Aquí es donde podéis encontrar el botón en GitHub:

¡Esto es de gran ayuda!

Simplemente quería compartir este consejo para ahorrarnos algo de trabajo 😃

Así que ahora lo tenéis más fácil aún, ¡podéis incorporar más modificaciones a proyectos de la comunidad!

0
0 303
Artículo Jose-Tomas Salvador · sep 22, 2021 13m read

¡Hola desarrolladores!

Muchos de vosotros publicáis vuestras bibliotecas de InterSystems ObjectScript en Open Exchange y Github.

Pero, ¿qué puedes hacer para facilitar a los desarrolladores el uso y la colaboración en tu proyecto?

En este artículo, quiero presentar una forma sencilla de poner en marcha y contribuir en cualquier proyecto ObjectScript con solo copiar un conjunto estándar de archivos en tu repositorio.

¡Vamos!

TLDR: copia estos archivos desde el repositorio a tu repositorio:

Dockerfile

docker-compose.yml

Installer.cls

iris.script

settings.json{#9f423fcac90bf80939d78b509e9c2dd2-d165a4a3719c56158cd42a4899e791c99338ce73}

.dockerignore{#f7c5b4068637e2def526f9bbc7200c4e-c292b730421792d809e51f096c25eb859f53b637}
.gitattributes{#fc723d30b02a4cca7a534518111c1a66-051218936162e5338d54836895e0b651e57973e1}
.gitignore{#a084b794bc0759e7a6b77810e01874f2-e6aff5167df2097c253736b40468e7b21e577eeb}

Y obtienes la forma estándar de poner en marcha y colaborar en tu proyecto. A continuación, se explica detalladamente cómo y por qué funciona esto así.

Nota: En este artículo, consideraremos los proyectos que se pueden ejecutar en InterSystems IRIS 2019.1 y versiones posteriores.

Cómo elegir el entorno de lanzamiento de los proyectos con InterSystems IRIS

Normalmente, queremos que un desarrollador pruebe el proyecto/biblioteca y esté seguro de que será un ejercicio rápido y seguro.

En mi modesta opinión, el enfoque ideal para poner en marcha cualquier cosa nueva de forma rápida y segura es el contenedor Docker, que ofrece al desarrollador la garantía de que todo lo que inicie, importe, compile y calcule es seguro para el servidor y ningún sistema o código será destruido o estropeado. Si algo sale mal, solo hay que parar y retirar el contenedor. Si la aplicación ocupa una enorme cantidad de espacio en el disco, la retiras junto con el contenedor y vuelves a tener espacio. Si una aplicación estropea la configuración de la base de datos, solo tienes que borrar el contenedor con la configuración estropeada. Así de simple y seguro.

El contenedor Docker ofrece seguridad y estandarización.

La forma más sencilla de ejecutar un contenedor Docker común de InterSystems IRIS es ejecutar una imagen de la Edición Community de IRIS:

  1. Instala Docker desktop 

  2. Ejecuta lo siguiente en el terminal del sistema operativo:

docker run --rm -p 52773:52773 --init --name my-iris store/intersystems/iris-community:2020.1.0.199.0
  1. A continuación, abre el Portal de Administración en tu navegador del servidor en:

http://localhost:52773/csp/sys/UtilHome.csp

  1. O abre un terminal en IRIS:

    docker exec -it my-iris iris session IRIS

  2. Deja de usar el contenedor IRIS cuando no lo necesites:

    docker stop my-iris

¡Muy bien! Ejecutamos IRIS en un contenedor Docker. Pero quieres que un desarrollador instale tu código en IRIS y tal vez haga algunos ajustes. Esto es lo que discutiremos a continuación.

Importación de archivos ObjectScript

El proyecto más sencillo de InterSystems ObjectScript puede contener un conjunto de archivos ObjectScript como clases, rutinas, macros y globales. Consulta el artículo sobre la convención de nombres y la estructura de carpetas propuesta.

La pregunta es: ¿cómo importar todo este código a un contenedor de IRIS?

Este es el momento en el que nos ayuda Dockerfile y podemos utilizarlo para coger el contenedor común de IRIS e importar todo el código de un repositorio a IRIS, y hacer algunos ajustes con IRIS si es necesario. Necesitamos añadir un Dockerfile en el repositorio.

Vamos a examinar el Dockerfile del repositorio ObjectScript template:

ARG IMAGE=store/intersystems/irishealth:2019.3.0.308.0-community
ARG IMAGE=store/intersystems/iris-community:2019.3.0.309.0
ARG IMAGE=store/intersystems/iris-community:2019.4.0.379.0
ARG IMAGE=store/intersystems/iris-community:2020.1.0.199.0
FROM $IMAGE

USER root

WORKDIR /opt/irisapp
RUN chown ${ISC_PACKAGE_MGRUSER}:${ISC_PACKAGE_IRISGROUP} /opt/irisapp

USER irisowner

COPY  Installer.cls .
COPY  src src
COPY iris.script /tmp/iris.script # run iris and initial 

RUN iris start IRIS \
    && iris session IRIS &lt; /tmp/iris.script

  Las primeras líneas ARG establecen la variable $IMAGE, que después utilizaremos en FROM. Esto es adecuado para probar/ejecutar el código en diferentes versiones de IRIS cambiándolas solo por la última línea antes de FROM, para cambiar la variable $IMAGE. 

Aquí tenemos: 

ARG IMAGE=store/intersystems/iris-community:2020.1.0.199.0

FROM $IMAGE

Esto significa que estamos tomando la versión 199 de la Edición Community de IRIS 2020.

Queremos importar el código desde el repositorio. Eso significa que necesitamos copiar los archivos de un repositorio a un contenedor Docker. Las siguientes líneas ayudan a hacer eso:

USER root

WORKDIR /opt/irisapp
RUN chown ${ISC_PACKAGE_MGRUSER}:${ISC_PACKAGE_IRISGROUP} /opt/irisapp

USER irisowner

COPY  Installer.cls .
COPY  src src

USER root: aquí cambiamos de usuario a root para crear una carpeta y copiar archivos en Docker.

WORKDIR  /opt/irisapp: en esta línea configuramos el workdir en el que copiaremos los archivos.

RUN chown ${ISC_PACKAGE_MGRUSER}:${ISC_PACKAGE_IRISGROUP} /opt/irisapp   :  aquí le damos los derechos al usuario irisowner y al grupo que ejecuta IRIS.

USER irisowner: cambia de usuario de root a irisowner

COPY Installer.cls .  - copia Installer.cls a una raíz de workdir. No te olvides el punto.

COPY src src : copia archivos fuente desde la carpeta src del repositorio a la carpeta src de workdir en el Docker.

En el siguiente bloque ejecutamos el script inicial, donde llamamos al instalador y al código ObjectScript:

COPY iris.script /tmp/iris.script # run iris and initial 
RUN iris start IRIS \
    && iris session IRIS &lt; /tmp/iris.script

COPY iris.script /: copiamos iris.script en el directorio raíz. Contiene el ObjectScript que queremos llamar para configurar el contenedor.

RUN iris start IRIS</span>  - inicia IRIS

&& iris session IRIS < /tmp/iris.script - inicia el terminal IRIS e introduce el ObjectScript inicial dentro de él.

¡Bien! Tenemos el Dockerfile, que importa archivos en Docker. Pero nos encontramos con otros dos archivos: installer.cls e iris.script. Vamos a examinarlos.

Installer.cls

Class App.Installer
{

XData setup
{
<Manifest>
  <Default Name="SourceDir" Value="#{$system.Process.CurrentDirectory()}src"/>
  <Default Name="Namespace" Value="IRISAPP"/>
  <Default Name="app" Value="irisapp" />

  <Namespace Name="${Namespace}" Code="${Namespace}" Data="${Namespace}" Create="yes" Ensemble="no">

    <Configuration>
      <Database Name="${Namespace}" Dir="/opt/${app}/data" Create="yes" Resource="%DB_${Namespace}"/>

      <Import File="${SourceDir}" Flags="ck" Recurse="1"/>
    </Configuration>
    <CSPApplication Url="/csp/${app}" Directory="${cspdir}${app}"  ServeFiles="1" Recurse="1" MatchRoles=":%DB_${Namespace}" AuthenticationMethods="32"
       
    />
  </Namespace>

</Manifest>
}

ClassMethod setup(ByRef pVars, pLogLevel As %Integer = 3, pInstaller As %Installer.Installer, pLogger As %Installer.AbstractLogger) As %Status [ CodeMode = objectgenerator, Internal ]
{
  #; Let XGL document generate code for this method. 
  Quit ##class(%Installer.Manifest).%Generate(%compiledclass, %code, "setup")
}

}

Sinceramente, no necesitamos Installer.cls para importar archivos. Esto podría hacerse con una sola línea. Pero a menudo, además de importar el código, es necesario configurar la aplicación CSP, introducir la configuración de seguridad, crear bases de datos y namespaces.

En este Installer.cls creamos una nueva base de datos y un namespace con el nombre IRISAPP, y creamos la aplicación /csp/irisapp predeterminada para este namespace.

Todo esto lo realizamos en el elemento <Namespace>:

E importamos todos los archivos desde SourceDir con la etiqueta Import:

SourceDir aquí es una variable, que se establece en el directorio actual/src:

Cuando Installer.cls cuenta con esta configuración nos da la confianza de que creamos una nueva base de datos IRISAPP limpia en la que importamos el código ObjectScript que queramos desde la carpeta src.

iris.script

Aquí puedes proporcionar cualquier código de configuración inicial de ObjectScript que quieras para iniciar tu contenedor IRIS.

Por ejemplo, aquí cargamos y ejecutamos installer.cls y después hacemos que las password de usuario no expiren solo para evitar la primera solicitud de cambio de contraseña porque no necesitamos esta línea de comandos para el desarrollo.

; run installer to create namespace
do $SYSTEM.OBJ.Load("/opt/irisapp/Installer.cls", "ck")
set sc = ##class(App.Installer).setup()  zn "%SYS"
Do ##class(Security.Users).UnExpireUserPasswords("*") ; call your initial methods here
halt

docker-compose.yml

¿Por qué necesitamos docker-compose.yml? ¿No podríamos simplemente construir y ejecutar la imagen solo con Dockerfile? Sí, podríamos. Pero docker-compose.yml simplifica la vida.

Normalmente, docker-compose.yml se utiliza para lanzar varias imágenes Docker conectadas a una red.

docker-compose.yml también se podría utilizar para hacer más fácil el lanzamiento de una imagen Docker cuando tenemos una gran cantidad de parámetros. Se puede utilizar para pasar parámetros a Docker, como el mapeo de puertos, volúmenes, o parámetros de conexión VSCode.

version: '3.6' 
services:
  iris:
    build: 
      context: .
      dockerfile: Dockerfile
    restart: always
    ports: 
      - 51773
      - 52773
      - 53773
    volumes:
      - ~/iris.key:/usr/irissys/mgr/iris.key
      - ./:/irisdev/app

Aquí declaramos el servicio de iris, que utiliza el archivo Dockerfile y expone los siguientes puertos de IRIS: 51773, 52773, 53773. También este servicio mapea dos volúmenes: iris.key desde el directorio principal del equipo servidor a la carpeta IRIS donde se espera y mapea la carpeta raíz del código fuente a la carpeta /irisdev/app.

Docker-compose nos da el comando más corto y unificado para construir y ejecutar la imagen, independientemente de los parámetros que se hayan configurado en docker compose.

en cualquier caso, el comando para construir y presentar la imagen es:

$ docker-compose up -d

 y para abrir el terminal de IRIS:

$ docker-compose exec iris iris session iris

Node: 05a09e256d6b, Instance: IRIS

USER>

Además, docker-compose.yml ayuda a configurar la conexión para el plugin VSCode-ObjectScript.

.vscode/settings.json

La parte que se refiere a la configuración de la conexión del complemento de ObjectScript es esta:

{
    "objectscript.conn" :{
      "ns": "IRISAPP",
      "active": true,
      "docker-compose": {
        "service": "iris",
        "internalPort": 52773
      }
    }     

}

Es aquí donde vemos la configuración, que es diferente de la configuración predeterminada del plugin VSCode-ObjectScript.

Aquí podemos decir que queremos conectarnos al namespace IRISAPP (que creamos con Installer.cls):

"ns": "IRISAPP",

y hay una configuración para docker-compose, que dice que en el archivo docker-compose dentro del servicio "iris", VSCode se conectará al puerto 52773 que se mapea a:

"docker-compose": {
        "service": "iris",
        "internalPort": 52773
      }

Si revisamos lo que tenemos para 52773 vemos que el puerto mapeado no está definido para 52773:

ports: 
      - 51773
      - 52773
      - 53773

Esto significa que se tomará un puerto aleatorio disponible en un equipo servidor, y VSCode se conectará automáticamente a este IRIS en Docker por medio del puerto aleatorio.

Esta es una función muy útil, porque te da la opción de ejecutar cualquier cantidad de imágenes Docker con IRIS en puertos aleatorios y tener VSCode conectado a ellos de forma automática.

¿Qué sucede con los otros archivos?

También tenemos:

.dockerignore: archivo que se puede utilizar para filtrar los archivos del equipo servidor que no quieres que se copien en la imagen Docker que creaste. Normalmente . git y . DS_Store son líneas obligatorias.

.gitattributes: atributos para git, que unifican los finales de línea de los archivos ObjectScript en las fuentes. Esto es muy útil si en el repositorio colaboran usuarios de Windows y Mac/Ubuntu.

.gitignore: archivos a los que no quieres que git siga el historial de cambios. Por lo general, son algunos archivos ocultos a nivel de sistema operativo, como .DS_Store.

¡Bien!

¿Cómo hacer que tu repositorio sea ejecutable por Docker y fácil para colaborar?

  1. Clona este repositorio.

  2. Copia todos estos archivos:

Dockerfile

docker-compose.yml

Installer.cls

iris.script

settings.json{#9f423fcac90bf80939d78b509e9c2dd2-d165a4a3719c56158cd42a4899e791c99338ce73}

.dockerignore{#f7c5b4068637e2def526f9bbc7200c4e-c292b730421792d809e51f096c25eb859f53b637}
.gitattributes{#fc723d30b02a4cca7a534518111c1a66-051218936162e5338d54836895e0b651e57973e1}
.gitignore{#a084b794bc0759e7a6b77810e01874f2-e6aff5167df2097c253736b40468e7b21e577eeb}

a tu repositorio.

Cambia esta línea en Dockerfile para que coincida con el directorio que cuenta con ObjectScript en el repositorio que quieres importar en IRIS (o no lo cambies si lo tienes en la carpeta /src).

Eso es todo. Todos (y tú también) tendrán tu código importado en IRIS en un nuevo namespace de IRISAPP.

Cómo lanzará la gente tu proyecto

La secuencia para ejecutar cualquier proyecto ObjectScript en IRIS sería:

  1. Clonar el proyecto localmente con git clone

  2. Ejecutar el proyecto:

$ docker-compose up -d
$ docker-compose exec iris iris session iris

Node: 05a09e256d6b, Instance: IRIS

USER>zn "IRISAPP"

**¿Cómo contribuirán los desarrolladores a tu proyecto? **

  1. Crea un fork del repositorio y clona el fork en local

  2. Abre la carpeta en VSCode (también se necesita que las extensiones Docker y ObjectScript estén instaladas en VSCode)

  3. Haz clic derecho en docker-compose.yml->Reinicia - VSCode ObjectScript se conectará automáticamente y estará listo para editar, compilar o depurar

  4. Confirma, envía y extrae los cambios de solicitud a tu repositorio

Aquí os muestro en un breve gif cómo funciona esto:

¡Y esto es todo! Happy coding!

0
0 298
Anuncio Jose-Tomas Salvador · mayo 19, 2021

¡Hola Comunidad!

Es un placer comentaros que tenemos un GitHub de la Comunidad de Desarrolladores de InterSystems - github.com/intersystems-community que se une al que ya teníamos para la Comunidad de Desarrolladores en español - github.com/es-comunidad-intersystems.

¿Qué es?

Se trata de una lista de los repositorios que InterSystems Corporation comparte con la Comunidad de Desarrolladores, junto con el material que tomamos de otros repositorios para darlo a conocer a nuestra Comunidad. El objetivo principal es compartir frameworks, herramientas, y soluciones con la Comunidad de Desarrolladores.

¿Cuáles son los proyectos?

En esta plataforma se pueden consultar herramientas, frameworks, tecnologías, soluciones, prácticas recomendadas, fragmentos de código... del software que utilice la Plataforma de datos de InterSystems o que esté diseñado para escalar, monitorizar, probar o implementar las soluciones en dicha plataforma. 

¿Cómo son las licencias?

Normalmente, todos los proyectos son de uso gratuito y tienen licencia MIT.

¿Hay algún tipo de soporte de InterSystems en los proyectos?

No. InterSystems no ofrece soporte de ninguna de las herramientas, proyectos o soluciones incluídas ahí. Todos los proyectos funcionan de esta manera, hay que utilizarlos bajo la responsabilidad de cada uno. Pero los proyectos interesantes cuentan con el soporte de los miembros de la Comunidad de Desarrolladores. Así que todo el mundo puede aportar soluciones y contribuir mediante solicitudes de tipo pull request.

Quiero que mi proyecto aparezca en la lista de la Comunidad de Desarrolladores de InterSystems. ¿Qué puedo hacer?

Coméntanos tu solución en la Comunidad de Desarrolladores o en Global Masters y nosotros la difundiremos (quizás ya lo hicimos).

Hay algunos requisitos generales para los repositorios:

  1. Un proyecto debe utilizar InterSystems IRIS Data Platform u ofrecer servicios para ella.

  2. En ObjectScript las fuentes deben mostrarse en UDL. Revise otros proyectos donde se utiliza UDL. 2a. El código fuente debe cumplir las Instrucciones de ObjectScript, o cualquier otra instrucción que aparezca públicamente.

  3. Un proyecto debe tener un archivo “README.md” con sus propias secciones, en el que dos de ellas han de ser: Descripción e Instalación.

  4. Se debe proporcionar una licencia (Licencia MIT) para el repositorio.

Agradecemos cualquier idea, comentario o nuevos requisitos que queráis transmitir.

¡Entra en GitHub, en la Developer Community o en la Comunidad de Desarrolladores en español y comparte tu framework, libreríasysoluciones con la Comunidad de Desarrolladores de InterSystems!

0
0 157
Artículo David Reche · abr 12, 2021 1m read

¡Hola desarrolladores!

A menudo me preguntan cómo instalar IRIS, cómo conectarse a IRIS desde el IDE, cómo configurar el entono, compilar, depurar, mantener el repositorio...

Os muestro aquí posiblemente el camino más corto para configurar todo el entorno y empezar a desarrollar con ObjectScript en InterSystems IRIS.

Prerrequisitos

Asegúrate de tener Git, Docker y VSCode instalados.

Instala las extensiones de Docker y ObjectScript en VSCode.

Inicia sesión o crea una cuenta en Github.

¡Vamos allá!

0
0 448
Artículo Ricardo Paiva · oct 18, 2019 9m read

¡Hola Comunidad!

En esta serie de artículos, me gustaría presentar y discutir varios métodos posibles para el desarrollo de software con las tecnologías de InterSystems y GitLab. Trataré temas como:

  • Git 101
  • El flujo de Git (proceso de desarrollo)
  • La instalación de GitLab
  • Flujo de trabajo con GitLab
  • Entrega continua
  • Instalación y configuración de GitLab
  • Integración Continua/Entrega Continua (IC/DC) de GitLab
0
0 1090
Artículo Ricardo Paiva · oct 9, 2019 2m read

¡Hola a tod@s!

En esta serie de artículos me gustaría presentar y discutir varios enfoques posibles para desarrollar software mediante las tecnologías de InterSystems y GitLab. Abordaré temas como:

0
0 244
Artículo Ricardo Paiva · sep 30, 2019 7m read

Todo el mundo tiene un entorno para realizar pruebas.

Algunas personas tienen la suerte de tener un entorno totalmente separado para Producción.

-- Anónimo

.

En esta serie de artículos, me gustaría presentar y discutir varios métodos posibles para el desarrollo de software, con las tecnologías de InterSystems y GitLab. Trataré temas como:

  • Git 101
  • Git flow (development process)
  • Instalación de GitLab
  • Flujo de trabajo de GitLab
  • GitLab CI/CD (Integración Continua/Entrega Continua)
  • CI/CD (Integración Continua/Entrega Continua) con contenedores

En esta primera parte se abordará la piedra angular del desarrollo de software moderno - el sistema de control de las versiones de Git y varios flujos de Git.

0
0 684
Artículo Dmitry Maslennikov · jun 17, 2019 2m read

¡Hola a tod@s! Hoy traigo buenas noticias para la Comunidad:

Hace unos días, GitHub se actualizó con la última versión del proyecto linguist, que se utiliza para reconocer los tipos de código fuente en los repositorios. Ayuda a determinar qué lenguaje de programación se ha utilizado en cada archivo del repositorio. La sección de estadísticas del repositorio muestra los resultados del trabajo de este módulo.

 

Además, se puede buscar en todos los repositorios disponibles de GitHub para cualquier idioma elegido.

0
0 331
Anuncio David Reche · mayo 17, 2019

¡Hola Comunidad!

Echad un vistazo al nuevo vídeo "Coding Talk" ("Charlas sobre programación") en el Canal de YouTube de la Developer Community:

Crea tu primer código con InterSystems ObjectScript, usando IRIS Community, Github, Docker and VSCode

En este video, presentado por @Evgeny Shvarov, aprenderás a crear clases de InterSystems ObjectScript, ejecutarlo en un contenedor docker con InterSystems IRIS Community Edition, editarlo y compilarlo en Visual Studio Code y, por último, subirlo a Github.

Además...

0
0 178