go to post Oliver Wilms · Jul 28, 2022 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-x...Download completeBinary saved to /usr/src/app/node_modules/node-sass/vendor/linux_musl-x64-57/binding.nodeCaching 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.nodeTesting binaryBinary is finenpm 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.388sfound 407 vulnerabilities (15 low, 122 moderate, 200 high, 70 critical) run `npm audit fix` to fix them, or `npm audit` for detailsRemoving intermediate container 58ae96e0c62a ---> 4b0022ce43efStep 6/10 : COPY . . ---> ede198788bb5Step 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`
go to post Oliver Wilms · Jul 28, 2022 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.
go to post Oliver Wilms · Jul 28, 2022 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
go to post Oliver Wilms · Jul 28, 2022 I also used nginx latest image. The build for web image failed again
go to post Oliver Wilms · Jul 28, 2022 I am trying docker pull node and will use that image it retrieves
go to post Oliver Wilms · Jul 28, 2022 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?
go to post Oliver Wilms · Jul 27, 2022 Hi, David, I found your app looking for an example of an API definition that can be used to define a REST app. I cloned your app and tried to build it, but the web image did not complete build. I tried to build IRIS image here: oliverwilms/iris-explorer: Angular Application that use the standard API discovery in InterSystems IRIS in order to inspect existing APIs and create new APIs using Swagger 2.0 OpenAPI specification (github.com) I added iris.script where I use ^%REST. It works doing something, but something is missing?
go to post Oliver Wilms · Jul 11, 2022 Hi, Markus, I put an app together inspired by your question. You can find it in Open Exchange and it is participating in Full Stack Contest: https://openexchange.intersystems.com/package/interoperability-manager https://openexchange.intersystems.com/contest/24
go to post Oliver Wilms · Jul 10, 2022 I just realized this only happens on my work laptop. Maybe some browser restriction
go to post Oliver Wilms · Jul 10, 2022 I just realized the error only occurs on my work computer. I see login failures in audit log database. It works correctly on other computers.
go to post Oliver Wilms · Jul 10, 2022 Hi, Eduard, I had Unauthenticated AND Password Auth enabled. I tried removing unauthenticated access and now I see login failures in audit database.
go to post Oliver Wilms · Jul 1, 2022 I have tried using getProductionItems() using this code: ClassMethod GetProductionItems(pProd As %String,pDefinition As %String,pAutoAdd As %String) As %Status{Set tSC = $$$OKIf ($Get(pProd) = "") {Set pProd = ##class(Ens.Director).GetActiveProductionName()}Set tProduction = ##class(Ens.Config.Production).%OpenId(pProd)Set tSC = ##class(Ens.Director).getProductionItems(tProduction,.pDefinition,.pAutoAdd)ZWQuit tSC}
go to post Oliver Wilms · Jul 1, 2022 Interesting question. I looked in Documentation and found a CreateDocumentation classMethod. I tried to test it with this code. I got an error in my Production. Let me know if this helps you. I will look at getProductionItems() next... ClassMethod CreateDocumentation(pProduction As %String = "",pIntro As %Boolean = 1,pFormat As %String,Output LogFileName As %String,Output URL As %String,Output BookName As %String,PDFFileName As %String,PDFRenderer As %String,ByRef Params As %String,pAllSettings As %Boolean = 0) As %Status{Set tSC = $$$OKIf (pProduction = "") {Set pProduction = ##class(Ens.Director).GetActiveProductionName()}Try {Set tSC = ##class(%SYS.Ensemble).CreateDocumentation(pProduction,pIntro,$G(pFormat),.LogFileName,.URL,.BookName,$G(PDFFileName),$G(PDFRenderer),.Params,pAllSettings)} Catch {Set tSC = ##class(%SYS.Ensemble).CreateDocumentation(pProduction,pIntro,$G(pFormat),.LogFileName,.URL,.BookName,$G(PDFFileName),$G(PDFRenderer),.Params)}Do $System.Status.DisplayError(tSC)ZWQuit tSC}
go to post Oliver Wilms · Jun 30, 2022 Hello, can you verify that the script is executed? Are permissions properly set? Can you try with a different more simple script such as echo "some message" > someFile? I also use IRIS (containers) on Linux.
go to post Oliver Wilms · Jun 28, 2022 Hello, Sathish, I recently published test-data app that utilizes a shell script to create a test file: InterSystems Open Exchange facture.cls defines the parameters for the RunScript classmethod. ClassMethod DefineProductScript( pName As %String = "Demo2", pDebug As %Integer = 0) As %Status { Set pQuery = "SELECT ID from dc_iris.product WHERE Name = '?'" Set pQuery = $Replace(pQuery,"?",pName) Write:pDebug pQuery,! Set tSC = ##class(dc.iris.util).ExecuteQueryOneValue(pQuery,.oProduct) Write:pDebug tSC,! Set oProduct = ##class(dc.iris.product).%OpenId(oProduct) If ($IsObject(oProduct) = 0) Set oProduct = ##class(dc.iris.product).%New() Do:pDebug $System.OBJ.Dump(oProduct) Set oProduct.ClassName = "dc.iris.product" Set oProduct.MethodName = "RunScript" Set oProduct.RunCmd = "/opt/irisbuild/demo.sh" Set pRandom = "random" Set pOutput = "/opt/transform/practice/" Set pTemplate = "/usr/irissys/mgr/data/" Set oProduct.RunParam1 = "$Qty" Set oProduct.RunParam2 = pRandom Set oProduct.RunParam3 = pOutput Set oProduct.RunParam4 = pTemplate Set oProduct.Name = pName //Set oProduct.TargetPath = "/opt/transform/practice/" Set tSC = oProduct.%Save() Quit tSC } ClassMethod RunScript( pProduct, pQuantity) As %Status { Set tSC = $$$OK Set oProduct = $Get(pProduct) If ($IsObject(oProduct) = 0) { Set oProduct = ##class(dc.iris.product).%OpenId(oProduct) } If ($IsObject(oProduct) = 0) { Set tSC = $$$ERROR($$$GeneralError,"No product defined") Quit tSC } Set pCmd = oProduct.RunCmd Set pNumberOfFiles = $Get(pQuantity,1) Set args=4 Set args(1) = oProduct.RunParam1 Set args(2) = oProduct.RunParam2 Set args(3) = oProduct.RunParam3 Set args(4) = oProduct.RunParam4 For ii = 1:1:args { If (args(ii) = "$Qty") Set args(ii) = pNumberOfFiles } Set tReturn = $ZF(-100,"/SHELL",pCmd,.args) Quit tSC }
go to post Oliver Wilms · Jun 1, 2022 I discussed this with InterSystems WRC. They told me they will clearly document that Pool Size should not be implemented using System Default Settings. I guess we cannot have different pool sizes in different environments...
go to post Oliver Wilms · May 27, 2022 Hi Mark, I work on integrating your changes into my repo. I accidentally saved a change in your repo. I am also not expert in git hub. I think no harm done. Sorry about confusion. Look forward to submit this effort to contest...
go to post Oliver Wilms · May 13, 2022 Hi Mark, I have adapted the code for Production Monitor into a custom class User.ProductionMonitor. It can get host info (status OK or Error) and also Queues sizes. I also created ProductionManager.csp to display the info. I hope it helps you. Hopefully you will share what you do and maybe we both get a better solution! Please see code here: oliverwilms/production-monitor (github.com)
go to post Oliver Wilms · May 13, 2022 Hello Mark, I think I like to take on the challenge. How do you plan to access the monitoring page?