078a496937
If a Helm upgrade is performed on the OpenStack Umbrella chart using the exact same configuration as the first release, then it's expected for no DaemonSets, Deployments, or StatefulSets to be updated. This did not work as expected. A few changes were required to support this desired behavior: 1. Update glance's configmap-etc.yaml to trim whitespace and convert YAML comment to Helm template comment. Before this change, Helm rendered the template with the YAML comment and a newline for the install phase. On upgrades, Helm rendered the template without the YAML comment and newline causing the hash of configmap-etc to change, thus causing the glance-api Deployment to update. 2. Update openstack.sh script to create a randomly generated memcache secret for glance. Without this change, the glance-api deployment changes each time since Helm randomly generates a new memcache secret if not provided. This behavior is enforced via a new test script, validate-umbrella-upgrade-no-side-effects.sh. The following jobs are always recreated due to hooks: - keystone-bootstrap - keystone-credential-setup - keystone-db-init - keystone-db-sync - keystone-domain-manage - keystone-fernet-setup - keystone-rabbit-init - rabbitmq-cluster-wait Some Jobs are created via CronJobs and could be created during validation. So far, heat-engine-cleaner has been seen, but others could be caught too. So the validation script ignores these pod changes by ignoring if Jobs were recreated. Plus Jobs being recreated should not impact the OpenStack deployment. Change-Id: Iffaa346d814b8d0a3e2292849943219f70d50a23 |
||
---|---|---|
.. | ||
jobs-openstack-helm.yaml | ||
project.yaml |