Stream: committers
Topic: DSTU2 support in IG publisher
Grahame Grieve (Oct 12 2016 at 06:06):
ok everyone, the IG publisher now supports DSTU2. Support is still in beta mode, but it actually works generally, and I seem to be managing the value set/ code system issues (tricky for me).
Grahame Grieve (Oct 12 2016 at 06:09):
there's been a consqeunce, a breaking change in the way existing profiles from forge are handled. In the past, you had to mark forge inputs as version 1.0.2. but now, you have to mark them as 1.0.1 instead (loading a profile from forge is procedurally different from publishing a 1.0.2 IG)
Grahame Grieve (Oct 12 2016 at 06:10):
@Keith Boone @Eric Haas @Brett Marquard this is for your attention....
Eric Haas (Oct 14 2016 at 18:15):
thank you. do all the versions have to be 1.0.1?
Grahame Grieve (Oct 14 2016 at 19:10):
you must specifically mark any forge profiles with 1.0;1 - all of them, each of them. Otherwise you don't use 1.0.1 at all
Eric Haas (Oct 14 2016 at 21:02):
(deleted)
Eric Haas (Oct 14 2016 at 21:06):
do I need to manually load the validation pack?
Root directory: /Users/ehaas/Documents/FHIR/STU3build/tests/ig10 (00.0097sec) Terminology Cache is at /Users/ehaas/fhircache (00.0120sec) Fetch Validation Pack from http://hl7.org/fhir/DSTU2/igpack.zip (00.0120sec) Publishing Content Failed: http://hl7.org/fhir/DSTU2/igpack.zip (01.0025sec) (01.0025sec) Use -? to get command line help (01.0025sec) (01.0026sec) Stack Dump (for debugging): (01.0026sec) java.io.FileNotFoundException: http://hl7.org/fhir/DSTU2/igpack.zip at sun.net.www.protocol.
Eric Haas (Oct 14 2016 at 21:11):
http://hl7.org/fhir/DSTU2/igpack.zip doesnt resolve but http://hl7.org/fhir/igpack.zip does
Grahame Grieve (Oct 14 2016 at 21:13):
no. I'll have to look into that
Grahame Grieve (Oct 14 2016 at 22:56):
try again
Eric Haas (Oct 19 2016 at 15:44):
@Josh Mandel I immediately tried it out publishing dstu2 IG on the github platform with this
Works fine in my local build but I get this error when I try to publish using the webhook...
Terminology Cache is at /home/sbx_user1051/fhircache (00.0471sec) Fetch Validation Pack from http://hl7.org/fhir/DSTU2/igpack.zip (00.0472sec) Publishing Content Failed: /home/sbx_user1051/fhircache/validation-1.0.2.zip (No such file or directory) (04.0918sec)
Can you take a look at it?
Grahame Grieve (Oct 19 2016 at 19:22):
@Eric Haas @Josh Mandel it would have to be me who looks at it, but I would need the log file out of the system temp directory. Even that might not be very useful though - this is the code in question:
Grahame Grieve (Oct 19 2016 at 19:22):
private String grabToLocalCache(String source) throws IOException { String fn = Utilities.path(vsCache, "validation-"+version+".zip"); File f = new File(fn); if (!f.exists()) { URL url = new URL(source); URLConnection c = url.openConnection(); byte[] cnt = IOUtils.toByteArray(c.getInputStream()); TextFile.bytesToFile(cnt, fn); } return fn; }
Grahame Grieve (Oct 19 2016 at 19:23):
the question is, does the nominated directory exist? (fhircache)
Josh Mandel (Oct 19 2016 at 21:16):
How is it supposed to be created?
Grahame Grieve (Oct 19 2016 at 21:18):
publisher creates it itself
Grahame Grieve (Oct 19 2016 at 21:19):
using Java mkdirs()
Eric Haas (Oct 20 2016 at 01:00):
I assume the system log file is different from the log file that generated the above . Just in case, the whole thing is here.
Grahame Grieve (Oct 20 2016 at 01:06):
try setting the vsCache directory like we do in DAF
Eric Haas (Oct 20 2016 at 17:30):
Is "try setting the vsCache directory like we do in DAF" directed at me and if so how do I do that ?
Grahame Grieve (Oct 20 2016 at 19:26):
yes to you. The build seems to be having some caching problem. To troubleshoot it. add an entry for vsCache to the paths in the config file, like we do for DAF
Eric Haas (Oct 20 2016 at 20:55):
@Grahame Grieve @Josh Mandel It works!....
This tool and publisher is really slick. Thanks again
I have 'gitignored' the Cache folder- I assume that is not a problem.
Grahame Grieve (Oct 20 2016 at 21:05):
have you read the documentation about the cache folder?
Eric Haas (Oct 20 2016 at 21:21):
Yeah but it makes more sense now after I asked my question. - NM
Eric Haas (Oct 20 2016 at 23:36):
I am not sure I have"specification": "[specification]"
right. I want DSTU2 published specification so I put in "specification": "http://hl7.org/fhir/"
the references to the core spec are all wonky for example http://hl7.org/fhir/html/medicationorder.html
- extra 'html' between the base and the resource id
Grahame Grieve (Oct 20 2016 at 23:37):
you should use a version specific reference:
Grahame Grieve (Oct 20 2016 at 23:37):
"specification": "http://hl7.org/fhir/DSTU2"
Grahame Grieve (Oct 20 2016 at 23:37):
but that doesn't relate to the spurious /html/
Grahame Grieve (Oct 20 2016 at 23:39):
that relates to a problem in the IGPack
Eric Haas (Oct 20 2016 at 23:41):
..which your problem or mine...
Grahame Grieve (Oct 20 2016 at 23:44):
mine
Eric Haas (Oct 21 2016 at 18:42):
this issue:
the type Reference(http://hl7.org/fhir/us/argonaut/StructureDefinition/argo-medication) address is ../StructureDefinition/argo-medication.html
giving a 404 error.
The right address is instead .../StructureDefinition-argo-medication. html
.
It works in DAF? where i define the base. here I'm using the default.
Eric Haas (Oct 27 2016 at 17:12):
@Josh Mandel can you check the IG publisher AWS server. it stopped updating at about 3 pm yesterday. Thanks.
Josh Mandel (Oct 27 2016 at 17:18):
No changes to my wrapper / autobuild code. Did the publisher tool change?
Grahame Grieve (Oct 27 2016 at 19:24):
no
Eric Haas (Oct 27 2016 at 20:24):
@Josh Mandel perhaps the transfer of the continuous build may have something do to with it since the code seems to grab the latest IG publisher from the CI build https://chat.fhir.org/#narrow/near/43910/stream/committers/topic/build.2Efhir.2Eorg
Josh Mandel (Oct 29 2016 at 03:41):
Oh, that's a good point :-)
Josh Mandel (Oct 29 2016 at 03:44):
I'm pushing a change -- thanks for this suggestion!
Josh Mandel (Oct 29 2016 at 03:49):
In my debug.tgz, I see a publisher log with
Publishing Content Failed: Must specify which SNOMED CT edition ('sct-edition') to use in the config file (43.0670sec)
Does yours show something similar?
Bryn Rhodes (Oct 29 2016 at 16:15):
Josh, yes, we got that with a new IG we put together a few days ago, add this to your ig.json:
Bryn Rhodes (Oct 29 2016 at 16:15):
"sct-edition": "http://snomed.info/sct/731000124108",
Josh Mandel (Oct 29 2016 at 17:08):
Great! And I fixed my bug in the auto build script (was trying to fetch the jar from the old GitHub.io url).
Eric Haas (Oct 31 2016 at 16:31):
Thanks for looking into this Josh but I don't see the code updated at https://github.com/jmandel/fhir-ig-builder
Josh Mandel (Oct 31 2016 at 17:31):
Oh, I didn't push to github (will do). But it updates https://github.com/jmandel/fhir-ig-builder/blob/master/src/main/java/iger/Main.java#L40 (and I deployed to AWS, so it should be running).
Josh Mandel (Oct 31 2016 at 17:32):
(There, just committed to GitHub.)
Eric Haas (Oct 31 2016 at 18:47):
webhooks still not initiating a build when run a curl or push to repo?
Eric Haas (Nov 05 2016 at 01:01):
@Grahame Grieve So I have a couple of issues with the IG tool.
1) I have a complex extension that is rendering all the type in the tree view.
2) The image source 'icon_modifier_extension_simple.png' cannot be resolved
,
`The image source '../cc0.png' cannot be resolved` and
The link '../license.html' cannot be resolved
are causing the majority of broken links. where do the .png s live and how do I fix this?
3) a qa error "The extension http://hl7.org/fhir/StructureDefinition/structuredefinition-expression is unknown, and not allowed here" I think is due to the fluent path expresssions in the spreadsheets, but if I leave them it won't build... not a high priority
Eric Haas (Nov 05 2016 at 01:13):
on more thing I split DAF Research and US-Core into separate IGs. DAF-research has a profiles that are based US-Core.
I have the type as:
{http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient}
and in ig.json:
"dependencyList": [ { "name": "uscore", "location": "http://ig.fhir.me/Healthedata1/US-Core", "source": "resources" }
and have the definitions.json.zip in the DAF-research resources directory. still the The profile builds on the core resource??
Example
Grahame Grieve (Nov 06 2016 at 10:38):
@Eric Haas
- 1 complex extension - can I look at it?
- 2 modifier extensions should be fixed, but delete your cache to get the latest igpack.zip
- 2b the image references are probably in your footer template
3 - the expression one - I'll have to think about that. @Lloyd McKenzie it's not defined in R2 - ideas?
Grahame Grieve (Nov 06 2016 at 10:39):
I'll have to look at the build... I'm not sure what you're describing
Lloyd McKenzie (Nov 06 2016 at 14:42):
@Grahame Grieve / @Eric Haas So the issue is you're trying to build against DSTU2, but the extension used isn't defined in DSTU2? Unless we want to retroactively update the DSTU2 release to include the extension, I think you'll just need to ignore the message. (Though an extension you can't find the definition of really should be a warning, not an error.)
Eric Haas (Nov 06 2016 at 20:08):
@Grahame Grieve the spreadsheet for complex extension is here it is rendered here
Eric Haas (Nov 06 2016 at 20:15):
@Grahame Grieve one more important issue which you had concerns about code systems early on... The Argonaut code system is code is defined for code extensions. (e.g. condition category = problem ). But am unable to reference them in IG- if I try to reference them using ths code system ("http://argonaut.hl7.org" )in value set, I get a build error without an error message ( the dreaded Null error after output)
Grahame Grieve (Nov 07 2016 at 11:38):
fixed the complex extension. Don't understand the other commnet - can you say more?
Eric Haas (Nov 07 2016 at 20:09):
It turned out the valueset was invalid -
it had an empty element. The tool did not generate an error message for this.
Eric Haas (Nov 07 2016 at 20:09):
on a separate note Is there an example of a concept map used in a IG?
Eric Haas (Nov 07 2016 at 20:09):
@Grahame Grieve re code system error:I discovered the problem on my end and fixed it.
Eric Haas (Nov 07 2016 at 21:38):
@Grahame Grieve The following QA item ( >100 occurances in my IGs)
The image source 'icon_modifier_extension_simple.png' cannot be resolved
is in the build generated artifacts and not from the templates. not a priority but when you get a chance can you fix it?
Grahame Grieve (Nov 07 2016 at 22:52):
fixed it, but you have to delete your local cached copy of the igpack (in your vscache directory)
Eric Haas (Nov 10 2016 at 01:18):
this did not work I don't see an igpack...
Grahame Grieve (Nov 10 2016 at 19:00):
it will be called something else, but it will be the biggest file in the cache directory
Eric Haas (Nov 12 2016 at 00:10):
DAF-Research condition is a profile on US-Core. So I have type as Condition{http://hl7.org/fhir/us/core/StructureDefinition/us-core-condition}
But it is rendering as a profile on Condition. See myOct31 post above.
Eric Haas (Nov 12 2016 at 00:11):
(deleted)
Keith Boone (Dec 07 2016 at 08:05):
So where do I find the IG publisher?
Grahame Grieve (Dec 07 2016 at 10:35):
download from the current build
Rick Geimer (Dec 07 2016 at 17:20):
Run org.hl7.fhir.igpublisher.jar in the publish directory of the build. You can just double click on it, it's an executable jar.
Last updated: Apr 12 2022 at 19:14 UTC