Oliver Wilms · Jul 28, 2022 go to post

Hi, David,

I wonder if the problem is that there is a specific version hardcoded in Dockerfile:

FROM node:8.17.0-alpine3.9 as node

I am not familiar with node. Should the FROM line be updated? What is a good replacement?

Oliver Wilms · Jul 28, 2022 go to post

Hi, Michael,

I am interested to see how this can be solved in a good way. First thing came to my mind was to have a more generic table than teapot so multiple categories can be in one table. Then category can be one of the parameters to query on. I like to develop an example we can improve upon.

Are you willing to share your configuration / definition / code?

I looked for an example of API first and I found this app on OpenExchange:

InterSystems Open Exchange
 

https://github.com/drechema/iris-explorer

It did not build in my AWS environment ...

I started my own version of it and imported phoneapp which can be found here:

https://github.com/oliverwilms/iris-explorer

Oliver Wilms · Jul 28, 2022 go to post

Thank you, David, for your responses. I wonder why it did not build in my AWS environment. Maybe I will try it again with your repo and see if it still fails if I can capture any errors.

Oliver Wilms · Jul 28, 2022 go to post

Hello, David, it looks like you get a nice small image.

I use a AWS free tier account. My screen seems to get stuck and all I can see is this:

Step 5/10 : RUN npm install
 ---> Running in 58ae96e0c62a

> node-sass@4.10.0 install /usr/src/app/node_modules/node-sass
> node scripts/install.js

Downloading binary from https://github.com/sass/node-sass/releases/download/v4.10.0/linux_musl-…
Download complete
Binary saved to /usr/src/app/node_modules/node-sass/vendor/linux_musl-x64-57/binding.node
Caching binary to /root/.npm/node-sass/4.10.0/linux_musl-x64-57_binding.node

> circular-json@0.5.7 postinstall /usr/src/app/node_modules/circular-json
> echo ''; echo "\x1B[1mCircularJSON\x1B[0m is in \x1B[4mmaintenance only\x1B[0m, \x1B[1mflatted\x1B[0m is its successor."; echo ''

\x1B[1mCircularJSON\x1B[0m is in \x1B[4mmaintenance only\x1B[0m, \x1B[1mflatted\x1B[0m is its successor.

> node-sass@4.10.0 postinstall /usr/src/app/node_modules/node-sass
> node scripts/build.js

Binary found at /usr/src/app/node_modules/node-sass/vendor/linux_musl-x64-57/binding.node
Testing binary
Binary is fine
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@1.2.4 (node_modules/karma/node_modules/fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@1.2.4: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@1.2.4 (node_modules/fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@1.2.4: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})

added 1474 packages from 1384 contributors and audited 1611 packages in 53.388s
found 407 vulnerabilities (15 low, 122 moderate, 200 high, 70 critical)
  run `npm audit fix` to fix them, or `npm audit` for details
Removing intermediate container 58ae96e0c62a
 ---> 4b0022ce43ef
Step 6/10 : COPY . .
 ---> ede198788bb5
Step 7/10 : RUN npm run build
 ---> Running in 7007e62b7eb2

> iris-explorer@1.1.0 build /usr/src/app
> ng build --prod

Browserslist: caniuse-lite is outdated. Please run next command `npm update caniuse-lite browserslist`

Oliver Wilms · Aug 24, 2022 go to post

I think you got the methods reversed. To connect using the key pair you should use this method:

set sc = ssh.AuthenticateWithKeyPair("sftpuser","/path/to/id_rsa.pub","/path/to/p_id_rsa","")

I have tested this and it works

Oliver Wilms · Aug 24, 2022 go to post

Is the private key file "id_rsa" or "p_id_rsa"?

Are the key files in "/path/to/" directory?

Oliver Wilms · Sep 15, 2022 go to post

I claim YouTube Video bonus for interoperability-test. I have added the link in GitHub ReadMe. Does that automatically update on Open Exchange or do I need to make a new release?

https://youtu.be/LqyRVxpmxGY

I wonder how some apps have a link on Open Exchange to vote in the contest?

Oliver Wilms · Sep 17, 2022 go to post

Hello, Thembelani,

I have implemented a similar case in this app:

https://github.com/oliverwilms/irisrest/blob/master/src/App/REST.cls#:~…

Important helper method is this:

/// Helper method
ClassMethod GetJSONFromRequest(Output obj As %DynamicObject) As %Boolean
{
    Set ok = 1
    Try {
        Set obj = ##class(%DynamicObject).%FromJSON(%request.Content)
    } Catch ex {
        Set ok = 0
    }
    Quit ok
}

Best regards,

Oliver

Oliver Wilms · Sep 19, 2022 go to post

I think you get a WRITE error, because it is not really connecting. Does the external REST API receive your request?

Oliver Wilms · Sep 20, 2022 go to post

From Production Configuration page in Management Portal, you can click any service, process, or operation. Look for Actions tab in right side of the screen, and click on Change Class.

Oliver Wilms · Oct 18, 2022 go to post

I would like to help you. Can you provide a production configuration to reproduce?

Oliver Wilms · Dec 18, 2022 go to post

Hi, Robert, you show DC members in your listing. Are there InterSystems employees in the list who do not qualify to win prize money? Just wondering how high I would have to climb to earn a prize ...

Oliver Wilms · Dec 20, 2022 go to post

I don't think you will lose your routines. You can export them if you want to be double covered.

Oliver Wilms · Dec 23, 2022 go to post

That would be okay in my mind if that were specified somewhere I see it. I was unhappy when I realized my input cube had been cut up differently from the example shown.

Oliver Wilms · Jan 7, 2023 go to post

Sometimes the IKO wants to scale down our compute stateful set while the Interoperability productions are processing messages. A compute will shut down before it empties its queues and we do not see in Message Bank all messages that were processed before the shutdown. I wonder if anybody wrote code to prevent accepting more messages (stop incoming services) and process what is in queues including Message Bank operation queue which could be called before the actual shutdown (preStop hook)?

Oliver Wilms · Jan 15, 2023 go to post

I would not create record mapper unless you want to make sure the data is in correct format. If you already have record maps defined I see no issue using them.

Oliver Wilms · Jan 27, 2023 go to post

I am pretty sure that the task needs to completely finish before the next iteration can start. Task manager will not run the same task twice in parallel. The running task will not be stopped just because another iteration is scheduled.

Oliver Wilms · Jan 31, 2023 go to post

I believe there is a default length for the Read. If you pass in a number large enough or larger, it will read up to the length you specify. I see no harm in having a very large number.