go to post Dmitry Maslennikov · May 24, 2020 In the context of complex docker images, one more feature worth to be mentioned. It is multi-stage builds. It makes sense when you have to do some build something in your project, but you don't need any immediate files, for instance, source code, or any temporary files. Or some part of your app written in the compilable language, like go, and you can't compile it let's say it on IRIS image. You can first run go image, build it, and then build your final image base on IRIS where you just copy the result from the first stage. In case of IRIS, you can build this way, deployable code. Just build your application from source code, deploy, and copy the result to the fresh image, and it will keep you from the error of letting your source code go with the final image.
go to post Dmitry Maslennikov · May 24, 2020 There is no such way as merging two images. If you need only one image, the only way is to make a new one, which would combine the main from both images. So, you should choose which one is going to be as a base image, I would suggest it supposed to be IRIS. Then you can create install inside nodejs, and your node application. The issue is here you may face is that you will have only one init process after that. While I suppose you have to have started IRIS and NodeJS application at the moment. You can add a script which will run in a background nodejs application, and pass it to iris-main through CMD directive in conjunction with '-a', '-b', '-c' or '-t' parameterSo, it can be something like this FROM intersystestems/iris:2020.2.0.204.0 USER root # script which will run nodejs application in background COPY app-entrypoint.sh / # copy your nodejs application COPY ./nodeapp /opt/nodeapp # install nodejs v10, and node_modules RUN apt-get -y update && \ DEBIAN_FRONTEND=noninteractive apt-get -y install curl --no-install-recommends && \ curl -sL https://deb.nodesource.com/setup_10.x | bash - && \ DEBIAN_FRONTEND=noninteractive apt-get install -y nodejs --no-install-recommends && \ rm -rf /var/lib/apt/lists/* && \ chmod +x /app-entrypoint && \ cd /opt/nodeapp && \ npm install USER ${ISC_PACKAGE_MGRUSER} # say to start your nodejs application after IRIS start CMD ["-a", "/node-entrypoint.sh"]
go to post Dmitry Maslennikov · May 21, 2020 VSCode itself has support for git out of the box. So, with VSCode-ObjectScript, when you just starting to use it, you can export source code from your server, and you can send it to git. Join me the next week on the webinar, where I'm going to speak about using git in VSCode. Also, you can look at the recording of the recent webinar from Raj Singh And in VSCode marketplace you can find extensions for many others SCM.
go to post Dmitry Maslennikov · May 21, 2020 What kind of issues in synchronization did you face? If it has just Export And what do you miss about debugging in VSCode. You know that you always can ask me if you have any issues. )) Do you remember, that Atelier has no future at all?
go to post Dmitry Maslennikov · May 21, 2020 I have this in my settings.json file "workbench.colorCustomizations": { "activityBar.background": "#0079c9", "activityBar.activeBackground": "#0079c9", "activityBar.activeBorder": "#ff80cc", "activityBar.foreground": "#e7e7e7", "activityBar.inactiveForeground": "#e7e7e799", "activityBarBadge.background": "#ff80cc", "activityBarBadge.foreground": "#15202b", "titleBar.activeBackground": "#005a96", "titleBar.inactiveBackground": "#005a9699", "titleBar.activeForeground": "#e7e7e7", "titleBar.inactiveForeground": "#e7e7e799", "statusBar.background": "#005a96", "statusBarItem.hoverBackground": "#0079c9", "statusBar.foreground": "#e7e7e7", "statusBar.border": "#005a96", "titleBar.border": "#005a96" }, This is not a part of this extension, it's just goes from VSCode itself, and marketplace can offer some extensions which can help with easy configuration of it. As to your task, the same task will be much easier to implement in VSCode.
go to post Dmitry Maslennikov · May 21, 2020 How to configure VSCode-ObejctScript in the InterSystems official documentation Recording of the webinar when I give an introduction to VSCode-ObjectScript Recording of tech talk webinar made by InterSystems PM Raj Singh, available here by registration And register for my the next webinar where I'm going to speak about working with Git in VSCode
go to post Dmitry Maslennikov · May 21, 2020 VSCode-ObjectScript offers some support by now, through the issues on GitHub. And anybody can order commercial support. Documentation is there. Atelier, too slow, and very fragile, and no improvements anymore, could you explain why do you like to use it?
go to post Dmitry Maslennikov · May 21, 2020 If you have read the article provided above, and maybe would saw the webinar by Raj Singh very recently, where he said, that VSCode will have support through WRC quite soon when we'll reach the stable version 1.0. You installed IRIS or Caché at least, so, just a couple of more installs, to make you more productive. It has the documentation. Yes, you can also have multiple connections, it's a bit tricky there, but possible. As soon as you understand why you really need it. You can change any colors in VSCode as you would like, just from the settings VSCode has support for GIT out of the box, while in Studio there are not ways, how to do it very simple You can ask any questions about using VSCode extension here, some small fixes I'm releasing quite quickly. Studio as well as Atelier, will not get any big improvements anymore, just only to keep it working with the newest version. While VSCode is in active development and will get a lot of new features, which will not be available in Studio.
go to post Dmitry Maslennikov · May 17, 2020 There are multiple ways, just use Create method directly on classes Security.Roles, and Security.Users do ##class(Security.Roles).Create(Name, Description, Resources, GrantedRoles) do ##class(Security.Users).Create(UserName, Roles, Password) Or, you can use %Installer manifest <Resource Name="%accounting_user" Description="Accounting" Permission="RW"/> <Role Name="%DB_USER" Description="Database user" Resources="MyResource:RW,MyResource1:RWU" RolesGranted= /> <User Username="Clerk1" PasswordVar="clerk1pw" Roles="Dataentry" Fullname="Data Entry Clerk" Namespace= Routine= ExpirationDate= ChangePassword= Enabled= Comment=""/>
go to post Dmitry Maslennikov · May 6, 2020 You can find what's goes to Durable SYS in the documentation
go to post Dmitry Maslennikov · May 6, 2020 It looks like a good request for WRC, why non-interactive mode does not work in emergency mode. And maybe they can offer a workaround.
go to post Dmitry Maslennikov · May 6, 2020 Depends on how you call it, you can just kill that process which runs such query. If you did it in the System Management portal, wait for a connection timeout, or open a new session in another browser or in incognito mode, go to processes, discover your hanging process, and terminate there.
go to post Dmitry Maslennikov · May 6, 2020 it should be "quietly" not "quielty", so, that's why this may not work for you
go to post Dmitry Maslennikov · May 5, 2020 As I said for server side it show linux for os/arch. You should find the switcher in context menu in tray on docker icon.
go to post Dmitry Maslennikov · May 5, 2020 On windows docker works in two different ways, as windows containers and linux containers. It looks like, you just should switch it to linux from Windows
go to post Dmitry Maslennikov · May 5, 2020 Ken, You running IRIS with an activated feature named as Durable %SYS, which means, some of your settings, should persist even when you restart and recreate containers. So, this may be a cause that your global persist after a recreate container. But does not says why it disappears after the restart of the host system. While we know almost nothing about your whole configuration, it's a bit difficult to discover what's going wrong. For sure, you can connect with Studio, just should keep in mind few points: The version of Studio should be the same or higher than version of server Port used for connection should be superport which is 51773 on IRIS side. So, you just have to add more -p 51773:51773, where the first 51773, is the port on your host machine, while the second one is mostly constant. You can also use VSCode for development with IRIS, in this case, should be used web port 52773, instead of 51773.
go to post Dmitry Maslennikov · May 5, 2020 I have recently implemented SAML Authentication for one of the projects where I participated, with some SAML providers. I have not tested it with Shibboleth, but with some online providers, including GSuite. It's not so difficult actually and can be solved with SAML classes already implemented in IRIS for SOAP. But this is the only Authentication, while SAML supports also supports provisioning, which I have not Implemented at the moment.
go to post Dmitry Maslennikov · May 4, 2020 Craig, Try this RUN wget -qO /dev/null --keep-session-cookies --save-cookies /dev/stdout --spider \ --method POST --body-data="UserName=$WRC_USERNAME&Password=$WRC_PASSWORD" \ 'https://login.intersystems.com/login/SSO.UI.Login.cls?referrer=https%253A//wrc.intersystems.com/wrc/login.csp' \ | wget -O - --load-cookies /dev/stdin \ "https://wrc.intersystems.com/wrc/WRC.StreamServer.cls?FILE=/wrc/Live/ServerKits/HSAP-2018.1.2.309.5-hscore15.032-b9021-lnxrhx64.tar.gz" \ | tar xvfzC - .