Returns a `gocd_cli.settings.Settings` configured for settings file

    The settings will be read from environment variables first, then
    it'll be read from the first config file found (if any).

    Environment variables are expected to be in UPPERCASE and to be prefixed
    with `GOCD_`.

    Args:
      section: The prefix to use for reading environment variables and the
        name of the section in the config file. Default: gocd
      settings_path: Possible paths for the configuration file.
        Default: `('~/.gocd/gocd-cli.cfg', '/etc/go/gocd-cli.cfg')`

    Returns:
        `gocd_cli.settings.Settings` instance

def get_settings(section='gocd', settings_paths=('~/.gocd/gocd-cli.cfg', '/etc/go/gocd-cli.cfg')):
    """Returns a `gocd_cli.settings.Settings` configured for settings file

    The settings will be read from environment variables first, then
    it'll be read from the first config file found (if any).

    Environment variables are expected to be in UPPERCASE and to be prefixed
    with `GOCD_`.

    Args:
      section: The prefix to use for reading environment variables and the
        name of the section in the config file. Default: gocd
      settings_path: Possible paths for the configuration file.
        Default: `('~/.gocd/gocd-cli.cfg', '/etc/go/gocd-cli.cfg')`

    Returns:
        `gocd_cli.settings.Settings` instance
    """
    if isinstance(settings_paths, basestring):
        settings_paths = (settings_paths,)

    config_file = next((path for path in settings_paths if is_file_readable(path)), None)
    if config_file:
        config_file = expand_user(config_file)

    return Settings(prefix=section, section=section, filename=config_file)