You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
Mirco b2841e2e24 Fix ci & push image to Docker 18 hours ago
doc Be compliant with deployment needs 2 weeks ago
frontend Prebuild commit - build graalvm bin in phase 1, use bin to stage app in phase 2 1 month ago
gradle/wrapper Installing graalvm and usage to build binary for deploying, need some improvements 1 month ago
image/resources [skip-ci] Moved .dockerignore 2 weeks ago
src [skip ci] new META-INF/native-image created with graalvm agent 22 3 weeks ago
.dockerignore [skip-ci] Moved .dockerignore 2 weeks ago
.gitignore add __pycache__/ to .gitignore 1 month ago
.gitlab-ci.yml Fix ci & push image to Docker 18 hours ago
Dockerfile [skip ci] correct path settings 1 week ago
LICENSE first commit 2 months ago
README.md [skip ci] Cleanup dev_notes 3 weeks ago
build.gradle [skip ci] No snapshot version 2 weeks ago
build.py [skip ci] further linting 3 weeks ago
gradle.properties [skip ci] Bump to latest versions: springframework, spring.dependency-management, com.vaadin, java/graalvm 22 3 weeks ago
gradlew Member Names external by application.properties 1 month ago
gradlew.bat first commit 2 months ago
package-lock.json Prebuild commit - build graalvm bin in phase 1, use bin to stage app in phase 2 1 month ago
package.json [skip ci] new META-INF/native-image created with graalvm agent 22 3 weeks ago
settings.gradle first commit 2 months ago
tsconfig.json first commit 2 months ago
types.d.ts first commit 2 months ago

README.md

meapp-fullstack: ModeratorElection

Purpose

ModeratorElection provides a fullstack java app development as graalvm binary containing:

  • Java app to elect a team member from a comma separated list delivered by environment variable
  • Backend Spring Boot embeded Tomcat® Server
  • Frontend Vaadin Framework
  • Dockerfile to generate multi stage image,
    first stage compilation to graalvm binary, second stage as run stage - graalvm binary execution

Try out

Development phase is completed, we will deploy production soon - reachable at
https://meapp-fullstack.jitsi.prod.meissa.de

Setup

  • in IDE development, run
    ./gradlew clean vaadinPrepareFrontend
  • build jar file
    ./gradlew clean build -Pvaadin.productionMode
    -> output jar to build/libs/
  • compile native-image graalvm binary
    (1) use graalvm agent to announce project dependencies
MEMBERNAMES=er,sie,es java -agentlib:native-image-agent=config-output-dir=src/main/resources/META-INF/native-image -jar build/libs/ModeratorElection-0.0.1-SNAPSHOT.jar

(2) ./gradlew nativeCompile -Dvaadin.productionMode=true
-> output binary and necessary libs to build/native/nativeCompile/

  • py builder/build.py usage recommendation:
    pyb <task> to either create docker image, publish docker image, run test or dry run.
    py builder is using meissa PyPi package ddadevops for smart deployment.

Get help

./gradlew tasks

Development & mirrors

Development completed at:
https://repo.prod.meissa.de/meissa/ModeratorElection

Mirror:
https://gitlab.com/domaindrivenarchitecture/ModeratorElection (CI)

License

Copyright © 2024 meissa GmbH Licensed under the Apache License, Version 2.0