Utrulling (deploy)¶
Hvor de ulike delene kjører, og hvordan de rulles ut. Se også Drift og overvåking for logging/feilsøking og Komme i gang for lokal kjøring.
Servere og hva som kjører hvor¶
| Komponent | Server / vert | Teknologi |
|---|---|---|
| Connect API | IIS på JHSVMAPP340-01 (lokal/on-prem) |
ASP.NET Web API, .NET Framework 4.8 |
| Databaser | SQL Server JHSVMSQL164-01\VISMA |
Visma-databaser F{id} + Connect-tabeller per selskap |
| ConnectMonitor | Tjenermaskin (Windows Task Scheduler) | .NET-konsoll, ett flagg per planlagt oppgave |
| Web-app | app.knapphus.net |
Angular/Ionic-bygg (www/) |
| Android | Google Play (net.knapphus.connectapp) |
Capacitor |
| Dokumentasjon | docs.knapphus.net (+ staging) |
Azure Static Web Apps |
| Staging-API | staging-api2.knapphus.net |
Testmiljø for API-et |
Hvilket API appen bruker bestemmes av API_ENDPOINT i app-settings.ts på
byggetidspunktet.
Connect API → IIS (JHSVMAPP340-01)¶
- Bygg
knapphus-connect-apii Release (Visual Studio / MSBuild, .NET Framework 4.8). Ved endring i forretningslaget: bygg jhlVismaAPI og kopierjhlVismaAPI.dlltildependencies/først (se Komme i gang). - Publiser til IIS-siden på
JHSVMAPP340-01(Web Deploy eller filkopi til sitens fysiske mappe). App-pool: .NET Framework 4.8, Integrated. - Web.config på serveren — kontroller før recycle:
connectionStrings:VismaSQL_{id}ogConnectSQL_{id}for alle selskaper, motJHSVMSQL164-01\VISMA. Mangler én → login/refresh gir 500 for det selskapet.FormsDBEntities_{id}der skjema brukes.VBS_Endpoint/VBS_*, integrasjonsnøkler.- Ny funksjonalitet med DB-krav: kjør SQL-skriptene i
docs/(refresh_token_database_setup.sql,survey_kiosk_database_setup.sql) på de aktuelle databasene påJHSVMSQL164-01\VISMA. - Recycle app-poolen og kjør verifiseringen under.
Web.config er per-server
Web.config på JHSVMAPP340-01 er ikke det samme som i repoet — connection
strings og hemmeligheter settes per server. Ta kopi før endring.
Databaser (JHSVMSQL164-01\VISMA)¶
Instansen er kilden for både Visma-databasene (F{id}) og Connect-tabellene
(RefreshTokens, KioskTokens, SurveySubmissions) som ligger i samme
selskaps-DB. Backuprutiner: se Backup og restore.
Nytt selskap: se onboarding-runbooken.
ConnectMonitor¶
Bygg KnapphusConnectMonitor.sln, kopier til tjenermaskinen, og planlegg hvert
jobbflagg som en egen oppgave i Task Scheduler. App.config peker på
VismaSQL/VBSURL. Jobbene er dokumentert under
ConnectMonitor.
Web-app og dokumentasjon¶
- Web-app:
pnpm build→ deploywww/tilapp.knapphus.net. Service worker gir brukerne oppdateringsvarsel automatisk. - Android: egen prosess, se Android-release.
- Dokumentasjon: Azure Pipelines (
azure-pipelines-docs-*.yml) bygger med mkdocs--strictog deployer til docs(-staging).knapphus.net.
Verifisering etter deploy¶
curl https://‹api-host›/api/Company/GetCompanies→ 200 + selskapsliste.- Innlogging med testselskap (9148) og et reelt selskap fungerer, svaret
inneholder
RefreshToken. auth/refreshsvarer 401 på ugyldig token (ikke 404/500).- Én ordre kan åpnes og én sjekkliste lastes (Landax-kjeden).
jhlVismaAPILog.txter fri for nye feil de første minuttene.
Rollback¶
- API: behold forrige publiserte mappe på
JHSVMAPP340-01og bytt tilbake; versjoner Web.config-endringer manuelt (ta kopi før endring). - Web-app: deploy forrige
www/-bygg. - Android: rull ut forrige
.aabpå nytt i Play (nyversionCode), eller stopp utrulling i Play Console. - Dokumentasjon:
git revertpå master.