#!/usr/bin/perl

# add-puppetclass.pl

use Net::LDAP;
use Net::LDAP::Util qw(ldap_error_text ldap_error_name);

# put your ldap info here

my $ldaphost = "";
my $ldapuser = "";
my $passwd = "";
my $base = "";


if ($#ARGV != 1) {
print "Usage: $0 fqdn puppetclass\n";
exit 1;
}

my $fqdn = $ARGV[0];
my $class = $ARGV[1];


$ldap = Net::LDAP->new ( "$ldaphost" ) or die "$@";

$mesg = $ldap->bind ( "$ldapuser",
password => "$passwd",
version => 3 );

if ($mesg->code) {
die "An error occurred binding to the LDAP server: "
.ldap_error_text($mesg->code)."\n";
}


$result = $ldap->modify("cn=$fqdn,$base",
add => [ 'puppetclass' => $class
]
);

if ($result->code) {
die "An error occurred adding the class $class to host $fqdn: "
.ldap_error_text($result->code)."\n";
}



$ldap->unbind;