Evgeny Shvarov · Apr 19, 2021 go to post

Hi John!

Not exactly. For some reason, we don't mention here that we allow editing and improvements during the voting week too. @Anastasia Dyubaylo, don't you know why?
 ALL the previous contests had this option and all the contestants used it this week for improvements, bug-fixing, and advertising.

@Anastasia Dyubaylo, could you please add that everyone is able to improve applications during the voting week too?

Evgeny Shvarov · Apr 19, 2021 go to post

Robert, what's is the idea to publish ZPM module "ssh-for-iris-container"? 

I Installed it and it does nothing:

zpm:IRISAPP>install ssh-for-iris-container

[ssh-for-iris-container]        Reload START
[ssh-for-iris-container]        Reload SUCCESS
[ssh-for-iris-container]        Module object refreshed.
[ssh-for-iris-container]        Validate START
[ssh-for-iris-container]        Validate SUCCESS
[ssh-for-iris-container]        Compile START
[ssh-for-iris-container]        Compile SUCCESS
[ssh-for-iris-container]        Activate START
[ssh-for-iris-container]        Configure START
[ssh-for-iris-container]        Configure SUCCESS
[ssh-for-iris-container]        Activate SUCCESS

zpm:IRISAPP>list

ssh-for-iris-container 0.0.1 
zpm:IRISAPP>q

IRISAPP>

I mean I'm having this:

Evgeny Shvarov · Apr 18, 2021 go to post

Why do you need to restart IRIS in a working docker container? If you need to change something in a container the typical approach is to rebuild the container's image and deploy it again. 

It looks like you are trying to reinvent some approach working with remote servers to containers.

Why not using the best practice for containers and leverage it's power?

What is the idea where you need SSH access and IRIS restarts with containers on a constant basis?

Evgeny Shvarov · Apr 18, 2021 go to post

Hi Robert!

What are the possible reasons to add SSH access to the deployed Docker container?

For Docker Desktop cases the access could be reached with:

docker exec

or

docker-compose exec
Evgeny Shvarov · Apr 15, 2021 go to post

This will necessary demand the package name refactoring - Api as a first package is probably too much. dc. or skalese. much better. More here

Evgeny Shvarov · Apr 15, 2021 go to post

We'll think about it - it's very different from module deployment.  This is for Application deployment more, but this could be a part of ZPM.

Evgeny Shvarov · Apr 15, 2021 go to post

And it looks like that if I want to create a database I need to have two entries:

SYS.Databases and

Databases.

Here is the minimal config to create IRISAPP namespace with one database IRISAPP in /irisapp folder.

{
    "Defaults":{
        "DBDIR" : "${MGRDIR}",
        "DBDATA" : "${DBDIR}irisapp/"
    },
    "SYS.Databases":{
        "${DBDATA}" : {}
    },
    "Databases":{
        "IRISAPP" : {
            "Directory" : "${DBDATA}"
        }
    },
    "Namespaces":{
        "IRISAPP": {
            "Globals":"IRISAPP"
        }
    }
    }

Works.

I use it in the following way to set up a docker container before loading the ZPM dev module into it.

Evgeny Shvarov · Apr 15, 2021 go to post

Wow. So now we can setup the environment using JSON and do more things than we can with %Installer, right?

Like users, roles, mappings, etc. Great feature!

Evgeny Shvarov · Apr 12, 2021 go to post

And we updated the images with ZPM 0.2.14 too:

intersystemsdc/iris-community:2020.3.0.221.0-zpm

intersystemsdc/iris-community:2020.4.0.547.0-zpm

intersystemsdc/iris-ml-community:2020.3.0.302.0-zpm

intersystemsdc/irishealth-community:2020.3.0.221.0-zpm

intersystemsdc/irishealth-community:2020.4.0.547.0-zpm

And to launch IRIS do:

docker run --rm --name my-iris -d --publish 9091:1972 --publish 9092:52773 intersystemsdc/iris-community:2020.3.0.221.0-zpm

docker run --rm --name my-iris -d --publish 9091:1972 --publish 9092:52773 intersystemsdc/iris-community:2020.4.0.547.0-zpm

docker run --rm --name my-iris -d --publish 9091:1972 --publish 9092:52773 intersystemsdc/iris-ml-community:2020.3.0.302.0-zpm

docker run --rm --name my-iris -d --publish 9091:1972 --publish 9092:52773 intersystemsdc/irishealth-community:2020.3.0.221.0-zpm

docker run --rm --name my-iris -d --publish 9091:1972 --publish 9092:52773 intersystemsdc/irishealth-community:2020.4.0.547.0-zpm

And for terminal do:

docker exec -it my-iris iris session IRIS

and to start the control panel:

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

To stop and destroy container do:

docker stop my-iris
Evgeny Shvarov · Apr 10, 2021 go to post

Thanks, Robert!

So officially no, got you.

Inherited classes - a good one! Never thought about it like that.

Object property yes, but in fact could be a one-many.

Evgeny Shvarov · Apr 8, 2021 go to post

Hi Ram!

We see the request to Open Exchange, but you need to add a License to the repository - e.g. MIT License.

This is a mandatory thing to submit for Open Exchange.

Evgeny Shvarov · Apr 3, 2021 go to post

zpm-registry.yaml in the IRIS installation folder.

What is the IRIS installation folder expected? /bin? /lib? /mgr?

Evgeny Shvarov · Apr 2, 2021 go to post

Just to give my 5 cents on this: it's not great to suggest unsupported approaches to solve problems.

But for us it is always great feedback what features we could include the support for in the product. 

@Vitaliy Serdtsev , thank you for your continuous willingness to help developers to solve their issues.

@Vic Sun your point is very fair - it's almost impossible to support unsupported usage and it can cause unpredictable problems. 

Thank you all!

Evgeny Shvarov · Mar 30, 2021 go to post

The folder structure gets much clearer with this approach. You have all the files related to one project/package in one folder. Would it work as a motivating case?

Evgeny Shvarov · Mar 30, 2021 go to post

2. First make sure you have web-terminal or other stuff installed. You can install Web Terminal and other apps with ZPM, like:

USER>zpm "install web-terminal"

Evgeny Shvarov · Mar 17, 2021 go to post

Hi Phil!

I see you are on Caché, but in the case of IRIS, you could consider using ZPM Package manager. It can help to make a package that could be installed on a target IRIS machine with one command, like

zpm "install yourproductionpackage"

that will install classes and dependent packages if needed and you can run post-install scripts.

Evgeny Shvarov · Mar 17, 2021 go to post

Hi Vic!

These are great instructions and tools to export/import different server components:

So is the idea that this all should be performed manually by an administrator for a mirrored member?

If yes how often do we recommend performing these operations?