go to post Evgeny Shvarov · Jun 11, 2023 Introduced a module that does the thing what @Sergey Mikhailenko suggested. So install it: USER>zpm "install production-settings" and call: do ##class(shvarov.i14y.Settings).SetValue("ProductionName","ServiceOrOperationName","Setting",Value)
go to post Evgeny Shvarov · Jun 11, 2023 Hi @Marcel Lee ! We didn't do this before. I sent you an email.
go to post Evgeny Shvarov · Jun 10, 2023 For now it ended in the following way: USER>d ##class(shvarov.telegramgpt.Setup).Init($system.Util.GetEnviron("TG_BOT_TOKEN"),$system.Util.GetEnviron("OPENAPI_KEY")) This is how we can setup production after docker build and start in the following project. Thank you, @Guillaume Rongier
go to post Evgeny Shvarov · Jun 10, 2023 Thanks @Alexander.Woodhead! Already implemented in this manner. Now the module can be installed as is: USER>zpm "install telegram-gpt -D TgToken=your_telegram_token -D GPTKey=your_ChatGPT_key"
go to post Evgeny Shvarov · Jun 10, 2023 Thank you, @Sergey Mikhailenko ! This is exactly the thing I was looking for. Implemented in a new version of ChatGPT Telegram bot
go to post Evgeny Shvarov · Jun 10, 2023 In a new version can also be installed as: USER>zpm "install telegram-gpt -D TgToken=your_telegram_token -D GPTKey=your_ChatGPT_key" so you can pass the Telegram Token and ChatGPT API keys as production parameters.
go to post Evgeny Shvarov · Jun 10, 2023 Thank you, @Kurro Lopez! And thanks for introducing chatGPT package to the community!
go to post Evgeny Shvarov · Jun 9, 2023 It is your choice, but I personally recommend to use IRIS as docker images for development. It is very convenient and this approach eliminates a gazillion problems you can met developing with IRIS desktop.
go to post Evgeny Shvarov · Jun 9, 2023 Nothing happens until you intentionally load classes from a new branch and other resources into an IRIS namespace. But I highly recommend you to rebuild iris docker image and reload classes from a new branch when switching branches otherwise you could have a mix of two (or even more) branches in IRIS that can lead to unexpected behaviour.
go to post Evgeny Shvarov · Jun 8, 2023 Great article, @Muhammad Waseem ! I'd add a docker command to start terminal. First this one launches IRIS and creates a fresh namespace alone with the user 'demo' and password 'demo': docker run --rm --name iris-demo -d -p 9091:1972 -p 9092:52773 -e IRIS_PASSWORD=demo -e IRIS_USERNAME=demo -e IRIS_NAMESPACE=DEV intersystemsdc/iris-community Then to launch a terminal in PROD namespace: docker exec -it iris-demo iris session iris -U DEV DEV>
go to post Evgeny Shvarov · Jun 8, 2023 @Michael Davidovich , this is a good idea! If you could provide a repo with legacy application inviting for dockerization I believe a lot of DC members could help.
go to post Evgeny Shvarov · Jun 8, 2023 Here is another video that updates the class and commits changes to the repo
go to post Evgeny Shvarov · Jun 8, 2023 Well, if you have git repo cloned with objectscript files and VSCode connected to IRIS all your files are imported into IRIS and can be executed there. You change the objectscript files in VSCode, compile and they are imported into IRIS automatically. VSCode and git maintain the versioning of changes for you.
go to post Evgeny Shvarov · Jun 8, 2023 I understand the argumentation, makes sense. Just curious how do you debug those unittests that fail?
go to post Evgeny Shvarov · Jun 8, 2023 Thanks @Guillaume Rongier ! Is it possible to use your export/import mechanism to change only one element of the production?
go to post Evgeny Shvarov · Jun 8, 2023 BTW, this setting worked: "intersystems.testingManager.client.relativeTestRoot": "/tests",
go to post Evgeny Shvarov · Jun 8, 2023 Now it sees them: But they ask for ^UnitTest to be setup, instructions, etc. Could it work similar as it works in IPM as @Timothy Leavitt demonstrated? Because with IPM I can run tests all and standalone without any settings at all - it just works. Could the IPM be leveraged if it is presented in the repo/namespace?
go to post Evgeny Shvarov · Jun 8, 2023 Also you can create NAMESPACE/DATABASE via SQL. e.g.: USER>:sql SQL Command Line Shell ---------------------------------------------------- The command prefix is currently set to: <<nothing>>. Enter <command>, 'q' to quit, '?' for help. [SQL]USER>>Create Database TEST 1. Create Database TEST 0 Rows Affected statement prepare time(s)/globals/cmds/disk: 0.0235s/2,162/14,045/0ms execute time(s)/globals/cmds/disk: 0.0843s/29,325/395,226/0ms cached query class: %sqlcq.USER.cls21 --------------------------------------------------------------------------- [SQL]USER>>exit USER>zn "TEST" TEST> HTH
go to post Evgeny Shvarov · Jun 8, 2023 It looks like that organization field for Open AI integration is not mandatory, so only Telegram Token and ChatGPT key needed.