Introduction
Clients have various levels of importance and various levels of customization that determine how easy or difficult it will be to upgrade their one or more instances to the latest release.
Client Level
All clients that are above essentials would be considered high level clients, and will be handled in a way to match their stature. This would include:
- Alerting customer several days before release of the deployment
- Arranging a time to perform the release. This may be after hours, though it may not be required
- This depending on the times when they are converting files and any contributing factors to that
For other clients, we could give out a distributed alert of the deployment.
Customization
A number of clients have customized configurations that will not allow for an automated deployment. This could include:
- Custom docker-compose.yaml files
- May need a script that checks if the file is different from the one on the git master branch
- Custom jars or other installations that may be broken with a standard deployment
- We may need to create a script to check through the bootstrap.sh file to see if there are customer installations included, that is that are not commented out.
- Non-Standard versions in .env file of instance
- This indicates that the instance has a custom version rather than a straight release
Clients with customization may need to be manually updated in order to not break the application in the process.