FHIR Chat · Feedback on SUSHI beta before we roll it into mainline · shorthand

Stream: shorthand

Topic: Feedback on SUSHI beta before we roll it into mainline


view this post on Zulip Chris Moesel (May 29 2020 at 20:33):

Hi All... The SUSHI beta has been out since before the Connectathon now. We're considering moving it out of beta and into the mainline release. For those of you who have used it, do you like it? Do you think the new configuration is good as is? Anything that you feel we should let die on the beta vine?

For those of you who haven't used it (as well as those who have), I'm attaching a slide deck that covers the features. I've put detailed notes in as well, so ensure your view shows the notes!

SUSHI_Config_and_Integration_v2.pptx

view this post on Zulip Chris Moesel (May 29 2020 at 20:34):

NOTE: Those who are interested in SUSHI configuration and integration should definitely check this out

view this post on Zulip Keith Boone (May 30 2020 at 20:47):

I'm interested, at the same time, it seems that if I wanted to use config.yaml for an existing project, I might have a significant chunk of work ahead of me. Is there an option to create one from existing configuration?

view this post on Zulip David Hay (May 30 2020 at 20:51):

It creates one for you on first run...

view this post on Zulip David Hay (May 30 2020 at 23:15):

I do like it - though I had an issue where I was running the beta locally, and found that links to other IG's weren't working properly in the autobuild (worked fine locally). When I reverted to the mainline locally then everything came right. I think it was related to package.json being in the wrong place (though puzzled why the autobuild even worked if that was the case)...

view this post on Zulip Bob Milius (Jun 01 2020 at 14:58):

I like the beta. It allows me to add definition.parameters to the ImplementationGuide-xxx.json. Otherwise I'd have to edit it after I run sushi.

view this post on Zulip Chris Moesel (Jun 01 2020 at 15:13):

I do like it - though I had an issue where I was running the beta locally

I suspect this is an artifact of you running the beta locally but the IG Publisher running the non-beta. I think that once we release beta functionality to the mainline release, this would go away (since the auto build would be using the new config too).

view this post on Zulip David Hay (Jun 01 2020 at 18:39):

Yeah - that was my assumption too!

view this post on Zulip Chris Moesel (Jun 03 2020 at 21:27):

OK, sans any negative feedback, we'll be rolling this into a mainline release end of this week or beginning of next week...

view this post on Zulip Eric Haas (Jun 04 2020 at 01:47):

This is excellent. The config.yml is great since I have be manually editing the IG resource as a yml file anyway. I implemented some test templates that that take menu.yml as input. So I am happy to see this too!

view this post on Zulip Eric Haas (Jun 04 2020 at 02:40):

I don't see all the parameters listed here for the config.yml and specifically...

parameters:
  show-inherited-invariants: false
  usage-stats-opt-out: false
  path-output: docs
  foo: bar

path-output to redirect the ig-pub output to some other directory like "docs" for publishing on github pages? but after testing it it looks like all the parameters are not supported

and would like to be able to define custom parameters for ig resource? (to use ig resource for defining custom Jekyll site variables in future...)

view this post on Zulip Chris Moesel (Jun 04 2020 at 12:49):

Thanks, @Eric Haas. I'd like to understand the issue a bit better. The link you provided does not work, but I'm assuming you mean to link to the Implementation Guide Parameters page. As for the parameters, with a couple of minor exceptions, SUSHI does nothing special with parameters; we just convert them to the format that the ImplementationGuide requires. I just tested out what you wrote above and it resulted in the following parameter array in the generated ImplementationGuide JSON:

    "parameter": [
      {
        "code": "copyrightyear",
        "value": "2020+"
      },
      {
        "code": "releaselabel",
        "value": "CI Build"
      },
      {
        "code": "show-inherited-invariants",
        "value": "false"
      },
      {
        "code": "usage-stats-opt-out",
        "value": "false"
      },
      {
        "code": "path-output",
        "value": "docs"
      },
      {
        "code": "foo",
        "value": "bar"
      },
      {
        "code": "path-history",
        "value": "http://hl7.org/fhir/us/sh-scratch/history.html"
      }
    ]
]

This seems right to me. Once SUSHI generates this, it's up to the IG Publisher to actually honor those parameters. Are you experiencing something different?

view this post on Zulip Eric Haas (Jun 04 2020 at 16:06):

@Chris Moesel thanks and you are correct, I had extra ig resource lurking in one of the input files. ( Are there any ballot comments to change the folder names? I think there are too many named "input" which is confusing)

view this post on Zulip Eric Haas (Jun 04 2020 at 16:07):

based on this guidance... http://build.fhir.org/ig/HL7/fhir-shorthand/branches/beta/sushi.html#sushi-inputs

File1.fsh
File2.fsh
File3.fsh
...
package.json
/ig-data
├── package-list.json (optional)
├── ig.ini (optional)
└── /input
    ├── ignoreWarnings.txt (optional)
    ├── /images
    │   ├── myGraphic.jpg
    │   ├── myDocument.docx
    │   └── mySpreadsheet.xlsx
    ├── /includes
    │   └── menu.xml (optional)
    └── /pagecontent
        ├── index.md
        ├── 1_mySecondPage.md
        ├── 2_myThirdPage.md
        └── 3_myFourthPage.md

I put all my pages etc in the input/pagecontent folder but that did not work it needed to go in the optional ig-data/input data/pagecontent folder. This is confusing...

view this post on Zulip Chris Moesel (Jun 08 2020 at 19:59):

The duplication of folder structures is confusing, but so is mixing SUSHI-generated output with user-provided input (which happens when we have just a single input folder). This is something we have ideas about for future integrations, but need to get through this part (the config.yaml) first before we start discussing that. One step at a time. ;-)


Last updated: Apr 12 2022 at 19:14 UTC