open-coffee / opencoffee-starter

The glue of the OpenCoffee
Apache License 2.0
10 stars 1 forks source link

Architecture restructuring #52

Closed derTobsch closed 5 years ago

derTobsch commented 5 years ago

Do no merge yet. Cleanups in the child poms to avoid duplicated code is needed. I'll have a look at the inheritance of parent -> child pom

derTobsch commented 5 years ago

The Idea is to not leak configuration into the parent that is only needed to build the starters like the distribution Management. So I splitted it up into three packages. Dependencies, build and parent. The build will be used to build the starters and actuator and the parent does not have any build specifica. Both will inherit from the depends module.

derTobsch commented 5 years ago

Added some changes and the flatten plugin to remove distributionManagement information and some others.

This is the parent pom architecture

                                    ------------------
                                    |   Spring Boot  |
                                    ------------------
                                             ↑
                                             |
                                -----------------------------
                                |   CoffeeNet Dependencies  |
                                -----------------------------
                                             ↑
                                             | 
                                  ------------------------
         -----------------------→ |   CoffeeNet Parent   | ←-----------
         |                        ------------------------            |
         |                                                            |
         |                                                            |
         |   --------------------------                  -----------------------------
         |-- |   CoffeeNet Actuator   |                  |   CoffeeNet Application   |
         |   --------------------------                  -----------------------------
         |
         |   -------------------------------
         |-- |   CoffeeNet Autoconfigure   |
         |   -------------------------------
         |   ---------------------------------
         |-- |   CoffeeNet Starter Discovery |
         |   ---------------------------------
         |                 ...
         |   ---------------------------------------------
         |-- |   CoffeeNet Starter Navigation Themeleaf  |
             ---------------------------------------------