basic.py 文件源码

python
阅读 30 收藏 0 点赞 0 评论 0

项目:ansible-provider-docs 作者: alibaba 项目源码 文件源码
def _check_arguments(self, check_invalid_arguments, spec=None, param=None, legal_inputs=None):
        self._syslog_facility = 'LOG_USER'
        unsupported_parameters = set()
        if spec is None:
            spec = self.argument_spec
        if param is None:
            param = self.params
        if legal_inputs is None:
            legal_inputs = self._legal_inputs

        for (k, v) in list(param.items()):

            if k == '_ansible_check_mode' and v:
                self.check_mode = True

            elif k == '_ansible_no_log':
                self.no_log = self.boolean(v)

            elif k == '_ansible_debug':
                self._debug = self.boolean(v)

            elif k == '_ansible_diff':
                self._diff = self.boolean(v)

            elif k == '_ansible_verbosity':
                self._verbosity = v

            elif k == '_ansible_selinux_special_fs':
                self._selinux_special_fs = v

            elif k == '_ansible_syslog_facility':
                self._syslog_facility = v

            elif k == '_ansible_version':
                self.ansible_version = v

            elif k == '_ansible_module_name':
                self._name = v

            elif k == '_ansible_socket':
                self._socket_path = v

            elif check_invalid_arguments and k not in legal_inputs:
                unsupported_parameters.add(k)

            # clean up internal params:
            if k.startswith('_ansible_'):
                del self.params[k]

        if unsupported_parameters:
            msg = "Unsupported parameters for (%s) module: %s" % (self._name, ','.join(sorted(list(unsupported_parameters))))
            if self._options_context:
                msg += " found in %s." % " -> ".join(self._options_context)
            msg += " Supported parameters include: %s" % (','.join(sorted(spec.keys())))
            self.fail_json(msg=msg)
        if self.check_mode and not self.supports_check_mode:
            self.exit_json(skipped=True, msg="remote module (%s) does not support check mode" % self._name)
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号