From d4a121f60a74fb1ec18dd96d2bc10e3984a9cb90 Mon Sep 17 00:00:00 2001 From: Jose Costa Teixeira Date: Fri, 8 Sep 2023 12:09:09 +0200 Subject: [PATCH 01/36] Update sushi-config.yaml --- sushi-config.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sushi-config.yaml b/sushi-config.yaml index 22ef104c..d70c1456 100644 --- a/sushi-config.yaml +++ b/sushi-config.yaml @@ -1,4 +1,4 @@ -id: fhir.who.smart-base +id: who.fhir.smart-base canonical: http://worldhealthorganization.github.io/smart name: SMART title: SMART Empty IG From ff7d3080197a7f906784743464cd369fb8f277d4 Mon Sep 17 00:00:00 2001 From: Jose Costa Teixeira Date: Fri, 8 Sep 2023 12:11:46 +0200 Subject: [PATCH 02/36] Update ig.ini --- ig.ini | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ig.ini b/ig.ini index ddbac8d5..446c901c 100644 --- a/ig.ini +++ b/ig.ini @@ -1,5 +1,5 @@ [IG] -ig = fsh-generated/resources/ImplementationGuide-fhir.who.smart-base.json +ig = fsh-generated/resources/ImplementationGuide-who.fhir.smart-base.json #template = #local-template template = who.fhir.template#current From 87f585659f95fa0b1f8d59cee89228cba8fcce3a Mon Sep 17 00:00:00 2001 From: Jose Costa Teixeira Date: Fri, 8 Sep 2023 14:50:20 +0200 Subject: [PATCH 03/36] change SMART to SG --- input/fsh/SGBusinessProcess.fsh | 2 ++ input/fsh/SGCodeSystem.fsh | 3 +++ ...mentationGuide.fsh => SGImplementationGuide.fsh} | 2 +- .../{SMARTLogicalModel.fsh => SGLogicalModel.fsh} | 0 input/fsh/SGPersona.fsh | 3 +++ input/fsh/SGValueSet.fsh | 3 +++ input/fsh/SMARTBusinessProcess.fsh | 2 -- input/fsh/SMARTCodeSystem.fsh | 3 --- input/fsh/SMARTValueSet.fsh | 3 --- sushi-config.yaml | 13 +++++++++---- 10 files changed, 21 insertions(+), 13 deletions(-) create mode 100644 input/fsh/SGBusinessProcess.fsh create mode 100644 input/fsh/SGCodeSystem.fsh rename input/fsh/{SMARTImplementationGuide.fsh => SGImplementationGuide.fsh} (63%) rename input/fsh/{SMARTLogicalModel.fsh => SGLogicalModel.fsh} (100%) create mode 100644 input/fsh/SGPersona.fsh create mode 100644 input/fsh/SGValueSet.fsh delete mode 100644 input/fsh/SMARTBusinessProcess.fsh delete mode 100644 input/fsh/SMARTCodeSystem.fsh delete mode 100644 input/fsh/SMARTValueSet.fsh diff --git a/input/fsh/SGBusinessProcess.fsh b/input/fsh/SGBusinessProcess.fsh new file mode 100644 index 00000000..cdcb5fe5 --- /dev/null +++ b/input/fsh/SGBusinessProcess.fsh @@ -0,0 +1,2 @@ +Profile: SGBusinessProcess +Parent: PlanDefinition diff --git a/input/fsh/SGCodeSystem.fsh b/input/fsh/SGCodeSystem.fsh new file mode 100644 index 00000000..4d45aa68 --- /dev/null +++ b/input/fsh/SGCodeSystem.fsh @@ -0,0 +1,3 @@ +Profile: SGCodeSystem +Parent: CodeSystem + diff --git a/input/fsh/SMARTImplementationGuide.fsh b/input/fsh/SGImplementationGuide.fsh similarity index 63% rename from input/fsh/SMARTImplementationGuide.fsh rename to input/fsh/SGImplementationGuide.fsh index ce929575..bdc6ba79 100644 --- a/input/fsh/SMARTImplementationGuide.fsh +++ b/input/fsh/SGImplementationGuide.fsh @@ -1,4 +1,4 @@ -Profile: SMARTImplementationGuide +Profile: SGImplementationGuide Parent: ImplementationGuide * license = #CC-BY-SA-3.0-IGO \ No newline at end of file diff --git a/input/fsh/SMARTLogicalModel.fsh b/input/fsh/SGLogicalModel.fsh similarity index 100% rename from input/fsh/SMARTLogicalModel.fsh rename to input/fsh/SGLogicalModel.fsh diff --git a/input/fsh/SGPersona.fsh b/input/fsh/SGPersona.fsh new file mode 100644 index 00000000..49738472 --- /dev/null +++ b/input/fsh/SGPersona.fsh @@ -0,0 +1,3 @@ +Profile: SGPersona +Parent: ActorDefinition + diff --git a/input/fsh/SGValueSet.fsh b/input/fsh/SGValueSet.fsh new file mode 100644 index 00000000..432b7578 --- /dev/null +++ b/input/fsh/SGValueSet.fsh @@ -0,0 +1,3 @@ +Profile: SGValueSet +Parent: ValueSet + diff --git a/input/fsh/SMARTBusinessProcess.fsh b/input/fsh/SMARTBusinessProcess.fsh deleted file mode 100644 index 6468745a..00000000 --- a/input/fsh/SMARTBusinessProcess.fsh +++ /dev/null @@ -1,2 +0,0 @@ -Profile: SMARTBusinessProcess -Parent: PlanDefinition diff --git a/input/fsh/SMARTCodeSystem.fsh b/input/fsh/SMARTCodeSystem.fsh deleted file mode 100644 index e4b6ebc1..00000000 --- a/input/fsh/SMARTCodeSystem.fsh +++ /dev/null @@ -1,3 +0,0 @@ -Profile: SMARTCodeSystem -Parent: CodeSystem - diff --git a/input/fsh/SMARTValueSet.fsh b/input/fsh/SMARTValueSet.fsh deleted file mode 100644 index 87e8068d..00000000 --- a/input/fsh/SMARTValueSet.fsh +++ /dev/null @@ -1,3 +0,0 @@ -Profile: SMARTValueSet -Parent: ValueSet - diff --git a/sushi-config.yaml b/sushi-config.yaml index d70c1456..69d63900 100644 --- a/sushi-config.yaml +++ b/sushi-config.yaml @@ -1,11 +1,11 @@ id: who.fhir.smart-base -canonical: http://worldhealthorganization.github.io/smart -name: SMART -title: SMART Empty IG +canonical: http://worldhealthorganization.github.io/smart-base +name: SMARTBase +title: SMART Base description: An empty Implementation Guide to be used as a starting point for building SMART Guidelines Implementation Guides status: draft # draft | active | retired | unknown version: 0.1.0 -fhirVersion: 4.0.1 # https://www.hl7.org/fhir/valueset-FHIR-version.html +fhirVersion: 5.0.0 # https://www.hl7.org/fhir/valueset-FHIR-version.html copyrightYear: 2023+ releaseLabel: ci-build # ci-build | draft | qa-preview | ballot | trial-use | release | update | normative+trial-use # license: CC0-1.0 # https://www.hl7.org/fhir/valueset-spdx-license.html @@ -36,6 +36,11 @@ meta: profile: - SMARTImplementationGuide +dependencies: + hl7.fhir.uv.crmi: 1.0.0-ballot + who.fhir.smart-base: current + + # ╭───────────────────────────Less Common Implementation Guide Properties──────────────────────────╮ # │ Uncomment the properties below to configure additional properties on the ImplementationGuide │ # │ resource. These properties are less commonly needed than those above. │ From 27972cae8611b53749b25e28040cc73115f0d5dc Mon Sep 17 00:00:00 2001 From: Jose Costa Teixeira Date: Fri, 8 Sep 2023 22:28:48 +0200 Subject: [PATCH 04/36] update --- input/fsh/SGPersona.fsh | 7 +++++++ sushi-config.yaml | 2 +- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/input/fsh/SGPersona.fsh b/input/fsh/SGPersona.fsh index 49738472..7c04c36f 100644 --- a/input/fsh/SGPersona.fsh +++ b/input/fsh/SGPersona.fsh @@ -1,3 +1,10 @@ Profile: SGPersona Parent: ActorDefinition +* identifier 1..* +* status MS +* name 1..1 +* title 1..1 +* type = #person +* experimental 1..1 +* description 1..1 diff --git a/sushi-config.yaml b/sushi-config.yaml index 69d63900..23f298a5 100644 --- a/sushi-config.yaml +++ b/sushi-config.yaml @@ -37,8 +37,8 @@ meta: - SMARTImplementationGuide dependencies: - hl7.fhir.uv.crmi: 1.0.0-ballot who.fhir.smart-base: current + hl7.fhir.uv.crmi: 1.0.0-ballot # ╭───────────────────────────Less Common Implementation Guide Properties──────────────────────────╮ From 5aeb397923ae3a195ff93838675e6b0936135621 Mon Sep 17 00:00:00 2001 From: Jose Costa Teixeira Date: Sat, 9 Sep 2023 19:25:01 +0200 Subject: [PATCH 05/36] start adding conformance slices to IGs --- input/fsh/SGImplementationGuide.fsh | 22 +++++++++++++++++++++- 1 file changed, 21 insertions(+), 1 deletion(-) diff --git a/input/fsh/SGImplementationGuide.fsh b/input/fsh/SGImplementationGuide.fsh index bdc6ba79..18859d0d 100644 --- a/input/fsh/SGImplementationGuide.fsh +++ b/input/fsh/SGImplementationGuide.fsh @@ -1,4 +1,24 @@ Profile: SGImplementationGuide Parent: ImplementationGuide -* license = #CC-BY-SA-3.0-IGO \ No newline at end of file +* license = #CC-BY-SA-3.0-IGO + + + + + +// Define the slicing on the resource.type +* definition.resource + * ^slicing.discriminator.type = #pattern + * ^slicing.discriminator.path = "reference.resolve()" + * ^slicing.rules = #open + + +* definition.resource contains + LogicalModel 0..* +// Profile 0..* + +* definition.resource[LogicalModel].reference only Reference(SGLogicalModel) +//* definition.resource[Ppofile].reference only Reference(SGProfile) + + From 3b2e147dfb0945607d18470ec5fd31a0ace3c75d Mon Sep 17 00:00:00 2001 From: Jose Costa Teixeira Date: Sat, 9 Sep 2023 19:25:21 +0200 Subject: [PATCH 06/36] remove self-dependency --- sushi-config.yaml | 1 - 1 file changed, 1 deletion(-) diff --git a/sushi-config.yaml b/sushi-config.yaml index 23f298a5..a2299407 100644 --- a/sushi-config.yaml +++ b/sushi-config.yaml @@ -37,7 +37,6 @@ meta: - SMARTImplementationGuide dependencies: - who.fhir.smart-base: current hl7.fhir.uv.crmi: 1.0.0-ballot From 81494626c3fd9d15e1368e2557d9a4427814f13a Mon Sep 17 00:00:00 2001 From: Jose Costa Teixeira Date: Thu, 14 Sep 2023 04:45:03 +0100 Subject: [PATCH 07/36] Update ghbuild.yml --- .github/workflows/ghbuild.yml | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/.github/workflows/ghbuild.yml b/.github/workflows/ghbuild.yml index 18c03630..33e48c23 100644 --- a/.github/workflows/ghbuild.yml +++ b/.github/workflows/ghbuild.yml @@ -61,11 +61,19 @@ jobs: # Get the latest publisher - don't run the batch script but run the line directly args: curl -L https://github.com/HL7/fhir-ig-publisher/releases/latest/download/publisher.jar -o ./input-cache/publisher.jar --create-dirs + + - name: Create package cache folder + uses: docker://hl7fhir/ig-publisher-base:latest + with: + entrypoint: /bin/sh + args: -c "mkdir -p ./fhir-package-cache && chown 1001:127 ./fhir-package-cache" + + - name: Run the IG publisher uses: docker://hl7fhir/ig-publisher-base:latest with: # Run the publisher - don't run the batch script but run the line directly - args: java -Xmx4g -jar ./input-cache/publisher.jar publisher -ig . -auto-ig-build -repo https://github.com/${{github.repository}} + args: java -Xmx4g -jar ./input-cache/publisher.jar publisher -ig . -auto-ig-build -repo https://github.com/${{github.repository}} -package-cache-folder ./fhir-package-cache - name: Get branch names id: branch-name From c9d8ffcf1b87cbada4e7e4f3932a72b03684f87a Mon Sep 17 00:00:00 2001 From: Jose Costa Teixeira Date: Mon, 18 Sep 2023 07:22:58 +0200 Subject: [PATCH 08/36] add SGMeasure profile --- input/fsh/SGMeasure.fsh | 8 ++++++++ input/fsh/examples.fshold | 34 ++++++++++++++++++++++++++++++++++ 2 files changed, 42 insertions(+) create mode 100644 input/fsh/SGMeasure.fsh create mode 100644 input/fsh/examples.fshold diff --git a/input/fsh/SGMeasure.fsh b/input/fsh/SGMeasure.fsh new file mode 100644 index 00000000..aa4cc0f5 --- /dev/null +++ b/input/fsh/SGMeasure.fsh @@ -0,0 +1,8 @@ +Profile: SGMeasure +Parent: Measure + +* title 1..1 +* version 1..1 +* name 1..1 +* publisher 1..1 +* description 1..1 diff --git a/input/fsh/examples.fshold b/input/fsh/examples.fshold new file mode 100644 index 00000000..ffb695d4 --- /dev/null +++ b/input/fsh/examples.fshold @@ -0,0 +1,34 @@ +Instance: HealthWorker +InstanceOf: SGPersona +* status = #draft +* identifier.value = "HW" +* name = "HealthcareWorker" +* title = "Healthcare Worker" +* type = #person +* experimental = false +* description = "Health workers facilitate education sessions, administers immunizations, provide counselling when needed, record stock movements, and compiles/generates reports." + + + +Instance: CommunityHealthWorker +InstanceOf: SGPersona +* status = #draft +* identifier.value = "CommunityHealthWorker" +* name = "Community Health Worker" +* title = "Community Health Worker" +* type = #person +* experimental = false +* description = "Community health workers provide health education, referral and follow-up; case management and basic preventive health care; and home visiting services to specific communities. They provide support and assistance to clients by reminding clients to take their vaccinations, responding to emergencies, and reporting births." + + + +Instance: EPIManager +InstanceOf: SGPersona +* status = #draft +* identifier.value = "EPIM" +* name = "Expanded Programme on Immunization (EPI) Manager" +* title = "Healthcare Worker" +* type = #person +* experimental = false +* description = "Responsible for: developing annual and multi-annual plans; immunization communication and mobilization; management of logistics, the cold chain, and vaccines; monitoring, supervision and evaluation of immunization services; and coordination of EPI activities at the national and subnational levels." + From 186902b5044c947508cc59e641bf8d32b94b9000 Mon Sep 17 00:00:00 2001 From: Jose Costa Teixeira Date: Tue, 3 Oct 2023 13:08:10 +0200 Subject: [PATCH 09/36] Update SGImplementationGuide.fsh --- input/fsh/SGImplementationGuide.fsh | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/input/fsh/SGImplementationGuide.fsh b/input/fsh/SGImplementationGuide.fsh index 18859d0d..0ddeec2b 100644 --- a/input/fsh/SGImplementationGuide.fsh +++ b/input/fsh/SGImplementationGuide.fsh @@ -7,7 +7,7 @@ Parent: ImplementationGuide -// Define the slicing on the resource.type +// Define the slicing * definition.resource * ^slicing.discriminator.type = #pattern * ^slicing.discriminator.path = "reference.resolve()" @@ -18,6 +18,7 @@ Parent: ImplementationGuide LogicalModel 0..* // Profile 0..* +* definition.resource[LogicalModel].reference.type = #StructureDefinition * definition.resource[LogicalModel].reference only Reference(SGLogicalModel) //* definition.resource[Ppofile].reference only Reference(SGProfile) From 269e8eae789b37e53a4145e4b43a4f45818cc769 Mon Sep 17 00:00:00 2001 From: Jose Costa Teixeira Date: Tue, 3 Oct 2023 13:55:17 +0200 Subject: [PATCH 10/36] update urls --- input/fsh/SGImplementationGuide.fsh | 12 ++++-------- sushi-config.yaml | 4 ++-- 2 files changed, 6 insertions(+), 10 deletions(-) diff --git a/input/fsh/SGImplementationGuide.fsh b/input/fsh/SGImplementationGuide.fsh index 0ddeec2b..260f0f2c 100644 --- a/input/fsh/SGImplementationGuide.fsh +++ b/input/fsh/SGImplementationGuide.fsh @@ -6,20 +6,16 @@ Parent: ImplementationGuide - -// Define the slicing * definition.resource - * ^slicing.discriminator.type = #pattern + * ^slicing.discriminator.type = #profile * ^slicing.discriminator.path = "reference.resolve()" * ^slicing.rules = #open - * definition.resource contains - LogicalModel 0..* -// Profile 0..* + LogicalModel 0..* and + Extension 0..* and + Profile 0..* * definition.resource[LogicalModel].reference.type = #StructureDefinition * definition.resource[LogicalModel].reference only Reference(SGLogicalModel) -//* definition.resource[Ppofile].reference only Reference(SGProfile) - diff --git a/sushi-config.yaml b/sushi-config.yaml index a2299407..38093bb5 100644 --- a/sushi-config.yaml +++ b/sushi-config.yaml @@ -1,5 +1,5 @@ id: who.fhir.smart-base -canonical: http://worldhealthorganization.github.io/smart-base +canonical: http://smart.who.int/ig/smart-base name: SMARTBase title: SMART Base description: An empty Implementation Guide to be used as a starting point for building SMART Guidelines Implementation Guides @@ -34,7 +34,7 @@ menu: meta: profile: - - SMARTImplementationGuide + - http://smart.who.int/ig/smart-base/ImplementationGuide-SMARTImplementationGuide dependencies: hl7.fhir.uv.crmi: 1.0.0-ballot From b27321dfe58ab926702fff78c700cba54b38e248 Mon Sep 17 00:00:00 2001 From: Jose Costa Teixeira Date: Wed, 4 Oct 2023 11:38:02 +0200 Subject: [PATCH 11/36] Update sushi-config.yaml --- sushi-config.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sushi-config.yaml b/sushi-config.yaml index 38093bb5..47a07d9e 100644 --- a/sushi-config.yaml +++ b/sushi-config.yaml @@ -37,7 +37,7 @@ meta: - http://smart.who.int/ig/smart-base/ImplementationGuide-SMARTImplementationGuide dependencies: - hl7.fhir.uv.crmi: 1.0.0-ballot + hl7.fhir.uv.crmi: dev # ╭───────────────────────────Less Common Implementation Guide Properties──────────────────────────╮ From 13d7a2b9518b18a9b8c6f9e131e6897eecb13c3c Mon Sep 17 00:00:00 2001 From: Jose Costa Teixeira Date: Sat, 7 Oct 2023 09:36:41 +0200 Subject: [PATCH 12/36] update canonicals --- sushi-config.yaml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/sushi-config.yaml b/sushi-config.yaml index 47a07d9e..5860bb01 100644 --- a/sushi-config.yaml +++ b/sushi-config.yaml @@ -34,7 +34,8 @@ menu: meta: profile: - - http://smart.who.int/ig/smart-base/ImplementationGuide-SMARTImplementationGuide + - SGImplementationGuide +# - http://smart.who.int/ig/smart-base/ImplementationGuide-SMARTImplementationGuide dependencies: hl7.fhir.uv.crmi: dev From e288e8a639ebd7711c232daee6a5883954d2a1f4 Mon Sep 17 00:00:00 2001 From: Jose Costa Teixeira Date: Fri, 13 Oct 2023 17:18:28 +0200 Subject: [PATCH 13/36] revert to R4 for package cleanup --- input/fsh/examples.fshold | 34 ------------------- input/{fsh => fsh5}/Aliases.fsh | 0 .../SGBusinessProcess.fsh5} | 0 input/{fsh => fsh5}/SGCodeSystem.fsh | 0 input/{fsh => fsh5}/SGImplementationGuide.fsh | 0 input/{fsh => fsh5}/SGLogicalModel.fsh | 0 input/{fsh => fsh5}/SGMeasure.fsh | 0 .../SGPersona.fsh => fsh5/SGPersona.fsh5} | 0 input/{fsh => fsh5}/SGValueSet.fsh | 0 sushi-config.yaml | 2 +- 10 files changed, 1 insertion(+), 35 deletions(-) delete mode 100644 input/fsh/examples.fshold rename input/{fsh => fsh5}/Aliases.fsh (100%) rename input/{fsh/SGBusinessProcess.fsh => fsh5/SGBusinessProcess.fsh5} (100%) rename input/{fsh => fsh5}/SGCodeSystem.fsh (100%) rename input/{fsh => fsh5}/SGImplementationGuide.fsh (100%) rename input/{fsh => fsh5}/SGLogicalModel.fsh (100%) rename input/{fsh => fsh5}/SGMeasure.fsh (100%) rename input/{fsh/SGPersona.fsh => fsh5/SGPersona.fsh5} (100%) rename input/{fsh => fsh5}/SGValueSet.fsh (100%) diff --git a/input/fsh/examples.fshold b/input/fsh/examples.fshold deleted file mode 100644 index ffb695d4..00000000 --- a/input/fsh/examples.fshold +++ /dev/null @@ -1,34 +0,0 @@ -Instance: HealthWorker -InstanceOf: SGPersona -* status = #draft -* identifier.value = "HW" -* name = "HealthcareWorker" -* title = "Healthcare Worker" -* type = #person -* experimental = false -* description = "Health workers facilitate education sessions, administers immunizations, provide counselling when needed, record stock movements, and compiles/generates reports." - - - -Instance: CommunityHealthWorker -InstanceOf: SGPersona -* status = #draft -* identifier.value = "CommunityHealthWorker" -* name = "Community Health Worker" -* title = "Community Health Worker" -* type = #person -* experimental = false -* description = "Community health workers provide health education, referral and follow-up; case management and basic preventive health care; and home visiting services to specific communities. They provide support and assistance to clients by reminding clients to take their vaccinations, responding to emergencies, and reporting births." - - - -Instance: EPIManager -InstanceOf: SGPersona -* status = #draft -* identifier.value = "EPIM" -* name = "Expanded Programme on Immunization (EPI) Manager" -* title = "Healthcare Worker" -* type = #person -* experimental = false -* description = "Responsible for: developing annual and multi-annual plans; immunization communication and mobilization; management of logistics, the cold chain, and vaccines; monitoring, supervision and evaluation of immunization services; and coordination of EPI activities at the national and subnational levels." - diff --git a/input/fsh/Aliases.fsh b/input/fsh5/Aliases.fsh similarity index 100% rename from input/fsh/Aliases.fsh rename to input/fsh5/Aliases.fsh diff --git a/input/fsh/SGBusinessProcess.fsh b/input/fsh5/SGBusinessProcess.fsh5 similarity index 100% rename from input/fsh/SGBusinessProcess.fsh rename to input/fsh5/SGBusinessProcess.fsh5 diff --git a/input/fsh/SGCodeSystem.fsh b/input/fsh5/SGCodeSystem.fsh similarity index 100% rename from input/fsh/SGCodeSystem.fsh rename to input/fsh5/SGCodeSystem.fsh diff --git a/input/fsh/SGImplementationGuide.fsh b/input/fsh5/SGImplementationGuide.fsh similarity index 100% rename from input/fsh/SGImplementationGuide.fsh rename to input/fsh5/SGImplementationGuide.fsh diff --git a/input/fsh/SGLogicalModel.fsh b/input/fsh5/SGLogicalModel.fsh similarity index 100% rename from input/fsh/SGLogicalModel.fsh rename to input/fsh5/SGLogicalModel.fsh diff --git a/input/fsh/SGMeasure.fsh b/input/fsh5/SGMeasure.fsh similarity index 100% rename from input/fsh/SGMeasure.fsh rename to input/fsh5/SGMeasure.fsh diff --git a/input/fsh/SGPersona.fsh b/input/fsh5/SGPersona.fsh5 similarity index 100% rename from input/fsh/SGPersona.fsh rename to input/fsh5/SGPersona.fsh5 diff --git a/input/fsh/SGValueSet.fsh b/input/fsh5/SGValueSet.fsh similarity index 100% rename from input/fsh/SGValueSet.fsh rename to input/fsh5/SGValueSet.fsh diff --git a/sushi-config.yaml b/sushi-config.yaml index 5860bb01..26e17f8d 100644 --- a/sushi-config.yaml +++ b/sushi-config.yaml @@ -5,7 +5,7 @@ title: SMART Base description: An empty Implementation Guide to be used as a starting point for building SMART Guidelines Implementation Guides status: draft # draft | active | retired | unknown version: 0.1.0 -fhirVersion: 5.0.0 # https://www.hl7.org/fhir/valueset-FHIR-version.html +fhirVersion: 4.0.1 # https://www.hl7.org/fhir/valueset-FHIR-version.html copyrightYear: 2023+ releaseLabel: ci-build # ci-build | draft | qa-preview | ballot | trial-use | release | update | normative+trial-use # license: CC0-1.0 # https://www.hl7.org/fhir/valueset-spdx-license.html From b54c6afce48a572dee822a4486f8390cbf50574d Mon Sep 17 00:00:00 2001 From: Jose Costa Teixeira Date: Fri, 13 Oct 2023 17:32:11 +0200 Subject: [PATCH 14/36] Update sushi-config.yaml --- sushi-config.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/sushi-config.yaml b/sushi-config.yaml index 26e17f8d..14b25c22 100644 --- a/sushi-config.yaml +++ b/sushi-config.yaml @@ -170,3 +170,4 @@ dependencies: # if InstanceOf references a profile: # # setId: always # always | standalone-only + From 1d3c3ec51486751fe51de6f94e3cbdeb92a810ae Mon Sep 17 00:00:00 2001 From: Jose Costa Teixeira Date: Fri, 13 Oct 2023 17:40:00 +0200 Subject: [PATCH 15/36] add back fsh folder --- input/{fsh5 => fsh}/Aliases.fsh | 0 input/{fsh5 => fsh}/SGBusinessProcess.fsh5 | 0 input/{fsh5 => fsh}/SGCodeSystem.fsh | 0 input/{fsh5 => fsh}/SGImplementationGuide.fsh | 0 input/{fsh5 => fsh}/SGLogicalModel.fsh | 0 input/{fsh5 => fsh}/SGMeasure.fsh | 0 input/{fsh5 => fsh}/SGPersona.fsh5 | 0 input/{fsh5 => fsh}/SGValueSet.fsh | 0 8 files changed, 0 insertions(+), 0 deletions(-) rename input/{fsh5 => fsh}/Aliases.fsh (100%) rename input/{fsh5 => fsh}/SGBusinessProcess.fsh5 (100%) rename input/{fsh5 => fsh}/SGCodeSystem.fsh (100%) rename input/{fsh5 => fsh}/SGImplementationGuide.fsh (100%) rename input/{fsh5 => fsh}/SGLogicalModel.fsh (100%) rename input/{fsh5 => fsh}/SGMeasure.fsh (100%) rename input/{fsh5 => fsh}/SGPersona.fsh5 (100%) rename input/{fsh5 => fsh}/SGValueSet.fsh (100%) diff --git a/input/fsh5/Aliases.fsh b/input/fsh/Aliases.fsh similarity index 100% rename from input/fsh5/Aliases.fsh rename to input/fsh/Aliases.fsh diff --git a/input/fsh5/SGBusinessProcess.fsh5 b/input/fsh/SGBusinessProcess.fsh5 similarity index 100% rename from input/fsh5/SGBusinessProcess.fsh5 rename to input/fsh/SGBusinessProcess.fsh5 diff --git a/input/fsh5/SGCodeSystem.fsh b/input/fsh/SGCodeSystem.fsh similarity index 100% rename from input/fsh5/SGCodeSystem.fsh rename to input/fsh/SGCodeSystem.fsh diff --git a/input/fsh5/SGImplementationGuide.fsh b/input/fsh/SGImplementationGuide.fsh similarity index 100% rename from input/fsh5/SGImplementationGuide.fsh rename to input/fsh/SGImplementationGuide.fsh diff --git a/input/fsh5/SGLogicalModel.fsh b/input/fsh/SGLogicalModel.fsh similarity index 100% rename from input/fsh5/SGLogicalModel.fsh rename to input/fsh/SGLogicalModel.fsh diff --git a/input/fsh5/SGMeasure.fsh b/input/fsh/SGMeasure.fsh similarity index 100% rename from input/fsh5/SGMeasure.fsh rename to input/fsh/SGMeasure.fsh diff --git a/input/fsh5/SGPersona.fsh5 b/input/fsh/SGPersona.fsh5 similarity index 100% rename from input/fsh5/SGPersona.fsh5 rename to input/fsh/SGPersona.fsh5 diff --git a/input/fsh5/SGValueSet.fsh b/input/fsh/SGValueSet.fsh similarity index 100% rename from input/fsh5/SGValueSet.fsh rename to input/fsh/SGValueSet.fsh From fe5ce627941d0f4f01c9d6cf05067490419e143e Mon Sep 17 00:00:00 2001 From: Jose Costa Teixeira Date: Thu, 2 Nov 2023 21:18:37 +0100 Subject: [PATCH 16/36] Create readme.md --- .github/workflows/readme.md | 70 +++++++++++++++++++++++++++++++++++++ 1 file changed, 70 insertions(+) create mode 100644 .github/workflows/readme.md diff --git a/.github/workflows/readme.md b/.github/workflows/readme.md new file mode 100644 index 00000000..5ed1fb79 --- /dev/null +++ b/.github/workflows/readme.md @@ -0,0 +1,70 @@ +# ImplementationGuide Publisher GitHub Action + +This GitHub Action facilitates the automatic building and publishing of FHIR Implementation Guides using the HL7 FHIR IG Publisher. It is designed to run the publisher on push or pull request events and publish the output to GitHub Pages. + +## Features + +- Automatic handling of branch names for publishing. +- Supports the automatic creation of the `gh-pages` branch if it doesn't exist +- Deploys the generated IG to GitHub Pages, with support for deploying main and feature branches to different paths. + +## Prerequisites + +Before you can use this GitHub Action, you need to ensure the following: + +- Your repository should have a branch called `gh-pages`. +- You have configured GitHub Pages to serve from the `gh-pages` branch. +- Your FHIR IG source files are properly set up in your repository. + +## Setup + +1. **Configure GitHub Pages** + + Make sure that GitHub Pages is enabled for your repository and is set to deploy from the `gh-pages` branch. + +2. **Add the Workflow File** + + Create a `.github/workflows` directory in your repository if it doesn't already exist, and add this ro that file: +```yaml +jobs: + call_build: + uses: WorldHealthOrganization/smart-base/.github/workflows/ghbuild.yml@main +``` + +3. **GitHub Token** + + This action uses the `GITHUB_TOKEN` provided by GitHub Actions, so you don't need to manually create one. + +## Usage + +The action is configured to run on push or pull requests to any branch except the `gh-pages` branch. It can also be triggered manually via the GitHub Actions tab. + +### Workflow Triggers + +- **Push to `main` branch**: When commits are pushed to the `main` branch, the IG Publisher is run, and the output is published to the root of the GitHub Pages site. +- **Push to other branches**: When commits are pushed to branches other than `main`, the output is published to a subdirectory named after the branch - branches/ +- **Pull Request**: The action will run to ensure that the IG Publisher can build the IG from the pull request, but will not deploy to GitHub Pages. +- **Manual Trigger**: You can manually trigger the workflow from the GitHub Actions tab if needed. + +### What the Workflow Does + +Here is a step-by-step description of the workflow: + +1. **Checkout**: Checks out the repository code. +2. **Get the latest image of the IG publisher**: Downloads the latest `publisher.jar` from the official FHIR IG Publisher repository. +4. **Create package cache folder**: Creates a cache folder for the packages needed by the publisher. +5. **Run the IG publisher**: Executes the IG Publisher to generate the IG site files. +6. **Deploy to GitHub Pages**: Depending on the branch, deploys the output to the `gh-pages` branch of your repository. + +### Notes + +- The action is currently set up to keep a history of deployments for branches other than `main`. This can be changed by adjusting the `single-commit` and `clean` options in the workflow file. +- Make sure to keep the FHIR IG source files updated in your repository to avoid build failures. + +## Contributing + +Contributions to this GitHub Action are welcome. Please feel free to submit issues or pull requests with improvements. + +## License + +This project is licensed under the [MIT License](LICENSE). Feel free to use it and contribute. From 7a968c9d46ad3fffb8cf60d21b617e0839a69854 Mon Sep 17 00:00:00 2001 From: Carl Leitner Date: Wed, 8 Nov 2023 09:22:18 +0700 Subject: [PATCH 17/36] added local template --- local-template/package/.index.db | Bin 0 -> 12288 bytes local-template/package/.index.json | 4 ++ local-template/package/includes/.index.db | Bin 0 -> 12288 bytes local-template/package/includes/.index.json | 4 ++ .../package/includes/fragment-actors.liquid | 51 ++++++++++++++++++ .../fragment-functionalrequirements.liquid | 51 ++++++++++++++++++ local-template/package/package.json | 12 +++++ 7 files changed, 122 insertions(+) create mode 100644 local-template/package/.index.db create mode 100644 local-template/package/.index.json create mode 100644 local-template/package/includes/.index.db create mode 100644 local-template/package/includes/.index.json create mode 100644 local-template/package/includes/fragment-actors.liquid create mode 100644 local-template/package/includes/fragment-functionalrequirements.liquid create mode 100644 local-template/package/package.json diff --git a/local-template/package/.index.db b/local-template/package/.index.db new file mode 100644 index 0000000000000000000000000000000000000000..acb32ab9ffa9a2091936371812233345125df4a1 GIT binary patch literal 12288 zcmeI#(M!TW90%|_3kzZDo3HmGC`1uKy=FE+Tvl@mKFMVl4d!OIo78jA-_%?GR*&t} zqcIYndXewJHh+BYckDj%*DWgr?VCdYPf?eN&`QU2hwd z9EYD)<(m}BMN%$SzP2?WhX4d1009U<00Izz00bZaf&UbEKc@$^dYyipDE<%#SHw{w zr^4}LmHl04yLQX7nb*2K-KXc_3yYRI#3t?`}t- zO0!MfBOWATAWWX`z82D7aAjUTAK$s%o0dCfJ$uX=M!MO&C=_eGIwk48#B2N#q-XgF zPgJz5Cx%;p$H{57(&zd^{g1Nrt*UPr5P$##AOHafKmY;|fB*y_009W>sz6C^4Cnt{ c{k+&01Rwwb2tWV=5P$##AOHafKwv5G1Ay3_8~^|S literal 0 HcmV?d00001 diff --git a/local-template/package/.index.json b/local-template/package/.index.json new file mode 100644 index 00000000..dbe759e5 --- /dev/null +++ b/local-template/package/.index.json @@ -0,0 +1,4 @@ +{ + "index-version" : 2, + "files" : [] +} diff --git a/local-template/package/includes/.index.db b/local-template/package/includes/.index.db new file mode 100644 index 0000000000000000000000000000000000000000..acb32ab9ffa9a2091936371812233345125df4a1 GIT binary patch literal 12288 zcmeI#(M!TW90%|_3kzZDo3HmGC`1uKy=FE+Tvl@mKFMVl4d!OIo78jA-_%?GR*&t} zqcIYndXewJHh+BYckDj%*DWgr?VCdYPf?eN&`QU2hwd z9EYD)<(m}BMN%$SzP2?WhX4d1009U<00Izz00bZaf&UbEKc@$^dYyipDE<%#SHw{w zr^4}LmHl04yLQX7nb*2K-KXc_3yYRI#3t?`}t- zO0!MfBOWATAWWX`z82D7aAjUTAK$s%o0dCfJ$uX=M!MO&C=_eGIwk48#B2N#q-XgF zPgJz5Cx%;p$H{57(&zd^{g1Nrt*UPr5P$##AOHafKmY;|fB*y_009W>sz6C^4Cnt{ c{k+&01Rwwb2tWV=5P$##AOHafKwv5G1Ay3_8~^|S literal 0 HcmV?d00001 diff --git a/local-template/package/includes/.index.json b/local-template/package/includes/.index.json new file mode 100644 index 00000000..dbe759e5 --- /dev/null +++ b/local-template/package/includes/.index.json @@ -0,0 +1,4 @@ +{ + "index-version" : 2, + "files" : [] +} diff --git a/local-template/package/includes/fragment-actors.liquid b/local-template/package/includes/fragment-actors.liquid new file mode 100644 index 00000000..02ef8658 --- /dev/null +++ b/local-template/package/includes/fragment-actors.liquid @@ -0,0 +1,51 @@ + + + + + + + + + + {% for data_file in site.data %} + {% assign filename = data_file[0] %} + {% assign entry = data_file[1] %} + + {% assign name = "" %} + {% assign title = "" %} + {% assign description = "" %} + {% assign link_path = filename | remove: ".json" | append: ".html" %} + + {% assign profile_includes_string = false %} + + {% for extension in entry.extension %} + {% if extension.url == "http://hl7.org/fhir/5.0/StructureDefinition/extension-ActorDefinition.name" %} + {% assign name = extension.valueString %} + {% elsif extension.url == "http://hl7.org/fhir/5.0/StructureDefinition/extension-ActorDefinition.title" %} + {% assign title = extension.valueString %} + {% elsif extension.url == "http://hl7.org/fhir/5.0/StructureDefinition/extension-ActorDefinition.description" %} + {% assign description = extension.valueMarkdown %} + {% endif %} + {% endfor %} + + {% if entry.meta and entry.meta.profile %} + {% for profile in entry.meta.profile %} + {% if profile == "http://worldhealthorganization.github.io/smart-base/StructureDefinition/SGPersona" %} + {% assign profile_includes_string = true %} + {% break %} + {% endif %} + {% endfor %} + {% endif %} + + + {% if entry.resourceType == "ActorDefinition" or profile_includes_string %} + + + + + + {% endif %} + + {% endfor %} + +
NameTitleDescription
{{ name }}{{ title }}{{ description }}
diff --git a/local-template/package/includes/fragment-functionalrequirements.liquid b/local-template/package/includes/fragment-functionalrequirements.liquid new file mode 100644 index 00000000..72bed11e --- /dev/null +++ b/local-template/package/includes/fragment-functionalrequirements.liquid @@ -0,0 +1,51 @@ +{% for data_file in site.data %} + {% assign content = data_file[1] %} + {% assign requirements_statement_found = false %} + {% assign requirements_extensions = nil %} + + + + {% if content.code.coding[0].code == "Requirements" %} + {% for ext in content.extension %} + {% if ext.url == "http://hl7.org/fhir/5.0/StructureDefinition/extension-Requirements.title" %} +

{{ext.valueString}}

+ {% endif %} +{% endfor %} + +
+ + + + + + + + + + {% for ext in content.extension %} + {% if ext.url == "http://hl7.org/fhir/5.0/StructureDefinition/extension-Requirements.statement" %} + + {% for statement in ext.extension %} + + + {% if statement.url == "http://hl7.org/fhir/5.0/StructureDefinition/extension-Requirements.statement.key" %} + + {% endif %} + + {% if statement.url == "http://hl7.org/fhir/5.0/StructureDefinition/extension-Requirements.statement.requirement" %} + + {% endif %} + + {% endfor %} + + {% endif %} +{% endfor %} + +
KeyRequirement
{{ statement.valueId }}{{ statement.valueMarkdown | markdownify}}
+
+
+ + + + {% endif %} +{% endfor %} diff --git a/local-template/package/package.json b/local-template/package/package.json new file mode 100644 index 00000000..65f1fd7d --- /dev/null +++ b/local-template/package/package.json @@ -0,0 +1,12 @@ +{ + "name": "who.fhir.smart-ig-empty-local", + "version": "0.0.1", + "type": "fhir.template", + "license": "CC0-1.0", + "description": "Local template extension for WHO SMART FHIR IG", + "author": "http://who.int", + "base": "who.fhir.template", + "dependencies": { + "who.fhir.template": "current" + } +} From c67f7292aebcdfa2dd1e5f42314107533dfa1db5 Mon Sep 17 00:00:00 2001 From: Carl Leitner Date: Wed, 8 Nov 2023 09:24:37 +0700 Subject: [PATCH 18/36] uncomment local templatE --- ig.ini | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ig.ini b/ig.ini index 446c901c..dc204c0c 100644 --- a/ig.ini +++ b/ig.ini @@ -1,5 +1,5 @@ [IG] ig = fsh-generated/resources/ImplementationGuide-who.fhir.smart-base.json -#template = #local-template +template = #local-template template = who.fhir.template#current From d877e6e10bf2516fac3e718ec0446e56c7deebc2 Mon Sep 17 00:00:00 2001 From: Carl Leitner Date: Wed, 8 Nov 2023 09:31:08 +0700 Subject: [PATCH 19/36] uncomment local-template --- ig.ini | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ig.ini b/ig.ini index dc204c0c..17dc78a3 100644 --- a/ig.ini +++ b/ig.ini @@ -2,4 +2,4 @@ ig = fsh-generated/resources/ImplementationGuide-who.fhir.smart-base.json template = #local-template -template = who.fhir.template#current +#template = who.fhir.template#current From cc71ea282c65bcd58749b11d4ac332b881d511c8 Mon Sep 17 00:00:00 2001 From: Jose Costa Teixeira Date: Wed, 8 Nov 2023 08:06:36 +0100 Subject: [PATCH 20/36] Update readme.md --- .github/workflows/readme.md | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/.github/workflows/readme.md b/.github/workflows/readme.md index 5ed1fb79..707cac40 100644 --- a/.github/workflows/readme.md +++ b/.github/workflows/readme.md @@ -1,12 +1,11 @@ # ImplementationGuide Publisher GitHub Action -This GitHub Action facilitates the automatic building and publishing of FHIR Implementation Guides using the HL7 FHIR IG Publisher. It is designed to run the publisher on push or pull request events and publish the output to GitHub Pages. +This GitHub Action automatically builds and publishes FHIR Implementation Guides using the HL7 FHIR IG Publisher. It is designed to run the publisher on push or pull request events and publish the output to GitHub Pages. ## Features -- Automatic handling of branch names for publishing. -- Supports the automatic creation of the `gh-pages` branch if it doesn't exist -- Deploys the generated IG to GitHub Pages, with support for deploying main and feature branches to different paths. +- Default branch is published in `https://.github.io/`. Branches are published in `https://.github.io//branches/` +- Automatically uses the latest versions of sushi and IG publisher ## Prerequisites @@ -14,6 +13,7 @@ Before you can use this GitHub Action, you need to ensure the following: - Your repository should have a branch called `gh-pages`. - You have configured GitHub Pages to serve from the `gh-pages` branch. +- Write permissions are granted for workflows - Your FHIR IG source files are properly set up in your repository. ## Setup @@ -24,13 +24,15 @@ Before you can use this GitHub Action, you need to ensure the following: 2. **Add the Workflow File** - Create a `.github/workflows` directory in your repository if it doesn't already exist, and add this ro that file: + Create a `.github/workflows` directory in your repository if it doesn't already exist, and call this workflow: ```yaml jobs: call_build: uses: WorldHealthOrganization/smart-base/.github/workflows/ghbuild.yml@main ``` +See [example](https://github.com/WorldHealthOrganization/smart-ig-starter-kit/blob/main/.github/workflows/ghbuild.yml). + 3. **GitHub Token** This action uses the `GITHUB_TOKEN` provided by GitHub Actions, so you don't need to manually create one. @@ -59,7 +61,7 @@ Here is a step-by-step description of the workflow: ### Notes - The action is currently set up to keep a history of deployments for branches other than `main`. This can be changed by adjusting the `single-commit` and `clean` options in the workflow file. -- Make sure to keep the FHIR IG source files updated in your repository to avoid build failures. + ## Contributing From b0724ec8182a0d6228c74340e6ea5298713bb497 Mon Sep 17 00:00:00 2001 From: Jose Costa Teixeira Date: Thu, 30 Nov 2023 14:30:53 +0100 Subject: [PATCH 21/36] Create update_readme.yml --- .github/workflows/update_readme.yml | 13 +++++++++++++ 1 file changed, 13 insertions(+) create mode 100644 .github/workflows/update_readme.yml diff --git a/.github/workflows/update_readme.yml b/.github/workflows/update_readme.yml new file mode 100644 index 00000000..ac0f72d1 --- /dev/null +++ b/.github/workflows/update_readme.yml @@ -0,0 +1,13 @@ +# This workflow uses a remote action to do some repository actions like updating the readme files + +name: CI + +# Controls when the action will run. +on: + # Triggers the workflow on push or pull request events for any main branch + push: + branches-ignore: + - 'gh-pages' + pull_request: + + workflow_dispatch: From 9a761b1c513dd6839d35e64895f810710793280e Mon Sep 17 00:00:00 2001 From: Jose Costa Teixeira Date: Thu, 30 Nov 2023 14:44:05 +0100 Subject: [PATCH 22/36] Update update_readme.yml --- .github/workflows/update_readme.yml | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/.github/workflows/update_readme.yml b/.github/workflows/update_readme.yml index ac0f72d1..f0063c5a 100644 --- a/.github/workflows/update_readme.yml +++ b/.github/workflows/update_readme.yml @@ -11,3 +11,10 @@ on: pull_request: workflow_dispatch: + +jobs: + do-nothing: + runs-on: ubuntu-latest + steps: + - name: Placeholder step + run: echo "This action does nothing yet" From aae90fd23efc430d0e9fa7c0fd82b23fd9e5365a Mon Sep 17 00:00:00 2001 From: Jose Costa Teixeira Date: Thu, 30 Nov 2023 14:49:04 +0100 Subject: [PATCH 23/36] Update update_readme.yml --- .github/workflows/update_readme.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/update_readme.yml b/.github/workflows/update_readme.yml index f0063c5a..ab319571 100644 --- a/.github/workflows/update_readme.yml +++ b/.github/workflows/update_readme.yml @@ -4,12 +4,13 @@ name: CI # Controls when the action will run. on: + workflow_call: # Reusable by other workflows # Triggers the workflow on push or pull request events for any main branch push: branches-ignore: - 'gh-pages' pull_request: - + workflow_dispatch: jobs: From cfef837b1a7c237892abac1beedcc42cf60536a1 Mon Sep 17 00:00:00 2001 From: Jose Costa Teixeira Date: Fri, 1 Dec 2023 18:12:49 +0100 Subject: [PATCH 24/36] Update update_readme.yml --- .github/workflows/update_readme.yml | 40 +++++++++++++++++++++++------ 1 file changed, 32 insertions(+), 8 deletions(-) diff --git a/.github/workflows/update_readme.yml b/.github/workflows/update_readme.yml index ab319571..70733599 100644 --- a/.github/workflows/update_readme.yml +++ b/.github/workflows/update_readme.yml @@ -1,21 +1,45 @@ -# This workflow uses a remote action to do some repository actions like updating the readme files - name: CI -# Controls when the action will run. on: workflow_call: # Reusable by other workflows - # Triggers the workflow on push or pull request events for any main branch push: branches-ignore: - 'gh-pages' pull_request: - workflow_dispatch: jobs: - do-nothing: + update-readme-badges: runs-on: ubuntu-latest steps: - - name: Placeholder step - run: echo "This action does nothing yet" + - name: Checkout repository + uses: actions/checkout@v2 + + - name: Download badges.md + run: | + curl -o badges.md https://raw.githubusercontent.com/WorldHealthOrganization/smart-ig-empty/main/badges.md + + - name: Replace placeholders in badges.md + run: | + sed -i "s/\${{REPOSITORY_OWNER}}/${{ github.repository_owner }}/" badges.md + sed -i "s/\${{REPOSITORY_SLUG}}/${{ github.event.repository.name }}/" badges.md + + - name: Replace include with content of badges + run: | + awk 'NR==FNR{new = new $0 ORS; next} //{f=0} !f{print} //{printf "%s",new; f=1}' badges.md README.md > README_NEW.md && mv README_NEW.md README.md + cat README.md + + - run: | + rm badges.md + + - name: Stage changed files + run: git add ./README.md + + - name: Deploy candidate + uses: JamesIves/github-pages-deploy-action@4.1.4 + with: + branch: ${{ github.ref_name }} # The branch the action should deploy to. + folder: . # The folder the action should deploy. + commit-message: Deploy branch + target-folder: . + clean: false From 3f8127429cc0198f23ff958a67ad23075816132c Mon Sep 17 00:00:00 2001 From: Jose Costa Teixeira Date: Fri, 1 Dec 2023 18:52:12 +0100 Subject: [PATCH 25/36] Update update_readme.yml --- .github/workflows/update_readme.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/update_readme.yml b/.github/workflows/update_readme.yml index 70733599..146b6a07 100644 --- a/.github/workflows/update_readme.yml +++ b/.github/workflows/update_readme.yml @@ -1,4 +1,4 @@ -name: CI +name: Update README on: workflow_call: # Reusable by other workflows From 547f9c2658ba8b8f6de1b51df075fd73f48853fb Mon Sep 17 00:00:00 2001 From: Jose Costa Teixeira Date: Fri, 1 Dec 2023 18:58:02 +0100 Subject: [PATCH 26/36] Update update_readme.yml --- .github/workflows/update_readme.yml | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/.github/workflows/update_readme.yml b/.github/workflows/update_readme.yml index 146b6a07..597e381c 100644 --- a/.github/workflows/update_readme.yml +++ b/.github/workflows/update_readme.yml @@ -11,6 +11,10 @@ on: jobs: update-readme-badges: runs-on: ubuntu-latest + env: + REPOSITORY_OWNER: ${{ github.repository_owner }} + REPOSITORY_NAME: ${{ github.event.repository.name }} + steps: - name: Checkout repository uses: actions/checkout@v2 @@ -21,8 +25,8 @@ jobs: - name: Replace placeholders in badges.md run: | - sed -i "s/\${{REPOSITORY_OWNER}}/${{ github.repository_owner }}/" badges.md - sed -i "s/\${{REPOSITORY_SLUG}}/${{ github.event.repository.name }}/" badges.md + sed -i "s/\${{REPOSITORY_OWNER}}/$REPOSITORY_OWNER/" badges.md + sed -i "s/\${{REPOSITORY_SLUG}}/$REPOSITORY_NAME/" badges.md - name: Replace include with content of badges run: | From e56e7ee3be99756d2ec8e4486fccbfd5f02bd951 Mon Sep 17 00:00:00 2001 From: Jose Costa Teixeira Date: Tue, 5 Dec 2023 15:02:17 +0100 Subject: [PATCH 27/36] Update update_readme.yml --- .github/workflows/update_readme.yml | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/.github/workflows/update_readme.yml b/.github/workflows/update_readme.yml index 597e381c..e242c98a 100644 --- a/.github/workflows/update_readme.yml +++ b/.github/workflows/update_readme.yml @@ -2,6 +2,13 @@ name: Update README on: workflow_call: # Reusable by other workflows + inputs: + repositoryOwner: + required: true + type: string + repositoryName: + required: true + type: string push: branches-ignore: - 'gh-pages' @@ -12,8 +19,8 @@ jobs: update-readme-badges: runs-on: ubuntu-latest env: - REPOSITORY_OWNER: ${{ github.repository_owner }} - REPOSITORY_NAME: ${{ github.event.repository.name }} + REPOSITORY_OWNER: ${{ inputs.repositoryOwner }} + REPOSITORY_NAME: ${{ inputs.repositoryName }} steps: - name: Checkout repository From 11ab40d5d26f2c2ac5b142729431525c1f039df1 Mon Sep 17 00:00:00 2001 From: Jose Costa Teixeira Date: Tue, 5 Dec 2023 15:09:46 +0100 Subject: [PATCH 28/36] Update update_readme.yml --- .github/workflows/update_readme.yml | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/.github/workflows/update_readme.yml b/.github/workflows/update_readme.yml index e242c98a..c5907142 100644 --- a/.github/workflows/update_readme.yml +++ b/.github/workflows/update_readme.yml @@ -30,6 +30,12 @@ jobs: run: | curl -o badges.md https://raw.githubusercontent.com/WorldHealthOrganization/smart-ig-empty/main/badges.md + - name: Debug Variables + run: | + echo "Repository Owner: $REPOSITORY_OWNER" + echo "Repository Name: $REPOSITORY_NAME" + + - name: Replace placeholders in badges.md run: | sed -i "s/\${{REPOSITORY_OWNER}}/$REPOSITORY_OWNER/" badges.md From 815a56794f195df994ed939277e5e3844a5637aa Mon Sep 17 00:00:00 2001 From: Jose Costa Teixeira Date: Tue, 5 Dec 2023 15:12:19 +0100 Subject: [PATCH 29/36] Update update_readme.yml --- .github/workflows/update_readme.yml | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/.github/workflows/update_readme.yml b/.github/workflows/update_readme.yml index c5907142..f16fc26d 100644 --- a/.github/workflows/update_readme.yml +++ b/.github/workflows/update_readme.yml @@ -36,15 +36,15 @@ jobs: echo "Repository Name: $REPOSITORY_NAME" - - name: Replace placeholders in badges.md - run: | - sed -i "s/\${{REPOSITORY_OWNER}}/$REPOSITORY_OWNER/" badges.md - sed -i "s/\${{REPOSITORY_SLUG}}/$REPOSITORY_NAME/" badges.md +# - name: Replace placeholders in badges.md +# run: | +# sed -i "s/\${{REPOSITORY_OWNER}}/$REPOSITORY_OWNER/" badges.md +# sed -i "s/\${{REPOSITORY_SLUG}}/$REPOSITORY_NAME/" badges.md - - name: Replace include with content of badges - run: | - awk 'NR==FNR{new = new $0 ORS; next} //{f=0} !f{print} //{printf "%s",new; f=1}' badges.md README.md > README_NEW.md && mv README_NEW.md README.md - cat README.md +# - name: Replace include with content of badges +# run: | +# awk 'NR==FNR{new = new $0 ORS; next} //{f=0} !f{print} //{printf "%s",new; f=1}' badges.md README.md > README_NEW.md && mv README_NEW.md README.md +# cat README.md - run: | rm badges.md From 0f0d3913d71276267257223fc13e1dd19947f2c0 Mon Sep 17 00:00:00 2001 From: Jose Costa Teixeira Date: Tue, 5 Dec 2023 15:14:10 +0100 Subject: [PATCH 30/36] debug workflow --- .github/workflows/update_readme.yml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/update_readme.yml b/.github/workflows/update_readme.yml index f16fc26d..3c67578e 100644 --- a/.github/workflows/update_readme.yml +++ b/.github/workflows/update_readme.yml @@ -36,10 +36,10 @@ jobs: echo "Repository Name: $REPOSITORY_NAME" -# - name: Replace placeholders in badges.md -# run: | -# sed -i "s/\${{REPOSITORY_OWNER}}/$REPOSITORY_OWNER/" badges.md -# sed -i "s/\${{REPOSITORY_SLUG}}/$REPOSITORY_NAME/" badges.md + - name: Replace placeholders in badges.md + run: | + sed -i "s/\${{REPOSITORY_OWNER}}/$REPOSITORY_OWNER/" badges.md + sed -i "s/\${{REPOSITORY_SLUG}}/$REPOSITORY_NAME/" badges.md # - name: Replace include with content of badges # run: | From 87467a472f38d1fecdb40b00020abda338255693 Mon Sep 17 00:00:00 2001 From: Jose Costa Teixeira Date: Tue, 5 Dec 2023 15:16:07 +0100 Subject: [PATCH 31/36] update wf --- .github/workflows/update_readme.yml | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/.github/workflows/update_readme.yml b/.github/workflows/update_readme.yml index 3c67578e..64342c1f 100644 --- a/.github/workflows/update_readme.yml +++ b/.github/workflows/update_readme.yml @@ -38,8 +38,9 @@ jobs: - name: Replace placeholders in badges.md run: | - sed -i "s/\${{REPOSITORY_OWNER}}/$REPOSITORY_OWNER/" badges.md - sed -i "s/\${{REPOSITORY_SLUG}}/$REPOSITORY_NAME/" badges.md + sed -i "s/\$\{\{REPOSITORY_OWNER\}\}/$REPOSITORY_OWNER/" badges.md + sed -i "s/\$\{\{REPOSITORY_SLUG\}\}/$REPOSITORY_NAME/" badges.md + # - name: Replace include with content of badges # run: | From 6300385382438dfb3bacc8bb0a84b56245940737 Mon Sep 17 00:00:00 2001 From: Jose Costa Teixeira Date: Tue, 5 Dec 2023 15:27:34 +0100 Subject: [PATCH 32/36] update --- .github/workflows/update_readme.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/update_readme.yml b/.github/workflows/update_readme.yml index 64342c1f..decd655f 100644 --- a/.github/workflows/update_readme.yml +++ b/.github/workflows/update_readme.yml @@ -38,8 +38,8 @@ jobs: - name: Replace placeholders in badges.md run: | - sed -i "s/\$\{\{REPOSITORY_OWNER\}\}/$REPOSITORY_OWNER/" badges.md - sed -i "s/\$\{\{REPOSITORY_SLUG\}\}/$REPOSITORY_NAME/" badges.md + sed -i "s//$REPOSITORY_OWNER/" badges.md + sed -i "s//$REPOSITORY_NAME/" badges.md # - name: Replace include with content of badges From fec28181b863acef3f1c5e0f093bc1e33eea44bb Mon Sep 17 00:00:00 2001 From: Jose Costa Teixeira Date: Tue, 5 Dec 2023 15:29:46 +0100 Subject: [PATCH 33/36] fix workflow --- .github/workflows/update_readme.yml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/update_readme.yml b/.github/workflows/update_readme.yml index decd655f..3d775bf1 100644 --- a/.github/workflows/update_readme.yml +++ b/.github/workflows/update_readme.yml @@ -42,10 +42,10 @@ jobs: sed -i "s//$REPOSITORY_NAME/" badges.md -# - name: Replace include with content of badges -# run: | -# awk 'NR==FNR{new = new $0 ORS; next} //{f=0} !f{print} //{printf "%s",new; f=1}' badges.md README.md > README_NEW.md && mv README_NEW.md README.md -# cat README.md + - name: Replace include with content of badges + run: | + awk 'NR==FNR{new = new $0 ORS; next} //{f=0} !f{print} //{printf "%s",new; f=1}' badges.md README.md > README_NEW.md && mv README_NEW.md README.md + cat README.md - run: | rm badges.md From c2ccb653bd36bd23cd1cfdd8c3a394cc78684f77 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 5 Dec 2023 23:30:39 +0000 Subject: [PATCH 34/36] Bump tj-actions/branch-names from 4.3 to 7.0.7 in /.github/workflows Bumps [tj-actions/branch-names](https://github.com/tj-actions/branch-names) from 4.3 to 7.0.7. - [Release notes](https://github.com/tj-actions/branch-names/releases) - [Changelog](https://github.com/tj-actions/branch-names/blob/main/HISTORY.md) - [Commits](https://github.com/tj-actions/branch-names/compare/v4.3...v7.0.7) --- updated-dependencies: - dependency-name: tj-actions/branch-names dependency-type: direct:production ... Signed-off-by: dependabot[bot] --- .github/workflows/ghbuild.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ghbuild.yml b/.github/workflows/ghbuild.yml index 33e48c23..aace5837 100644 --- a/.github/workflows/ghbuild.yml +++ b/.github/workflows/ghbuild.yml @@ -77,7 +77,7 @@ jobs: - name: Get branch names id: branch-name - uses: tj-actions/branch-names@v4.3 + uses: tj-actions/branch-names@v7.0.7 - name: Deploy candidate uses: JamesIves/github-pages-deploy-action@v4.4.2 From 80eea0cadcee88fe9ec8e8f6177aa36d65a9f09e Mon Sep 17 00:00:00 2001 From: Jose Costa Teixeira Date: Fri, 8 Dec 2023 14:03:04 +0100 Subject: [PATCH 35/36] fix canonical url --- sushi-config.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sushi-config.yaml b/sushi-config.yaml index 14b25c22..2dc3b44c 100644 --- a/sushi-config.yaml +++ b/sushi-config.yaml @@ -1,5 +1,5 @@ id: who.fhir.smart-base -canonical: http://smart.who.int/ig/smart-base +canonical: http://smart.who.int/smart-base name: SMARTBase title: SMART Base description: An empty Implementation Guide to be used as a starting point for building SMART Guidelines Implementation Guides From 823e8296eea68dbc290511775f39e90646c96c01 Mon Sep 17 00:00:00 2001 From: Carl Leitner Date: Thu, 14 Dec 2023 09:13:22 -0500 Subject: [PATCH 36/36] renaming IG according to policy --- ig.ini | 6 +++--- sushi-config.yaml | 6 +++--- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/ig.ini b/ig.ini index 17dc78a3..3e616a43 100644 --- a/ig.ini +++ b/ig.ini @@ -1,5 +1,5 @@ [IG] -ig = fsh-generated/resources/ImplementationGuide-who.fhir.smart-base.json +ig = fsh-generated/resources/ImplementationGuide-who.base.json -template = #local-template -#template = who.fhir.template#current +#template = #local-template +template = who.template#current diff --git a/sushi-config.yaml b/sushi-config.yaml index 2dc3b44c..0b04227b 100644 --- a/sushi-config.yaml +++ b/sushi-config.yaml @@ -1,5 +1,5 @@ -id: who.fhir.smart-base -canonical: http://smart.who.int/smart-base +id: who.base +canonical: http://smart.who.int/base name: SMARTBase title: SMART Base description: An empty Implementation Guide to be used as a starting point for building SMART Guidelines Implementation Guides @@ -35,7 +35,7 @@ menu: meta: profile: - SGImplementationGuide -# - http://smart.who.int/ig/smart-base/ImplementationGuide-SMARTImplementationGuide +# - http://smart.who.int/base/ImplementationGuide-SMARTImplementationGuide dependencies: hl7.fhir.uv.crmi: dev