GithubHelp home page GithubHelp logo

tohuwabohu / puppet-autoconfig Goto Github PK

View Code? Open in Web Editor NEW
0.0 2.0 0.0 28 KB

Puppet module to provide auto-discovery and auto-configuration for service clients

License: Apache License 2.0

Ruby 32.45% Puppet 50.96% HTML 16.59%
thunderbird puppet autoconfig auto-discovery

puppet-autoconfig's Introduction

autoconfig

Overview

Puppet module to provide auto-discovery functionality for clients of certain services. At the moment, the module supports only Autoconfiguration for Thunderbird.

Usage

Setup the Thunderbird auto-configuration for a given domain. This will create all required files on disk which are expected by Thunderbird when looking up the mail server configuration settings for the email domain example.com:

autoconfig::thunderbird { 'example.com': }

In order to make the configuration on disk accessible to Thunderbird, a web server vhost has to be provided which will accept requests for the autoconfig.example.com domain and serve the content created by this module. The vhost configuration is covered in the next section.

To use a custom mail server configuration you can provide your own file template via

autoconfig::thunderbird { 'example.com':
  template => 'path/to/custom/template',
}

Vhost configuration

The module relies on a .htaccess file which maps multiple vhosts to one common directory structure. If you're using the puppetlabs/apache module, the following vhost would work

$domains = [
  'foo.com',
  'bar.com',
]

$autoconfig_domains = prefix($domains, $autoconfig::params::thunderbird_subdomain)

apache::vhost { $autoconfig_domains:
  port           => '80',
  serveradmin    => '[email protected]',
  docroot        => $autoconfig::www_root,
  manage_docroot => false,
  options        => [ 'FollowSymLinks' ],
  override       => [ 'All' ],
  access_log     => false,
  error_log_file => 'vhost_autoconfig_error.log',
}

This will make the email configuration for foo.com and bar.com available to Thunderbird.

Limitations

The module has been tested on the following operating systems. Testing and patches for other platforms are welcome.

  • Debian Linux 6.0 (Squeeze)

Build Status

Contributing

  1. Fork it
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Add some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Create new Pull Request

puppet-autoconfig's People

Contributors

tohuwabohu avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.