Page History
Navitabs | ||||
---|---|---|---|---|
| ||||
Indhold
Table of Contents |
---|
Introduktion
Formål
Formålet med dette dokument er at beskrive hvordan et udviklingsmiljø, til videreudvikling af CRA, kan sættes op, samt hvordan koden bygges, deployes og testes.
Først beskrives de softwaremæssige krav, der er til miljøet, samt hvordan kode hentes og bygges. Dernæst beskrives deploymentmiljøet.
Kodestrukturen, kodemæssige afhængigheder til tredjeparts moduler og de forskellige servicemodulers ansvar og design beskrives sidst i dette dokument sammen med testdesign.
Læsevejledning
Læser forventes at have kendskab til Java softwareudvikling med anvendelse af Maven og WildFly. Derudover forventes kendskab til Docker samt docker-compose.
Hvor der i teksten er angivet <component base> refereres til topniveaufolderen for kildekoden for komponenten.
Introduktion til CRA
CRA servicen består af Java baserede komponenter, der baserer sig på Java 8 og Spring frameworket.
Design og arkitektur er beskrevet:CRA - Design- og arkitekturbeskrivelse.
Opsætning af udviklingsmiljø
I det følgende antages at koden er hentet fra SVN: https://svn.nspop.dk/svn/components/cra/.
Krav til software
CRA deployeres vha. docker og baserer sig på NSP platformens base image, hvori der findes nødvendigt software til afvikling.
Derudover er der krav til de anvendte udviklingsværktøjer:
- Maven 3.0.3 eller højere anvendes.
- docker-compose version 3.4 eller højere
Bygge WAR filer
Man skal bruge Maven til at bygge CRA, hvilket gøres ved at køre kommandoen
|
Efter byg kan WAR filer findes her:
|
Afvikling
Der henvises til installationsvejledningen for nærmere instrukser.
Udviklers workstation
Når man udvikler kan det være praktisk at foretage lokal deployment.
Dette kan gøres vha. docker-compose:
|
Når CRA er startet er, svarer den på:
- HelbredsURL: Se CRA - Driftsvejledning
NB! I udviklingssetup'et peges der på det på NSP TEST1 installerede OpenText registry. Dette gøres for, at svarene for DROS bliver korrekte, også i development setup. Integrationstestene kan derfor køres mod development. Det er nødvendigt, at docker-compose setup (og integrationstesten) afvikles på en maskine, der er whitelistet til at tilgå NSP TEST1 XDS registry.
I docker-compose setup i development er tilknytningen til NSP TEST1 XDS registry lavet på følgende måde:
- OpenXDS repository (openxds-server) peger på registry url http://registryproxy:80/registry/services/xds-iti42 gennem opsætning af følgende ENV variable: XDS_REGISTRY_HOST, XDS_REGISTRY_PORT og DS_REGISTRY_URL
- I docker-compose filen for development er registryproxy en opsætning af nginx. Konfigurationen af denne findes i filen compose/configuration/nginx.conf
- I denne konfigurationsfil (nginx.conf) er https://test1-cnsp.ekstern-test.nspop.dk:8443 defineret som målet for requests.
Ovenstående setup blev indført, da der var problemer med at få OpenXds til at tale direkte med XDS registry på TEST1 pga issues med HTTPS.
Beskrivelse af systemdesign
Systemdesign er beskrevet i DROS - Design- og arkitekturbeskrivelse.