Stream: shorthand
Topic: ig.ini in sushi 1.0.0
Elliot Silver (Nov 14 2020 at 05:40):
I'm in the process of upgrading from sushi 0.16 to 1.0.0. My IG is entirely fsh, the IG resource itself is generated by sushi. Sushi seems to be working fine, but my publisher builds are failing because they can't find the IG resource. ig.ini currently has:
ig = input/ImplementationGuide-who.cr.covid19.json
which makes sense because that is where sushi used to put the IG resource. However, the resource is now put in fsh-generated.
Do I just change the directory from input
to fsh-generated/resources
? (I don't recall seeing instructions about this in the migration steps.)
Thanks.
Elliot Silver (Nov 14 2020 at 06:13):
Next interesting issue: I'm seeing an error in qa.html:
ImplementationGuide.definition.parameter[22].value error | Supressed messages file not found
Is this referring to ignoreWarnings.txt? Is this file now required? Where is it supposed be located?
Jose Costa Teixeira (Nov 14 2020 at 07:31):
The ig resource should be in input/
Elliot Silver (Nov 14 2020 at 17:29):
Sorry, let me correct that -- I don't actually have an IG fsh file. The IG resource is generated from sushi-config.yaml. If I start with a clean build, I don't have an IG resource to point to, and then when I run sushi, a generated IG resource ends up in fsh-generated. Are you suggesting I need to copy that to input?
Mark Kramer (Nov 14 2020 at 17:33):
Elliot, you need this in your ig.ini (with your IG resource name):
[IG]
ig = fsh-generated/resources/ImplementationGuide-hl7.fhir.us.mcode.json
template = hl7.fhir.template
Mark Kramer (Nov 14 2020 at 17:34):
No copying is needed, but you do need both an ig.ini
and sushi-config.yaml
at the top level, and the ig.ini needs to point to the fsh-generated/resources
directory.
Elliot Silver (Nov 14 2020 at 17:35):
OK, that's what I suspected, just looking for confirmation. Changing igi.ini to point to the new location should probably be in the upgrade instructions.
Mark Kramer (Nov 14 2020 at 17:36):
Thanks for that tip, I'll see it gets done.
Elliot Silver (Nov 14 2020 at 17:38):
Any thought about the suppressed messages file error I was seeing? I suspect it is a publisher problem, but not sure.
Mark Kramer (Nov 14 2020 at 17:40):
I think it refers to the ignoreWarnings.txt file. That should be at the top level, and it needs to start with the SuppressedMessages header shown here:
== Suppressed Messages ==
# The following code systems are external and not supported by terminology server
Code System URI "http://ncimeta.nci.nih.gov" is unknown so the code cannot be validated
Code System URI "http://cancerstaging.org" is unknown so the code cannot be validated
Mark Kramer (Nov 14 2020 at 17:41):
If that's not it, then you should look at the IG json and figure out what definition.parameter[22].value is.
Mark Kramer (Nov 14 2020 at 17:42):
The parameters are name-value pairs, like this:
"parameter": [
{
"code": "copyrightyear",
"value": "2019+"
},
{
"code": "releaselabel",
"value": "STU1"
},
{
"code": "show-inherited-invariants",
"value": "false"
},
{
"code": "path-history",
"value": "http://hl7.org/fhir/us/mcode/history.html"
}
]
Elliot Silver (Nov 14 2020 at 17:42):
Its odd that the file is needed, even if I don't suppress any messages.
Mark Kramer (Nov 14 2020 at 17:43):
If you want to avoid oddness, you're in the wrong place. :laughing:
Elliot Silver (Nov 14 2020 at 17:43):
Right, silly me.
Elliot Silver (Nov 14 2020 at 17:49):
Nope, putting ignoreWarnings in my base directory (.) doesn't work, and I only have two parameter elements in the generated IG json file, so I'm about 20 short of where it is looking.
Jose Costa Teixeira (Nov 14 2020 at 17:49):
is your IG xml generated by sushi?
Mark Kramer (Nov 14 2020 at 17:51):
Weird. 22 did seem like a lot. Is there a direct link in the QA report to the item it is referring to?
Jose Costa Teixeira (Nov 14 2020 at 17:52):
the ignorewarnings.txt is expected in the ./input folder
Jose Costa Teixeira (Nov 14 2020 at 17:53):
You will probably not see it in mentioned in the ig.json folder because it's not there
Jose Costa Teixeira (Nov 14 2020 at 17:54):
it's added later in the process by a powerful spell the template
Elliot Silver (Nov 14 2020 at 18:02):
No, no direct link in the QA report.
Mark Kramer (Nov 14 2020 at 18:03):
Check that the file name is exactly ignoreWarnings.txt
?
Elliot Silver (Nov 14 2020 at 18:04):
Putting it in ./input seems to work.
Mark Kramer (Nov 14 2020 at 18:06):
Ha. I had one there also, so sorry I misled you on the location.
Chris Moesel (Nov 14 2020 at 19:06):
Elliot Silver said:
OK, that's what I suspected, just looking for confirmation. Changing igi.ini to point to the new location should probably be in the upgrade instructions.
Yep. It looks like we missed that -- likely because in many of the prior FSH projects, SUSHI created ig.ini for you, so we didn't expect it to already be there (and in need of modification). We'll have to add something in the migration doc to cover that then.
Mark Kramer (Nov 16 2020 at 17:28):
I entered a SUSHI issue, to remind us, but we might want to get to this fast, since people are actively upgrading now.
Gino Canessa (Nov 19 2020 at 14:07):
I couldn't find the issue on GH to look for / add to, but the error message in sushi has the incorrect path as well:
Sushi: error The ig.ini file must have an "ig" property pointing to the IG file. Please add the following line to fhir-subscription-backport-ig\ig.ini: (00:02.0355)
Sushi: 'ig = input/ImplementationGuide-hl7.fhir.uv.subscriptions-backport.json (00:02.0359)
Sushi: File: C:\git\fhir-subscription-backport-ig\ig.ini (00:02.0361)
Thanks!
Last updated: Apr 12 2022 at 19:14 UTC