# Copyright 2022 Acme Gating, LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
#      http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.

from ansible.module_utils.basic import AnsibleModule

def run_module():
    module = AnsibleModule(
        argument_spec=dict(
            script=dict(type='str', required=True),
            args=dict(type='dict'),
        )
    )
    args = module.params['args']
    if not args:
        args = {}
    local_vars = args.copy()
    local_vars['exit_json'] = module.exit_json
    local_vars['fail_json'] = module.fail_json

    exec(module.params['script'], globals(), local_vars)
    module.exit_json(changed=False)


def main():
    run_module()


if __name__ == '__main__':
    main()