add cron script to sync plc db and rt every hour
[monitor.git] / rt3 / adduserstort.pl
1 #!/usr/bin/perl -w
2 #
3 # rtadduser: Batch add local users to RT based on a csv file named users_data.csv located # in the same directory
4 # Mohamed El Erian <mohamed.elerian@britishcouncil.org.eg,melerian@gmail.com>
5 # Partly based on script provided by David Maze <dmaze@cag.lcs.mit.edu>
6 # File format is username,realname,email_address,organization,address1,city,country
7 # $Id$
8 #
9
10 use lib "/usr/lib";
11 use strict;
12 use English;
13 use RT::Interface::CLI qw(CleanEnv);
14 use RT::User;
15
16 CleanEnv();
17 RT::LoadConfig();
18 RT::Init();
19 my @raw_data;
20 my $bc_user = '';
21 my $username = '';
22 my $realname = '';
23 my $email_address = '';
24 my $organization = '';
25 my $address1 = '';
26 my $city = '';
27 my $country = '';
28
29 print $ARGV[0];
30
31 open(USERS_DATA, $ARGV[0]) || die("Could not open file!");
32 @raw_data=<USERS_DATA>;
33 close(USERS_DATA);
34 foreach $bc_user (@raw_data)
35 {
36  chop($bc_user);
37  ($email_address,$realname,$organization)=split(/\,/,$bc_user);
38
39   my $UserObj = new RT::User(RT::SystemUser);
40   print "adding user: $email_address\n";
41   $UserObj->Create(Name => $email_address,
42              RealName => $realname,
43              EmailAddress => $email_address,
44              Password => 'Passw0rd',
45              Organization => $organization,
46              Privileged => 0);
47              #Address1 => $address1,
48              #City => $city,
49              #Country => country,
50 }
51
52