community.mysql/plugins/module_utils/pymysql/optionfile.py
Laurent Indermuehle 04af62c400
Embed pymysql within the collection and use default test container
This change eliminates the need to install the connector on each
controlled node, as `pymysql` version 1.1.1 is now included. As a
result, we can safely assume its availability, thus simplifying the
testing process.

Also, I managed to remove the need for pre-built test containers. We
now use the default test containers from ansible-test.
2024-06-07 14:05:40 +02:00

21 lines
651 B
Python

import configparser
class Parser(configparser.RawConfigParser):
def __init__(self, **kwargs):
kwargs["allow_no_value"] = True
configparser.RawConfigParser.__init__(self, **kwargs)
def __remove_quotes(self, value):
quotes = ["'", '"']
for quote in quotes:
if len(value) >= 2 and value[0] == value[-1] == quote:
return value[1:-1]
return value
def optionxform(self, key):
return key.lower().replace("_", "-")
def get(self, section, option):
value = configparser.RawConfigParser.get(self, section, option)
return self.__remove_quotes(value)