How can we have a continuous delivery for an On-Prem installed Product when we need to support multiple versions? More importantly, in such products, the codebase is not in a single repo. The repos can grow/shrink across versions.
To elaborate more on the Problem statement. [ ON-PREM Installable ] Let's say you roll out first version( v1) of your product and you deploy it to 2 customer environments. Once you deploy you need to support like providing hotfixes, minor version upgrades. In the meantime, you continue to innovate and add new features / remove a few features in the next major version(v2). But since you already have customers on version v1 and it will be the choice of the customer to accept/reject the newer versions. You would get new customers for version v2. So now you have 2 major versions out there with customers using 2 different versions of your product. So the problem now becomes 2-fold. You need to have your team continuously support both the versions. Now the easier thing would be to discontinue the older version as soon as you have new version rolled out. But the downside is you cannot term your customers on older versions as active customers, neither they will be able to back you on the new innovations that you added to the newer versions.
Hope I have been able to elaborate on the problem. Any suggestions?