This PR adds fixes to honor the --dry-run option to avoid surprises when running an operation. This fixes #6573 This closes #6581