Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Feature/docs updatemessageversion detailed v2 #18

Open
wants to merge 6 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
55 changes: 55 additions & 0 deletions docs/docs/UpdatingMessageVersion.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
# Oppdatere meldingsversjon
Ved nye meldingsversjoner skal `KppParser` oppdaters til å kunne ta i mot den nye meldingsversjonen.
Dette dokumentet inneholder en oppskrift for hvordan man oppdaterer KppParser med ny `meldingsversjonsnummer`.

Det er viktig å vite at `meldingsversjonsnummeret` er noe annet enn `KppParse` sitt versjonsnummer.

Mer informasjon om meldingsversjon finner du [her](https://www.fhi.no/he/npr/registrering-og-rapportering/informasjonsmodell-og-meldinger/).

## 1. Oppdatere XSD-filer
1.1. Oppdatere XSD-filer i Resources-mappen til Dhhr.KppParser.Service

Filstien til mappen:
```
.src\Dhhr.KppParser.Service\Resources
```
Filer som skal fjernes:
- NPR.xsd
- NPR(kpp).xsd
- NPR(kpp)_CodingSchemes.xsd

Filer som skal legges til, og som kan hentes fra [Sarepta](https://git.sarepta.ehelse.no/utvikling/xpr/-/tree/master?ref_type=heads) på `branch` med `riktig meldingsversjonsnummer`:
- NPR.xsd
- XPR(kpp).xsd
- XPR(kpp)_CodingSchemes.xsd

1.2. Endre filnavnet til `XPR(kpp).xsd` til `NPR(kpp).xsd`

1.3. Endre filnavnet til `XPR(kpp)_CodingSchemes.xsd` til `NPR(kpp)_CodingSchemes.xsd`

1.4. Sørg for at alle `schemaLocation`-attributter i de tre `NPR*.xsd-filene` refererer til `NPR`, ikke `XPR`

## 2. Maunell oppatering av meldingsversjonsnummeret i koden
2.1. Oppdatér `meldingsversjonsnummeret` angitt i `Namespace` for `XmlElement`-attributtet i
```
.\Dhhr.KppParser.Service\Models\RefDocContent.cs`
```
2.2 Oppdatere `meldingsversjonsnummeret` angitt i `versjon` og `lokalident` for `Melding`-attributtet i
```
.\Dhhr.KppParser.Service.Tests\Resources\Expectations\TestMelding.xml`
```
## 3. Skript for oppdatering av meldingsversjonsnummeret i koden
3.1. Kjør denne kommandoen på filstien `".\src"` for å finne riktig filsti og oppdatere alle klassene i `Dhhr.KppParser.Service` med riktig referering til `meldingsversjonsnummer`:
```
cd .\Dhhr.KppParser.Service; C:\"Program Files (x86)"\"Microsoft SDKs"\Windows\v10.0A\bin\"NETFX 4.8 Tools"\xsd.exe Resources\"NPR(kpp).xsd" /c /n:Dhhr.KppParser.Service.Models /o:Models
```
Dokumentasjon finnes [hos Microsoft](https://learn.microsoft.com/en-us/dotnet/standard/serialization/xml-schema-definition-tool-xsd-exe).

3.2 Søk etter om alle `meldingsversjonsnummer` i koden er oppdatert.

Hvis ikke alle `meldingsversjonsnummer` er oppdatert: Korrigere manuelt der ikke har blitt oppdatert og dokumenter i [Manuell oppdatering av meldingsversjonsnummeret i koden](https://github.com/folkehelseinstituttet/KppParser/edit/feature/docs-updatemessageversion-detailed-v2/docs/docs/UpdatingMessageVersion.md#2-maunell-oppatering-av-meldingsversjonsnummeret-i-koden).

## 5. Publiser ny versjon
5.1 Gjør det som er beskrevet i [Publiser ny versjon](https://github.com/folkehelseinstituttet/KppParser/edit/feature/docs-updatemessageversion-detailed-v2/readme.md#publisere-ny-versjon) i Readme.md


41 changes: 24 additions & 17 deletions readme.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,14 +6,31 @@ Det er to måter å kjøre programmet:
- Kjøre konsoll-appen (ConsoleApp)


# Publisere ny versjon
# Release ny versjon

## Oppdater kppParser sitt versjonsnummer
1. Oppdatér alle `<AssemblyVersion>`-verdier (i `.csproj`-filer) til nytt versjonsnummer (format: `x.y.z.*`)

Filstiene til de aktuelle .cproj-filene:
```
.\Dhhr.KppParser.ConsoleApp\Dhhr.KppParser.ConsoleApp.csproj
```
```
.\Dhhr.KppParser.Gui\Dhhr.KppParser.Gui.csproj
```
2. Oppdatér `versjonEpj`-verdien i `Dhhr.KppParser.Gui` &rarr; `appsettings.json` til nytt versjonsnummer (format: `x.y.z`)

Filstien til appsettings.json:
```
.\Dhhr.KppParser.Gui\appsettings.json
```

## Lage programmene Gui og ConsoleApp
Både Gui og ConsoleApp lages med denne kommandoen
```
cd .\Dhhr.KppParser.ConsoleApp; dotnet publish -c Release -r win-x64 --no-self-contained -p:PublishSingleFile=true; cd ..\Dhhr.KppParser.Gui; dotnet publish -c Release -r win-x64 --no-self-contained -p:PublishSingleFile=true
```
_Denne kommandoen finner riktig filstier og lager programmene_
_Denne kommandoen finner riktige filstier og lager programmene_

Programmene får disse filstiene:
```
Expand All @@ -30,22 +47,12 @@ Test csv-filer for episode og tjeneste finnes i mappen:
```

## Før release
1. Oppdater versjonsnummer i filene:
```
.\Dhhr.KppParser.ConsoleApp\Dhhr.KppParser.ConsoleApp.csproj
```
```
.\Dhhr.KppParser.Gui\Dhhr.KppParser.Gui.csproj
```
```
.\Dhhr.KppParser.Gui\appsettings.json
```
2. Oppdatere dokumentasjonen (readme.md og mappen docs) hvis det oppdages feil i dokumetasjonen og/eller hvis det er viktige opplysninger som bør noteres ned.
3. Lage en pull request for å merge koden til main i Github
1. Oppdatere dokumentasjonen (readme.md og mappen docs) hvis det oppdages feil i dokumetasjonen og/eller hvis det er viktige opplysninger som bør noteres ned
2. Lage en pull request for å merge koden til main i Github
3. Merge til main


## Publisere på github
Etter at pull requesten er godkjent og merget til main:
## Release programmene på github
1. Opprett ny release på github
2. Oppgi tittel basert på hva som er forandret
4. Sett tag et fornuftig versjonsnummer (bruk samme versjonsnummer som i .csproj)
Expand All @@ -57,7 +64,7 @@ Etter at pull requesten er godkjent og merget til main:
```
".\Dhhr.KppParser.Gui\bin\Release\net6.0-windows\win-x64\publish"
```
_Disse mappene ble generert når programmene ble laget (se over, Lage programmene Gui og ConsoleApp)_
_Disse mappene ble generert når programmene ble laget (se over, [Lage programmene Gui og ConsoleApp](https://github.com/folkehelseinstituttet/KppParser/edit/feature/docs-updatemessageversion-detailed-v2/readme.md#lage-programmene-gui-og-consoleapp))_

6. Gi zip-filene henholdsvis disse navnene "KppParser-ConsoleApp.zip" og "KppParser-Gui.zip"