Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

add "force" option for vdo modules #2101

Closed
1 task done
Davidffry opened this issue Mar 24, 2021 · 7 comments · Fixed by #2110
Closed
1 task done

add "force" option for vdo modules #2101

Davidffry opened this issue Mar 24, 2021 · 7 comments · Fixed by #2110
Labels
feature This issue/PR relates to a feature request module module needs_triage plugins plugin (any type) system

Comments

@Davidffry
Copy link

Summary

I am trying to create VDO volume but the target partition is in xfs. in command line I use the option --force to create the vdo volume

Issue Type

Feature Idea

Component Name

vdo

Additional Information

- name: Create 2 TB VDO volume vdo1 on device /dev/md0
  vdo:
    name: vdo1
    state: present
    device: /dev/md0
    logicalsize: 2T
    force: yes

Code of Conduct

  • I agree to follow the Ansible Code of Conduct
@ansibullbot
Copy link
Collaborator

Files identified in the description:

If these files are inaccurate, please update the component name section of the description or use the !component bot command.

click here for bot help

@ansibullbot
Copy link
Collaborator

@ansibullbot ansibullbot added affects_2.10 feature This issue/PR relates to a feature request module module needs_triage plugins plugin (any type) system labels Mar 24, 2021
@rhawalsh
Copy link
Contributor

Hi @Davidffry,

It's risky to allow a force to be specified automatically since that has the ability to accidentally wipe out existing signatures of anything you specify. What happens if you have a typo and set device: / dev/md0?

I would certainly be hesitant to make it so easy to wipe things out by accident. What are your thoughts around that?

@Davidffry
Copy link
Author

Davidffry commented Mar 25, 2021 via email

@rhawalsh
Copy link
Contributor

I'm not exactly sure what you mean that it needs to follow the enable option. The arguments provided to the 'vdo' utility are not required to be in a specific order.

My biggest concern with allowing a force operation is that it will end up always being used regardless of whether it is necessary. So when you add the flag into automation, then you lose all of the safety checks and risk damaging your system inadvertently without even noticing it.

I do take your argument that lvol and filesystem modules have it, which is pretty convincing.

@Davidffry
Copy link
Author

Davidffry commented Mar 25, 2021 via email

@rhawalsh
Copy link
Contributor

rhawalsh commented Mar 25, 2021

my bad, my english is not my native language.

No worries. I appreciate the attempt! :)

that module need to follow the enable option in cli.
in other terms : I think that all options available in cli needs to be present in the module, so like "force" option.

Ah, ok. Yeah, I can understand that, and that is similarly compelling.

My biggest concern with allowing a force operation is that it will end up always being used regardless of whether it is necessary. So when you add the flag into automation, then you lose all of the safety checks and risk damaging your system inadvertently without even noticing it.

I agree with you, maybe in the documentation need to add like "at your own risk" prevent.

Yes, that would be a good middle ground for this.

netbsd-srcmastr pushed a commit to NetBSD/pkgsrc that referenced this issue Apr 2, 2021
v3.2.0

community.crypto
- acme module_utils - the ``acme`` module_utils has been split up into several Python modules (ansible-collections/community.crypto#184).
- acme_* modules - codebase refactor which should not be visible to end-users (ansible-collections/community.crypto#184).
- acme_* modules - support account key passphrases for ``cryptography`` backend (ansible-collections/community.crypto#197, ansible-collections/community.crypto#207).
- acme_certificate_revoke - support revoking by private keys that are passphrase protected for ``cryptography`` backend (ansible-collections/community.crypto#207).
- acme_challenge_cert_helper - add ``private_key_passphrase`` parameter (ansible-collections/community.crypto#207).

community.docker
- docker_swarm_service - change ``publish.published_port`` option from mandatory to optional. Docker will assign random high port if not specified (ansible-collections/community.docker#99).

community.general
- archive - refactored some reused code out into a couple of functions (ansible-collections/community.general#2061).
- csv module utils - new module_utils for shared functions between ``from_csv`` filter and ``read_csv`` module (ansible-collections/community.general#2037).
- ipa_sudorule - add support for setting sudo runasuser (ansible-collections/community.general#2031).
- jenkins_job - add a ``validate_certs`` parameter that allows disabling TLS/SSL certificate validation (ansible-collections/community.general#255).
- kibana_plugin - add parameter for passing ``--allow-root`` flag to kibana and kibana-plugin commands (ansible-collections/community.general#2014).
- proxmox - added ``purge`` module parameter for use when deleting lxc's with HA options (ansible-collections/community.general#2013).
- proxmox inventory plugin - added ``tags_parsed`` fact containing tags parsed as a list (ansible-collections/community.general#1949).
- proxmox_kvm - added new module parameter ``tags`` for use with PVE 6+ (ansible-collections/community.general#2000).
- rax - elements of list parameters are now validated (ansible-collections/community.general#2006).
- rax_cdb_user - elements of list parameters are now validated (ansible-collections/community.general#2006).
- rax_scaling_group - elements of list parameters are now validated (ansible-collections/community.general#2006).
- read_csv - refactored read_csv module to use shared csv functions from csv module_utils (ansible-collections/community.general#2037).
- redfish_* modules, redfish_utils module utils - add support for Redfish session create, delete, and authenticate (ansible-collections/community.general#1975).
- snmp_facts - added parameters ``timeout`` and ``retries`` to module (ansible-collections/community.general#980).
- vdo - add ``force`` option (ansible-collections/community.general#2101).

community.network
- edgeos_config - match the space after ``set`` and ``delete`` commands (ansible-collections/community.network#199).
- nclu - execute ``net commit description <description>`` only if changed ``net pending``'s diff field (ansible-collections/community.network#219).

community.postgresql
- postgresql_info - add the ``patch``, ``full``, and ``raw`` values of the ``version`` return value (ansible-collections/community.postgresql#68).
- postgresql_ping - add the ``patch``, ``full``, and ``raw`` values of the ``server_version`` return value (ansible-collections/community.postgresql#70).

community.zabbix
- zabbix_agent - added support for installations on arm64 systems (ansible-collections/community.zabbix#320).
- zabbix_proxy - now supports configuring StatsAllowedIP (ansible-collections/community.zabbix#337).
- zabbix_server - added support for installtions on arm64 systems (ansible-collections/community.zabbix#320).
- zabbix_web - added support for installtions on arm64 systems (ansible-collections/community.zabbix#320).

dellemc.openmanage
- ome_template - Allows to deploy a template on device groups.

hetzner.hcloud
- Add firewalls to hcloud_server module

ovirt.ovirt
- cluster_upgrade - Add correlation-id header (oVirt/ovirt-ansible-collection#222).
- engine_setup - Add skip renew pki confirm (oVirt/ovirt-ansible-collection#228).
- examples - Add recipe for removing DM device (oVirt/ovirt-ansible-collection#233).
- hosted_engine_setup - Filter devices with unsupported bond mode (oVirt/ovirt-ansible-collection#226).
- infra - Add reboot host parameters (oVirt/ovirt-ansible-collection#231).
- ovirt_disk - Add SATA support (oVirt/ovirt-ansible-collection#225).
- ovirt_user - Add ssh_public_key (oVirt/ovirt-ansible-collection#232)

purestorage.flasharray
- purefa_maintenance - New module to set maintenance windows
- purefa_pg - Add support to rename protection groups
- purefa_syslog - Add support for naming SYSLOG servers for Purity//FA 6.1 or higher

purestorage.flashblade
- purefb_certs - Add update functionality for array cert
- purefb_fs - Add multiprotocol ACL support
- purefb_info - Add information regarding filesystem multiprotocol (where available)
- purefb_info - Add new parameter to provide details on admin users
- purefb_info - Add replication performace statistics
- purefb_s3user - Add ability to remove an S3 users existing access key
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feature This issue/PR relates to a feature request module module needs_triage plugins plugin (any type) system
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants