We are looking for a release management solution:
For example we have a WordPress plugin that has 3 versions:
- single site
- three sites
- ten sites
Code is exactly the same for all versions only 1 line in 1 file (licensing code) should be dynamic where we are declaring the version name:
“single site” string changed to: define( ‘ITEM_NAME’, ‘Single’ );
“three sites” string changed to: define( ‘ITEM_NAME’, ‘Three’ );
The ideal solution will produce 3 product versions from 1 branch of code.
They could be deployed to the same or different servers (we would prefer the same server so it’s easier for us to pick up the product).
More complicated case:
For this case we will have the option to tag/mark some parts of the code which then will be replaced or deleted depending on the release requirements.
For example Dev release has the code with parameters that are associated with Dev server and Prod release has the code with parameters that are associated with Prod server.
Here is the explanation for that case:
I check this code into the main branch
Can we accomplish that with CircleCI?
Thank you very much!