@Alex Woodhead , do you know by a chance why unittest methods are instance methods but not classmethods? Could it be converted to classmethods or provided the option to do that?
- Log in to post comments
@Alex Woodhead , do you know by a chance why unittest methods are instance methods but not classmethods? Could it be converted to classmethods or provided the option to do that?
In fact there is a handy way to run all the tests via:
zpm "test module-name"
But, I'd love to see debugging of it
Thanks Alex.
See the following:
USER>Do ##class(%UnitTest.Manager).DebugRunTestCase("", "dc.irisbi.unittests.TestBI", "", "TestPivots")
(root) begins ...
LogStateStatus:0:Finding directories: ERROR #5007: Directory name '/usr/irissys/mgr/user/u:/internal/testing/unit_tests/' is invalid <<==== **FAILED** (root)::
Thanks, Dima! Is there a listed related issue?
Hi @Mikko Taittonen! Why would you need XML export for classes/routines? Why not UDL? UDL is much more readable?
Maybe ZPM uninstall is not ideal. At the moment ZPM is just an open-source app that can be installed into IRIS.
And maybe it doesn't clearly uninstall itself.
What is the business goal of the exercise? To test ZPM or to test IRIS on leakages?
Congrats, @Robert Cemper !
BTW, how come this article is shown as new and came in April's digest? I see comments from 2017
try DeepSeeWeb which as an Angular UI layer over IRIS BI dashboards.
You can create usual IRIS BI dashboards and access them outside Ensemble/HealthShare environment in Angular UI, even on mobile. No additional development needed.
A nice extension to this: run iris and with an ipm package on-board. Here is one command to start IRIS and install web-terminal:
docker run --rm --name iris-ce -d -p 9091:1972 -p 9092:52773 -e IRIS_PASSWORD=demo -e IRIS_USERNAME=demo intersystemsdc/iris-community -a "echo 'zpm \"install webterminal\"' | iriscli"
You mean you like Visual Studio Code? )
Thank you, Ben!
Hi Hugh!
In my case even the messages are csv lines they are being resulted in one csv file.
It is the matter of what file is pointed out in the outbound adapter, as @Jeffrey Drumm
mentioned. Take a look the code or try to run this production - it is in docker, so it is really easy to reproduce it on your laptop and see how it works.
I've just released the new IRIS DEV template that uses your approach, @Guillaume Rongier
It gives for vanilla IRIS Data platform Community Edition 700MB economy: 2.1G instead of 2.7G,
And for vanilla IRIS For Health Community Edition it gives 3.2G(!) economy: 2.8G instead of 6G...
Want to save some space building your dev images with IRIS - use the approach listed here, or directly use our dev template.
Can we have the similar implementation for GitHub OAuth too? Github is the most popular site for developers, so authentication via GItHub will be very handy for developers.
Thank you, @Yuri Marx!
From all the three articles one received the bonus.
Hi @Oliver Wilms !
I answered you in DM.
We added IRIS Cloud SQL survey bonus! Don't forget to collect one!
Hi @Colin Brough !
I don't know if you can use IRIS but if yes docker+IRIS is a perfect combination for desktop operations.
Thanks, Luca!
There is a new release in intersystemsdc community images.
Now password and username can be provided as env variables.
Here it is:
docker run --rm --name iris-sql -d -p 9091:1972 -p 9092:52773 -e IRIS_PASSWORD=demo -e IRIS_USERNAME=demo intersystemsdc/iris-community
and
irissqlcli iris://demo:demo@localhost:9091/USER
There was a new release of intersystemsdc vanilla images.
Now you can use ENV variables to start IRIS with user, pass and namespace created.
E.g. here is how to start:
docker run --rm --name iris-sql -d -p 9091:1972 -p 9092:52773 -e IRIS_PASSWORD=demo -e IRIS_USERNAME=demo intersystemsdc/iris-communityHere is how to connect via irissqlcli:
irissqlcli iris://demo:demo@localhost:9091/USERheh )
Should I consider it as an accepted answer? :)
Nice hat, though! @Robert Cemper, do you have a such in your collection?
Often we need to clean-up IRIS and start from a clear page with empty database. Docker containers could be an ideal option for that.
Start IRIS in docker container locally:
docker run --rm --name iris-sql -d --publish 9091:1972 --publish 9092:52773 intersystemsdc/iris-community -a "iris session iris -U%SYS '##class(Security.Users).UnExpireUserPasswords(\"*\")'"And connect via irissqlcli:
irissqlcli iris://_SYSTEM:SYS@localhost:9091/USERYou can connect also via other SQL tools.
Use the approach only for development purposes.
Finally, one command to run iris in docker:
docker run --rm --name iris-sql -d --publish 9091:1972 --publish 9092:52773 intersystemsdc/iris-community -a "iris session iris -U%SYS '##class(Security.Users).UnExpireUserPasswords(\"*\")'"And another command to open sql terminal:
irissqlcli iris://_SYSTEM:SYS@localhost:9091/USERThanks to @Robert Cemper and @Dmitry Maslennikov
Finally, here is how run iris docker container and use in SQL after that:
docker run --name iris-sql -d --publish 9091:1972 --publish 9092:52773 intersystemsdc/iris-communityand
docker exec -t iris-sql iris session iris -U %SYS '##class(Security.Users).UnExpireUserPasswords("*")'And SQL connections now work!
$ irissqlcli iris://_SYSTEM:SYS@localhost:9091/USER
Server: InterSystems IRIS Version 2022.3.0.606 xDBC Protocol Version 65
Version: 0.5.1
[SQL]_SYSTEM@localhost:USER> select $zversion
+---------------------------------------------------------------------------------------------------------+
| Expression_1 |
+---------------------------------------------------------------------------------------------------------+
| IRIS for UNIX (Ubuntu Server LTS for ARM64 Containers) 2022.3 (Build 606U) Mon Jan 30 2023 09:07:49 EST |
+---------------------------------------------------------------------------------------------------------+
1 row in set
Time: 0.047sThanks to @Robert Cemper and @Dmitry Maslennikov
Thanks @Robert Cemper !
But I want something I can use via CLI (Command line) interface in a non-interactive way.
You need DML?
maybe csv export and import then could help?
wow. Didn't know we have that! And aliases can be setup and transferred too? E.g. like a package (IPM)?
Would be nice to have