Skip to content

Latest commit

 

History

History
69 lines (53 loc) · 1.95 KB

File metadata and controls

69 lines (53 loc) · 1.95 KB

JmsTool

Build

Run ./mvnw clean install to build all Run ./mvnw clean install -pl backend to build only the backend

Run Tomcat with ActiveMQ

After build, run docker-compose up --build. This will start Tomcat with deployed applicaiton and ActiveMQ server. Start JmsTool or ActiveMQ Web Console

Development server

Run npm start in frontend/src/main/frontend for a dev server with proxy to Spring Boot. Navigate to http://localhost:4200/. The app will automatically reload if you change any of the source files.

Development

Trunk-based development with releases managed via versions-maven-plugin and Git tags.

Release

Automated Release (Recommended)

Use GitHub Actions for automated release process:

# Create and push a tag
git tag v1.7.0
git push origin v1.7.0

The release workflow will:

  • Update pom.xml versions
  • Build and test the project
  • Deploy to Maven repository
  • Build and push Docker image
  • Create GitHub Release
  • Set next development version

Manual Release

For local releases:

# Set release version
./mvnw versions:set -DnewVersion=1.7.0

# Commit and push
git add pom.xml frontend/pom.xml backend/pom.xml
git commit -m "Release 1.7.0"
git push

# Build and deploy
./mvnw clean deploy

# Tag the release
git tag v1.7.0
git push --tags

# Set next development version
./mvnw versions:set -DnewVersion=1.8-SNAPSHOT
git add pom.xml frontend/pom.xml backend/pom.xml
git commit -m "Prepare for next development iteration"
git push

Required GitHub Secrets

For automated releases, configure these secrets in your GitHub repository:

  • MAVEN_USERNAME - Maven repository username
  • MAVEN_PASSWORD - Maven repository password
  • GPG_PRIVATE_KEY - GPG signing key for artifacts
  • GPG_PASSPHRASE - GPG key passphrase
  • DOCKER_USERNAME - Docker Hub username
  • DOCKER_PASSWORD - Docker Hub password/token