Investigate cleanup of pvcXd.yaml configurations
#172
Reference in New Issue
Block a user
No description provided.
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Currently there are two main PVC yaml configurations,
pvcnoded.yamlandpvcapid.yaml. Both contain configuration information for the cluster, but with some overlap and with some discrete parts. There is also the separateautobackup.yamlwhich defines PVC autobackup configurations.In #171 we seek to add two more packages/daemons to the mix, which might need some or both of these configs.
Instead, let's look into unifying and restructuring our configuration files into a single
pvc.yaml. This can cover all the currently disparate settings from the 3 mentioned files into a single configuration going forward, along with a corresponding reorganization.This will help keep settings for nodes and the cluster much more organized and flexible. All daemons can then read from this configuration for information they need. Ideally, as well, we can also eliminate some current "flexibility" and ensure that this configuration is cluster-global instead of node-specific.
First, we must define a configuration schema for the new
pvc.yamlconfiguration.Next, we will need some temporary migrations in all existing daemons to determine which configurations each daemon should be reading from. This will ensure compatibility with both.
Finally we can add a migration to
pvc-ansibleto remove the old configs and add the new ones, with an ideally seamless transition at that point.Implemented both a legacy and new format, where new will read from
/etc/pvc/pvc.confif it exists, otherwise it will fall back to allow transition time via the PVC Ansible playbooks.The legacy handler can go away eventually.
Will be present in 0.9.82.