/feature-toggle

Simple feature toggle project

Primary LanguageJavaApache License 2.0Apache-2.0

CI

feature-toggle

Simple java 17/Spring Boot project that provides feature-toggles for backend and frontend to consume. This project is created to try on technologies that I don't usually work with such as gradle, reactive spring boot, ArgoCD and Kubernetes.

Written with technologies:

  • Java 17
  • Gradle v7.5.1 (Multi module)
  • Spring Boot
  • Reactive Web
  • Reactive Mongo
  • Google Artifact Repository (Uploads library project files)
  • Docker Hub (Uploads Spring Boot docker)
  • feature-toggle-k8s will contain kubernetes files to use with ArgoCD and GitOps
  • GitHub actions workflow to build, test and deploy to maven repository and docker-hub

To run locally you need to start docker/mongo.ymlby typing docker-compose mongo.yml. This will start mongo on port 27017.

Next step

  • To call rest endpoints from other java Spring Boot projects im considering exposing RestApi interface and use Reactive Feign client to make the calls and wrap it in Hysterix or creating a boot with client beans that can be imported to other projects.

  • Move Spring Boot configuration over to either Git or Hashicorp Vault

  • Setup Eureka

  • Implement micro frontend (React) that also get pushed to Docker-Hub