FHIR Chat · how does one prevent the template from reloading · IG creation

Stream: IG creation

Topic: how does one prevent the template from reloading


view this post on Zulip Eric Haas (Jan 15 2020 at 08:15):

I thought I had a bash script that allowed me to reuse the same template file instead of reloading for each build run, but is no longer working or never worked in the first place. Is there a switch in the command line to prevent reloading or some configuration in the ig.ini to prevent reloading of the template folder. I can't find the documentation on this.

view this post on Zulip Eric Haas (Jan 15 2020 at 08:25):

if I set template=template in ig.ini it gets overwritten by the reload and the subfolders disappear. I think this was not an issue before but I am may be misremembering.

view this post on Zulip Grahame Grieve (Jan 15 2020 at 11:54):

Why would you not want to update the template?

view this post on Zulip Lloyd McKenzie (Jan 15 2020 at 14:25):

'template' is always a temporary directory. If you want to mess around with your template for testing purposes, copy it to a different folder and point to it there.

view this post on Zulip John Moehrke (Jan 15 2020 at 15:04):

I can imagine a need once a IG has gone normative to be able to freeze all the build tools so that it can always be regenerated exactly as it once was. Yes this doesn't take advantage of improvements in the build tools, but it is important for reporduceability. And as a choice, I can always choose to build with new tools.

view this post on Zulip Eric Haas (Jan 15 2020 at 15:47):

2 more reasons why:

  1. it slows down the build to have to load it each time when you are iterating through your ig development process rapidly. Which is made more painful since watch is a bit buggy.
  2. you are going offline

view this post on Zulip Jose Costa Teixeira (Jan 15 2020 at 16:27):

@Lloyd McKenzie in a derived template can we point to a specific version of the base template?

view this post on Zulip Jose Costa Teixeira (Jan 15 2020 at 16:27):

That would solve some issues I think

view this post on Zulip Jose Costa Teixeira (Jan 15 2020 at 16:29):

I think it's much better to point to s specific version than switching the update on and off

view this post on Zulip Jose Costa Teixeira (Jan 15 2020 at 16:30):

@Eric Haas I think the publisher already works offline

view this post on Zulip Lloyd McKenzie (Jan 15 2020 at 16:51):

If you are offline, it should be grabbing the templates from your cache, so shouldn't be an issue. Grabbing the templates doesn't take long - maybe 2 seconds in the overall build process if they're cached, so certainly not worth snapshotting them. Yes, you should be able to refer to a specific version - so long as HL7's NPM cache has a snapshot, you should get that snapshot.

view this post on Zulip Chris Moesel (Jan 15 2020 at 17:17):

I can imagine a need once a IG has gone normative to be able to freeze all the build tools so that it can always be regenerated exactly as it once was.

I imagine this is a much bigger ask than just persisting or versioning templates. My experience has been that the publisher is tightly coupled to the current build infrastructure as well. Trying to run a publisher from 6 months ago will almost certainly fail because of changes in the external services the publisher depends on. I agree, however, that there is a need for repeatable builds; I just expect there's a ton of work involved to get there.

view this post on Zulip Jose Costa Teixeira (Jan 15 2020 at 18:59):

So if we keep the Publisher jar, and if we stick to one version of the template, the publication should remain constant ... Perhaps we need to experiment and if there is any issue, we can bring it. I don't expect that big a challenge (even for cases like IHE or similar). I hope I'm not missing anything

view this post on Zulip Lloyd McKenzie (Jan 15 2020 at 22:48):

It's also tied to the vocabulary server, any patches made to templates or tgz files for past publications, etc. It may be possible to regenerate an IG exactly as it was, but it's far from guaranteed


Last updated: Apr 12 2022 at 19:14 UTC