Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  • rette versions-nummeret i packagespackage.json
  • køre npm install
  • kopiere trunk til tags-mappen, fx
    svn cp -m "<fantastisk commit-kommentar>" https://svn.nspop.dk/svn/components/nap/nap-administration/trunk https://svn.nspop.dk/svn/components/nap/nap-administration/tags/release-1.0.0rc8

...

Funktionalitet

Projektet har to tre faner "Projekter", hhv "ProjekterAdministrer" og "hjælp". 

Projekter viser alle de projekter, som der er rettigheder til. Hvert projekt har titel, samt et versions nummer. Hvert projekt kan foldes ud ved at trykke på "mere", som så viser den tilknyttet web-app. Web-app'en viser titel, beskrivelse, version, udgivelses dato, url den ligger på, samt hvilke versioner af event kataloget den understøtter. 

Administrer viser alle projekterne og giver mulighed for at oprette nye eller redigere i eksisterende projekter.

Hjælp beskriver, hvad applikation omhandlerapplikations formål, samt et link til at oprette en support sag. 

...

For at starte en web pack dev server i docker køres "docker-compose build && docker-compose up" fra compose/development mappen.

Standalone (I browser)

Da nap-lobby-web bruger nap-administration som backend til at vise projekterne skal denne service startes først. Se  nap-administration.

Forudsat at nap-administration er startet som standalone og nap-compose er opsat som i Applikationen kan nu nåes  http://localhost:8080/nap/lobby/web/, hvis nap-compose reverse proxy er opsat som i 1.3.1 - Udvikling, ellers på  kan applikationen kan nu nåes på  http://localhost:4200.8080/lobby.

Når du bliver redirected til en login skal bruger navnet Lars blot indtastes

SBO (gennem nap-java-host)

nap-lobby-web bruger nap-administration som backend til at vise projekterne. nap-administration skal derfor startes som beskrevet i 5 - Ønskes Lobbyen teste i gennem nap-java-host skal nap-adminstration startes  med sikker-browser-opstart konfiguration. Se i nap-administration.

Hvis man ikke vil gøre brug af rigtige data, kan den "mockes" væk, således der vises dummy projekter. Dette kunne være for at se, hvordan det vil se ud hvis der var mange projekter tilføjet. Dette kan gøres ved at køre "npm run start:mock" hvis det køres lokalt, ellers kan der i compose/development ændres i docker-compose.yml "Command" parameter, hvor der tilføjes "--configuration=mock"

...

Jenkins filen beskriver jenkins pipelinen.Der kan laves snapshots og release-candidates fra jenkins

NapLobbyWeb-build - bygger nap-lobby-web

NapAdmin-build bygger nap-admin. I denne pibeline kan det vælges at bygge nap-lobby-web, hvis dette ønskes inkluderet.

NapAdmin- push snapshot - bygger nap-lobby-web og lægger bygget ind i roden af nap-admin samt pusher til NSP's docker registry.

Byg

Kør "npm run build" for at bygge projektet. Dette giver et output i dist/ folderen. Brug "npm run build-prod" for et produktionsbyg.

...

Projektet har til hensigt at teste der kan sendes og modtages beskender igennem NAP sdk'erne.

Den implementere det fulde eventkatalog fra NAP SDK - Guide til anvendere.

Der er separate tests cases, som kan køres enkeltvis eller samlet.  

...

Applikationen kan nu nåes  http://localhost:8080/nap/test/web/, hvis nap-compose reverse proxy er opsat som beskrevet tidligere, ellers på http://Localhost:4500.

CI

Jenkins filen beskriver jenkins pipelinen.Der kan laves snapshots og release-candidates fra jenkins.

NapTestWeb - build - bygger nap-test-web

NapTestWeb - push release candidate - pusher en release kandidat til NSP's docker registry

NapTestWeb - push snapshot - pusher en snapshot til NSP's docker registry

NapTestWeb - push release - pusher et release til NSP's docker registry

Byg

Kør "npm run build" for at bygge projektet. Dette giver et output i dist/ folderen. Brug "npm run build-prod" for et produktionsbyg.

...

nap-administration indeholder 2 3 REST services for projekter og , webapplikationer og håndterer session. 

Desuden håndteres i denne app de enkelte vært-/ LPSsystemers projektrettigheder. 

...

Installer dependencies ved at "mvn install". 

Udviklingserver

Nap-administration kan startes med mulighed for login via SBO eller standalone.

Understøttelse af  SBO igennem nap-java-host

Default opsætning er, at der logges ind via nap-java-host. Derfor skal For at starte en wildfly server til udvikling herigennem køres "docker-compose build && docker-compose up" fra compose/development mappen.

Applikationen kan nu nåes internt i docker på netværket nap_net på  http://napadmin:8080/, og   eller  på http://localhost:8080/nap/admin/services/main, lobby hvis nap-compose reverse proxy er opsat som i 1.3.1 - Udvikling.

Opstart af login via fake iDP

For at understøtte login via fake iDP skal oiosaml konfigurationen for localhost-standalone volumemappes.

Dette gøres ved at indkommentere denne konfiguration i development/docker-compose.yml og samtidig udkommentere linjen ovenfor for SBO.

Derefter kan en wildfly server til udvikling herigennem køres "docker-compose build && docker-compose up" fra compose/development mappen.

CI

Jenkins filen beskriver jenkins pipelinen.

Nap-administration bygges på NSP's Jenkins server via følgende jobs.

NapLobbyWeb-build - bygger nap-lobby-web

NapAdmin-build bygger nap-admin. I denne pibeline kan det vælges at bygge nap-lobby-web, hvis dette ønskes inkluderet.

NapAdmin- push snapshot - bygger nap-lobby-web og lægger bygget ind i roden af nap-admin samt pusher til NSP's docker registry.

NapAdmin - push release - laver et release af nap-admin og pusher til NSP's docker registryDer kan laves snapshots og release-candidates fra jenkins.

Test

JUnit anvendes til implementering af unit tests. Der er løbende gennemført unit tests på alle komponenter i projektet.
Unit tests kan afvikles ved at køre: `mvn test` og Coverage rapport generes med maven-surefire og publiceres med jacoco.

...

Alt konfiguration foregår ved at loade filer fra wildfly modulet dk.sds.nsp.nap.reference.facade.administration

De følgende konfigurationsfiler skal således volume mappes ind i modulet "dk/sds/nsp/nap/admin/main/" på applikations serveren (/pack/wildfly8/modules/ i docker).

Konfigurationsfiler
FilnavnIndhold
nap-admin-composelobby-ds.xml

Datasource beskrivelse. 

Vigtigt med jndi navn  "java:jboss/datasources/nap-lobby-facade" da dette skal matche konfiguration i  persistence.xml

log4j-napadmin.xmlLog4j opsætninger der følger gængs standard på NSP.

...

Der findes en konfiguration til develop / test-develop / og test-1 (test1 localhost-sbo/ localhost-standalone/ localhost-test1-sbo / localhost-test2-standalone / test1 (test1 miljøet) / test2 (test2 miljøet). 

De forskellige konfigurationer adskiller sig primært for singleLogoutService i SPMetadata og iDpMetadata samt og service provider url i oiosaml-sp.properties. 

...