FHIR Chat · ig.ini in sushi 1.0.0 · shorthand

Stream: shorthand

Topic: ig.ini in sushi 1.0.0


view this post on Zulip 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.

view this post on Zulip 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?

view this post on Zulip Jose Costa Teixeira (Nov 14 2020 at 07:31):

The ig resource should be in input/

view this post on Zulip 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?

view this post on Zulip 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

view this post on Zulip 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.

view this post on Zulip 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.

view this post on Zulip Mark Kramer (Nov 14 2020 at 17:36):

Thanks for that tip, I'll see it gets done.

view this post on Zulip 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.

view this post on Zulip 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

view this post on Zulip 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.

view this post on Zulip 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"
      }
    ]

view this post on Zulip Elliot Silver (Nov 14 2020 at 17:42):

Its odd that the file is needed, even if I don't suppress any messages.

view this post on Zulip Mark Kramer (Nov 14 2020 at 17:43):

If you want to avoid oddness, you're in the wrong place. :laughing:

view this post on Zulip Elliot Silver (Nov 14 2020 at 17:43):

Right, silly me.

view this post on Zulip 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.

view this post on Zulip Jose Costa Teixeira (Nov 14 2020 at 17:49):

is your IG xml generated by sushi?

view this post on Zulip 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?

view this post on Zulip Jose Costa Teixeira (Nov 14 2020 at 17:52):

the ignorewarnings.txt is expected in the ./input folder

view this post on Zulip 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

view this post on Zulip Jose Costa Teixeira (Nov 14 2020 at 17:54):

it's added later in the process by a powerful spell the template

view this post on Zulip Elliot Silver (Nov 14 2020 at 18:02):

No, no direct link in the QA report.

view this post on Zulip Mark Kramer (Nov 14 2020 at 18:03):

Check that the file name is exactly ignoreWarnings.txt?

view this post on Zulip Elliot Silver (Nov 14 2020 at 18:04):

Putting it in ./input seems to work.

view this post on Zulip Mark Kramer (Nov 14 2020 at 18:06):

Ha. I had one there also, so sorry I misled you on the location.

view this post on Zulip 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.

view this post on Zulip 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.

view this post on Zulip 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