Each folder under /cls corresponds to Class 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’
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
The script in Installer.cls will import everything you place under /src/cls into IRIS.
What’s insde the repo
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
// run the package installer test
IRISAPP:zpm>objectscript-package-template package -v