Question Cyril Grosjean · Nov 28, 2023

Problème de création de production avec IRIS PEX

Bonjour,

Je suis actuellement le projet d'auto-formation de @Guillaume Rongier pour faire du 100% Python sur InterSystems, j'ai suivi les étapes une par une cependant, lorsqu'il s'agit de créer une production, cela ne marche pas. Voici mon erreur:

iop --migrate /home/irisowner/dev/src/settings.py
Traceback (most recent call last):
  File "/home/irisowner/.local/bin/iop", line 8, in <module>
    sys.exit(main())
  File "/home/irisowner/.local/lib/python3.10/site-packages/grongier/pex/_cli.py", line 97, in main
    _Utils.migrate(args.migrate)
  File "/home/irisowner/.local/lib/python3.10/site-packages/grongier/pex/_utils.py", line 202, in migrate
    _Utils.set_productions_settings(settings.PRODUCTIONS,path)
  File "/home/irisowner/.local/lib/python3.10/site-packages/grongier/pex/_utils.py", line 268, in set_productions_settings
    _Utils.register_production(production_name,xml)
  File "/home/irisowner/.local/lib/python3.10/site-packages/grongier/pex/_utils.py", line 331, in register_production
    _Utils.raise_on_error(iris.cls('Grongier.PEX.Utils').CreateProduction(package,production_name,stream))
  File "/home/irisowner/.local/lib/python3.10/site-packages/grongier/pex/_utils.py", line 17, in raise_on_error
    raise RuntimeError(iris.system.Status.GetOneStatusText(sc))
RuntimeError: Invalid Production
  > ERROR #5090: An error has occurred while creating projection MyIRIS.Production:Production.

J'ai utilisé le projet dans lequel nous avons déjà tout créé dans mon entreprise (en local pour éviter de casser la production). Et pour être certain de n'avoir aucun problème, je veux faire mes tests sur le namespace "TEST" déjà créé pour l'occasion.

Voici mon settings.py situé ici : ./src/settings.py

from TEST.bo import MyBo

CLASSES = {
    "MyIRIS.MyBo": MyBo
}

PRODUCTIONS = [
    {
        "MyIRIS.Production": {
            "@TestingEnable": "true",
            "@Name": "MyIRIS.Production",
            "Item": [
                {
                    "@Name": "Instance.Of.MyBo",
                    "@ClassName": "MyIRIS.MyBo",
                }
            ]
        }
    }
]

 

Ma classe est située ici : ./src/TEST/bo.py

from grongier.pex import BusinessOperation

classMyBo(BusinessOperation):defon_message(self, request):
        self.log_info("Hello World")

J'ai aussi effectué un iop --init au départ pour compiler les fichiers python.

Product version: IRIS 2023.1
$ZV: IRIS for UNIX (Ubuntu Server LTS for x86-64 Containers) 2023.1.1 (Build 380U) Fri Jul 7 2023 23:53:46 EDT [Health:5.1.0-1.m1]

Comments

Guillaume Rongier · Nov 28, 2023

Salut,

il manque un d à @TestingEnable

@TestingEnable != @TestingEnabled

0