slacktivate.input package

Submodules

slacktivate.input.config module

class slacktivate.input.config.SlacktivateConfig(config_data)

Bases: object

property channels
classmethod from_specification(stream=None, filename=None, contents=None, config_data=None)
Parameters
property groups
property settings
property users

slacktivate.input.helpers module

slacktivate.input.helpers.find_jinja2_template_fields(jinja2_pattern)
Parameters

jinja2_pattern (str) –

Return type

List[str]

slacktivate.input.helpers.flatten(lst, as_generator=False)
Parameters
  • lst (Iterable) –

  • as_generator (bool) –

Return type

Union[Generator, List]

slacktivate.input.helpers.parseable_jinja2(s)
Parameters

s (str) –

Return type

bool

slacktivate.input.helpers.parseable_yaql(s)
Parameters

s (str) –

Return type

bool

slacktivate.input.parsing module

class slacktivate.input.parsing.ChannelConfig(value)

Bases: slacktivate.input.parsing.SlacktivateConfigSection

compute(users, groups, vars)
Parameters
Return type

List[slacktivate.input.parsing.ChannelConfig]

exception slacktivate.input.parsing.SlacktivateConfigError

Bases: ValueError

class slacktivate.input.parsing.SlacktivateConfigSection(value, **kwargs)

Bases: collections.UserDict

class slacktivate.input.parsing.SlacktivateJSONEncoder(*, skipkeys=False, ensure_ascii=True, check_circular=True, allow_nan=True, sort_keys=False, indent=None, separators=None, default=None)

Bases: json.encoder.JSONEncoder

default(obj)

Implement this method in a subclass such that it returns a serializable object for o, or calls the base implementation (to raise a TypeError).

For example, to support arbitrary iterators, you could implement default like this:

def default(self, o):
    try:
        iterable = iter(o)
    except TypeError:
        pass
    else:
        return list(iterable)
    # Let the base class default method raise the TypeError
    return JSONEncoder.default(self, o)
class slacktivate.input.parsing.UserGroupConfig(value)

Bases: slacktivate.input.parsing.SlacktivateConfigSection

compute(users, vars)
Parameters
  • users (Union[list, dict]) –

  • vars (Optional[Dict[str, str]]) –

Return type

List[slacktivate.input.parsing.UserGroupConfig]

class slacktivate.input.parsing.UserSourceConfig(value)

Bases: slacktivate.input.parsing.SlacktivateConfigSection

load(vars, alternate_emails=None)
Parameters
  • vars (Optional[Dict[str, str]]) –

  • alternate_emails (Optional[Dict[str, List[str]]]) –

Return type

list

slacktivate.input.parsing.parse_specification(stream=None, contents=None, filename=None)
Parameters
  • stream (Optional[io.TextIOBase]) –

  • contents (Optional[str]) –

  • filename (Optional[str]) –

Return type

Optional[dict]

Module contents