Separate roles into modular parts that are interdependent
In Python 2.x, when creating classes, you need to explicitly have them inherit from object, like this: class MyClass(object):. If you're using Python 3.x, then you can write them like this: class MyClass:

Secondly, the general style for naming in Python is snake_case for functions and variables, and PascalCase for classes. If you have a constant variable, then it should be in UPPER_SNAKE_CASE.

The following line of code in your role.reload function can simply be changed to return 0:

else:
    return 0


This also applies to your role.check function. else: return "" can be changed to return "".

Also, I noticed that you're returning either 1 or 0 in your role.reload function. Do you mean to be returning True or False? This also applies to your role.init function as well.

Finally, in your role.check function, the below block of code can be changed to this: return self.funcToCall(*self.args) if self.moduleName else self.checkFunc(*self.args).

if self.moduleName:
    results = self.funcToCall(*self.args)
else:
    results = self.checkFunc(*self.args)
return results