Question: We developed a new **CoreFramework** with Spring Boot (CoreFramework-1.0.0.jar) and pushed it to JFROG-Artifactory. **The CoreFramework performs all the common functionalities required for all Microservices** that we are developing. **All these Microservices having dependency on it through maven POM.xml**. I've a query here, **in future if there is any change in our CoreFramework will force all Microservices to redeploy** (new PODS need to be created as we deployed these Microservices to Openshift). **Can someone suggest how to handle this situation?**

Thanks in advance.

Answer: 
Having dependencies that *happen to be* common is not a problem - you already have a dependency on spring which you think is fine :)

The key point is "will force all Microservices to redeploy" - that's what you want to avoid. It is easier said than done but you need to make sure future changes are backward compatible so that services will be able to opt-in to upgrade and in their own timelines
As Arnon already mentioned, the best case would be that your microservices do not *need* to be deployed all together. So your services should be decoupled to the point where the exact version of a library does not matter and there is some backward compatibility.

That being said, one possibility to do such a redeployment is via a pipeline or build triggers. That means that the library build will trigger a rebuild of your microservices, which will then automatically lead to a new deployment:

```
                      +-----------+     +------------+
                 +--->| Service A +---->| Service A  |
                 |    | Build     |     | Deployment |
+-----------+    |    +-----------+     +------------+
|  Library  +----+
|  Build    +----+
+-----------+    |    +-----------+     +------------+
                 |    | Service B |     | Service B  |
                 +--->| Build     +---->| Deployment |
                      +-----------+     +------------+

```

In OpenShift, you can use [Build Triggers](https://docs.openshift.com/container-platform/4.8/cicd/builds/triggering-builds-build-hooks.html) to implement something like this or use a pipeline (Jenkins, Tekton, ...).