1
0
Fork 0
mirror of https://github.com/ansible-collections/community.general.git synced 2024-09-14 20:13:21 +02:00
community.general/plugins
patchback[bot] e646d21935
seport: add local argument (#5203) (#5218)
Using `local: true` users can enforce to work only with local policy
modifications. i.e.

    # Without `local`, no new modification is added when port already exists
    $ sudo ansible -m seport -a 'ports=22 state=present setype=ssh_port_t proto=tcp' localhost

    localhost | SUCCESS => {
        "changed": false,
        "ports": [
            "22"
        ],
        "proto": "tcp",
        "setype": "ssh_port_t",
        "state": "present"
    }

    $ sudo semanage port -l -C

    # With `local`, a port is always added/changed in local modification list
    $ sudo ansible -m seport -a 'ports=22 state=present setype=ssh_port_t proto=tcp local=true' localhost

    localhost | CHANGED => {
        "changed": true,
        "ports": [
            "22"
        ],
        "proto": "tcp",
        "setype": "ssh_port_t",
        "state": "present"
    }

    $ sudo semanage port -l -C
    SELinux Port Type              Proto    Port Number

    ssh_port_t                     tcp      22

    # With `local`, seport removes the port only from local modifications
    $ sudo ansible -m seport -a 'ports=22 state=absent setype=ssh_port_t proto=tcp local=true' localhost

    localhost | CHANGED => {
        "changed": true,
        "ports": [
            "22"
        ],
        "proto": "tcp",
        "setype": "ssh_port_t",
        "state": "absent"
    }

    $ sudo semanage port -l -C

    # Even though the port is still defined in system policy, the module
    # result is success as there's no port local modification
    $ sudo ansible -m seport -a 'ports=22 state=absent setype=ssh_port_t proto=tcp local=true' localhost

    localhost | SUCCESS => {
        "changed": false,
        "ports": [
            "22"
        ],
        "proto": "tcp",
        "setype": "ssh_port_t",
        "state": "absent"
    }

    # But it fails without `local` as it tries to remove port defined in
    # system policy
    $ sudo ansible -m seport -a 'ports=22 state=absent setype=ssh_port_t proto=tcp' localhost

    An exception occurred during task execution. To see the full traceback, use -vvv. The error was: ValueError: Port tcp/22 is defined in policy, cannot be deleted
    localhost | FAILED! => {
        "changed": false,
        "msg": "ValueError: Port tcp/22 is defined in policy, cannot be deleted\n"
    }

Signed-off-by: Petr Lautrbach <plautrba@redhat.com>

Signed-off-by: Petr Lautrbach <plautrba@redhat.com>
(cherry picked from commit 4c52fdb9d9)

Co-authored-by: Petr Lautrbach <plautrba@redhat.com>
2022-09-03 11:58:47 +02:00
..
action/system Move licenses to LICENSES/, run add-license.py, add LICENSES/MIT.txt (#5065) (#5068) 2022-08-05 13:17:19 +02:00
become Move licenses to LICENSES/, run add-license.py, add LICENSES/MIT.txt (#5065) (#5068) 2022-08-05 13:17:19 +02:00
cache Fix copyright lines (make sure 'Copyright' is there). (#5083) (#5084) 2022-08-05 22:45:15 +02:00
callback Adjust booleans in misc plugins. (#5161) (#5175) 2022-08-24 21:39:13 +02:00
connection Fix linting errors; fix some real bugs (#5111) (#5114) 2022-08-12 12:33:02 +02:00
doc_fragments Adjust booleans in doc fragments. (#5152) (#5168) 2022-08-24 20:46:40 +02:00
filter feat: Add crc32 filter (#5062) (#5140) 2022-08-21 22:08:42 +02:00
inventory Adjust booleans in misc plugins. (#5161) (#5175) 2022-08-24 21:39:13 +02:00
lookup Adjust booleans in misc plugins. (#5161) (#5175) 2022-08-24 21:39:13 +02:00
module_utils Update redfish module for compatibility with VirtualMedia resource location (#5124) (#5180) 2022-08-24 21:44:44 +02:00
modules seport: add local argument (#5203) (#5218) 2022-09-03 11:58:47 +02:00
test Fix more copyright lines, add more default copyright lines (#5095) (#5096) 2022-08-08 15:19:46 +02:00