Description of problem: swift/storage.pp is backed by either a local loopback device (swift_loopback = true) or a file system device. (swift_loopback = false; swift_ext4_device=/dev/sdb1)
In foreman, if you specify swift_loopback = true and create a loopback devuice, and then change to false and add a file system device (as a customer might migrate from a POC loopback to a partition) a puppet apply completes successfully but does not mount the file system device. If you manually dismount the loopback device and re-run it mounts appropriately.
Version-Release number of selected component (if applicable):
Steps to Reproduce:
1. Deploy a Swift storage node via Foreman with swift_loopack = true
2. Add a formatted disk device (in my lab I used iSCSI /dev/sdb1)
3. Change Swift storage node host group parameters: swift_loopback = false, swift_ext4_device = /dev/sdb1
4. Run puppet agent -tdv on the Swift storage node
5. Run mount to verify
6. Unmount the loopback device and re-run puppet agent -tdv
7. Run mount to verify
puppet apply completes without error but disk device is not used
puppet apply should fail with error or disk device should be used
A conditional umoun expression should be added to swift/storage.pp. I will tackle this when I can find time.
this seems more like a foreman bug than a openstack puppet modules bug changing the component.
Closed wontfix for now since we don't deploy swift. Will re-evaluate this when swift is supported