Skip to content
Snippets Groups Projects
README.md 2.35 KiB
Newer Older
  • Learn to ignore specific revisions
  • # Alfa Frontend
    
    OZGCloud's avatar
    OZGCloud committed
    Informationen zur lokalen Installation sind unter [dokumentation/Entwicklungsumgebung/README.md](https://git.ozg-sh.de/ozgcloud-doc/dokumentation/src/branch/master/Entwicklungsumgebung/README.md#angular-frontend) abgelegt.
    
    OZGCloud's avatar
    OZGCloud committed
    Befehle und Tipps zum Umgang mit der Codebasis und zur Testerstellung liegen in [dokumentation/Entwicklung/Angular.md](https://git.ozg-sh.de/ozgcloud-doc/dokumentation/src/branch/master/Entwicklung/Angular.md).
    
    ## Alfa Frontend starten
    
    Um das Alfa Frontend zum Laufen zu bekommen, muss zunächst ein `pnpm install` ausgeführt werden.
    
    
    -> nach dem Ausführen sollte sich ein `node_modules` Ordner im Verzeichnis befinden.
    
    
    Im Anschluß wird das Alfa Frontend über `pnpm start` gestartet.
    
    OZGCloud's avatar
    OZGCloud committed
    
    
    - Bei Fehler _npm ERR! Unable to authenticate, need: BASIC realm="Sonatype Nexus Repository Manager"_:
      - Prüfen, ob eine Datei _.npmrc_ in _alfa/alfa_ liegt, die den selben Inhalt hat wie die _.npmrc_, die in _apps/alfa-e2e/Jenkinsfile_ angelegt wird.
    
      - Alternative: Die Installation mit dem offiziellen NPM-Repository ausführen: `pnpm install --registry=https://registry.npmjs.org/`
    - Bei nicht nachvollziehbaren Problemen während der Installation kann es helfen, den `node_modules` Ordner und die _pnpm-lock.yaml_ zu löschen und anschließend erneut zu installieren.
    - Prüfen, dass `pnpm install` die _pnpm-lock.yaml_ nicht anpasst, wenn das nicht wirklich gewollt ist.
    
    
    ## Jest und SonarQube
    
    
    - Parameter testResultsProcessor, collectCoverage, coverageReporters führen zu _Unknown option_ warnings während jeden Tests, wenn sie in der jeweiligen _jest.config.ts_ definiert sind. Werden sie dagegen als CLI Parameter beim Start der Tests übergeben, wird keine Warnung produziert.
    - Es können mehrere Tests parallel laufen mittel `nx run-many --target=test --parallel 8`. Tests sollten dann nicht zusätzlich mit Jest's _maxWorkers_ Parameter parallelisiert werden.
    
    
    ## Docker build
    
    Base Image: Wird manuell von Entwicklern gebaut, nach Änderungen an package.json.
    
    ```
    bin/nx-build-base.sh
    ```
    
    Anwendungsimage - wird in der Regel vom Jenkins gebaut.
    
    - APPNAME: Name der App im Verzeichnis apps/
    - Versionierung steuert Jenkins
    - build-arg CONFIGURATION steuert production build
    
    ```
    docker buildx build --push --platform linux/amd64 --tag docker.ozg-sh.de/APPNAME:x.x.x  --build-arg CONFIGURATION=production -f apps/APPNAME/Dockerfile .
    ```