Intrusion Exploit
Server: LiteSpeed
System: Linux cisadane.iixcp.rumahweb.net 5.14.0-427.42.1.el9_4.x86_64 #1 SMP PREEMPT_DYNAMIC Fri Nov 1 14:58:02 EDT 2024 x86_64
User: lenf4658 (1805)
PHP: 8.4.19
Disabled: NONE
Upload Files
File: //lib/python3.9/site-packages/ansible_collections/microsoft/ad/plugins/action/domain_controller.py
# Copyright (c) 2022 Ansible Project
# GNU General Public License v3.0+ (see COPYING or https://www.gnu.org/licenses/gpl-3.0.txt)

import typing as t

from ..plugin_utils._module_with_reboot import ActionModuleWithReboot


class ActionModule(ActionModuleWithReboot):
    def __init__(self, *args: t.Any, **kwargs: t.Any) -> None:
        super().__init__(*args, **kwargs)
        self._ran_once = False

    def _ad_should_rerun(self, result: t.Dict[str, t.Any]) -> bool:
        ran_once = self._ran_once
        self._ran_once = True

        if ran_once or not result.get("_do_action_reboot", False):
            return False

        if self._task.check_mode:
            # Assume that on a rerun it will not have failed and that it
            # ran successfull.
            result["failed"] = False
            result.pop("msg", None)
            return False

        else:
            return True

    def _ad_process_result(self, result: t.Dict[str, t.Any]) -> t.Dict[str, t.Any]:
        result.pop("_do_action_reboot", None)

        return result