Some shells apparently don't like &> output redirects (ESXi 5.0)
FEATURE - Add support for infiniband interfaces

Issue #444. This patch adds support for the infiniband MAC format,
though there may be more required to properly support the ib
interfaces.
Lots of fixes related to PXE booting ESXi profiles without systems:

* write template files for distros on a full sync
* add all settings variables to dictionary for templating pxe configs
* change img_path to local_img_path when it references the full path
  to the tftp root directory (ie. /var/lib/tftpboot/images) instead
  of what a tftp client would see (ie. /images/...)
* allow template files to be written into the tftp root directory, no
  longer restricting just to /var/www/cobbler/rendered
* minor fix to pxeprofile_esxi template
Normalizing some paths to make sure file writes are safe
Adding bootcfg templates for ESXi 5.0/5.1

To use these, the following line needs to be added to the
--template-files field for the given esxi distro:

For 5.0:
/etc/cobbler/pxe/bootcfg_profile_esxi5.template=$local_img_path/cobbler-boot.cfg
For 5.1:
/etc/cobbler/pxe/bootcfg_profile_esxi51.template=$local_img_path/cobbler-boot.cfg
FEATURE - adding ability to grab templated scripts

* Moved scripts/ directory to bin/, since those are all pre-packaged
  executable scripts and /usr/bin is mainly where they go
* Added new scripts/ directory, which will go into /var/lib/cobbler
  alongside kickstarts and snippets. This contains the first script
  for running preseed late-commands.
* Modified sample.seed to call that script
* Modified a few snippets to make them work better with debian/
  ubuntu when using the new templated script functionality
* Minor fix to init script (config/cobblerd) to not use bash-specific
  language constructs, per pull request #461.
Fixing minor whoops in setup.py and adding new directories to manifest
Fixing up network config and adding an early script for ubuntu
FEATURE - IPv6 DNS support for manage_bind.py

Written by tonykew: https://github.com/cobbler/cobbler/issues/463
Minor check/reposync fixes related to apt repos
This patch adds setting the $ORGIN for all reverse resolution IPv6 zones for
any user provided zone templates, not just the default template.
This makes a better default $ORIGIN value, and without this origin,
any cobbler records are wrong.

You can always add a different $ORIGIN to the user provided template, but
this should be done after including the hosts from cobbler e.g.

\$TTL 300
@                       IN      SOA     $cobbler_server. nobody.example.com. (
                                        $serial   ; Serial
                                        600         ; Refresh
                                        1800         ; Retry
                                        604800       ; Expire
                                        300          ; TTL
                                        )

                        IN      NS      $cobbler_server.

$host_record

\$ORIGIN .
1.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.c.b.a.9.8.7.6.5.4.3.2.1.1.0.0.2.ip6.arpa. IN PTR  myhost.nobody.example.com.

Tony Kew
Adding Debian Wheezy to the distro signatures

Alternate for pull #472, since that was based on 2.2.3 code.
FEATURE - adding per-interface gateways and updated post snippets
FEATURE - repo improvements

* Adding full repo data to metadata available in kickstart templating
  so that we can begin to move away from the magic $yum... variables.
* The above also allows us to create local repo lines in preseeds,
  which is now a new snippet (preseed_apt_repo_config). A late-command
  version could be used to create a 'clean' sources.list too.
* Added apt-specific fields to repo objects in order to make it
  much easier and saner to sync apt repos. Rather than one repo folder
  per dist (like it was before), multiple dists can now go in one folder
  which is how it is on actual apt mirror sites. Also added the option
  to specify multiple apt components (ie. main, restricted, universe) so
  those will all go into the same folder as the dists.
* Modified signatures import so that the new apt repos are created per
  the new model from above.
Fixed syntax error from previous commit
Moving the repo_data logic into the utils.blender function

This makes the repo data available to any template function that
calls blender (which is most of them) as opposed to having to copy
the logic into each individual function
First implementation of CNAMEs support working!

Preliminarily tested on the test bench, haven't tested on production system.
Slight changes with field_info.py
1)  __pretty_print_cname_records() now checks for the existence of dns_name and warns user to add it on the specific system, it skips the host without dns_name but still writes the zone file for the rest of the hosts

2) try/catch added for split() calls

3) __pretty_print_cname_records() now displays a warning for hosts without a dns_name. It previously skipped it wihout any verbosity.
Comments added!