This is a template for InterSystems ObjectScript class package which is planned to be published into ZPM registry. Learn more on Community Package Manager (ZPM)
- put ObjectScript classes under /src folder in form
/package_name/class_name.cls
or-and
/package_name/mac_routine.mac
or-and
/package_name/int_routine.int
or-and
/package_name/include_file.inc
- Put module.xml file in the root of the repo. Learn more about module.xml format
Each folder under /src corresponds to application package.
first folder/package is the organisatoin or developer name.
second level is the project name
third is class or sub-package
E.g. this repo contains a simple example of ObjectScript class for the repository published in Developers Community github
The organisation is intersystems-community, and the corresponding package name is 'community'.
The repo is objectscript-package-template and the subpackage name for this repo is 'objectscript'
Clone/git pull the repo into any local directory
$ git clone https://github.com/your-repository.git
Open the terminal in this directory and run:
$ docker-compose up -d
Open IRIS terminal:
$ docker-compose exec iris iris session iris
USER>zn "IRISAPP"
IRISAPP>write ##class(community.objectscript.ClassExample).Test()
This repository is ready to code in VSCode with ObjectScript plugin. Install VSCode and ObjectScript plugin and open the folder in VSCode. Open /src/cls/PackageSample/ObjectScript.cls class and try to make changes - it will be compiled in running IRIS docker container.
Feel free to delete PackageSample folder and place your ObjectScript classes in a form /src/Package/Classname.cls
The script in Installer.cls will import everything you place under /src and globals in /gbl into IRIS.
The simplest dockerfile which starts IRIS and imports Installer.cls and then runs the Installer.setup method, which creates IRISAPP Namespace and imports ObjectScript code from /src folder into it.
Use the related docker-compose.yml to easily setup additional parametes like port number and where you map keys and host folders.
Use .env/ file to adjust the dockerfile being used in docker-compose.
It also installs ZPM - ObjectScript Package Manager client
This file describes project to be installed as package in ObjectScript Package Manager. You can test your module.xml with following commands:
// load the source code of the package as it is described in module.xml
IRISAPP:zpm>load /irisdev/app
// run the package installer test
IRISAPP:zpm>objectscript-package-template package -v
Settings file to let you immedietly code in VSCode with VSCode ObjectScript plugin)
Config file if you want to debug with VSCode ObjectScript