text: Title: management subcommand `manage_dkim_keys` breaks if it fails
  Body: # Impacted versions
  
  * Modoboa: 2.0.3
  # Steps to reproduce
  
  # Current behavior
  
  Try this `$ python manage.py modo manage_dkim_keys` from an account that lacks write permissions for `dkim_keys_storage_dir`. It crashes, but it adds a `dkim_private_key_path` to the `admin_domain` table all the same, so that on subsequent runs, this command does nothing because the [query for missing values](https://github.com/modoboa/modoboa/blob/572e32f868c24c2f08c0d387620c58ef42ebb714/modoboa/admin/management/commands/subcommands/_manage_dkim_keys.py#L48) does not return this domain any more. 
  
  So on fixing the write permissions, or running it from a privileged account, nothing happens unless you manually edit the database and inset an empty string in domain's `dkim_private_key_path`, after which a new `.pem` file is created as expected.
  
  # Expected behavior
  
  If for any reason the `.pem` file cannot be created then the associated `dkim_private_key_path` field in the `admin_domain` table should be an empty string not and invalid path (pointing to a file that does not exist). Data integrity basically.
  
  
  
  