Initial commit
This commit is contained in:
commit
b21a073034
10
createlinks
Normal file
10
createlinks
Normal file
|
@ -0,0 +1,10 @@
|
|||
#!/usr/bin/perl -w
|
||||
|
||||
use esmith::Build::CreateLinks qw(:all);
|
||||
|
||||
event_link("wpkg-init", "wpkg-update", "20");
|
||||
event_link("wpkg-init", "ipasserelle-update", "20");
|
||||
event_link("initialize-default-databases", "wpkg-update", "02");
|
||||
|
||||
templates2events("/home/e-smith/files/shares/wpkg/files/settings/wpkg-gp/Wpkg-GP.ini", qw(wpkg-update bootstrap-console-save));
|
||||
templates2events("/home/e-smith/files/shares/tools/files/scripts/conf.bat", qw(wpkg-update bootstrap-console-save));
|
53
ipasserelle-gp.spec
Normal file
53
ipasserelle-gp.spec
Normal file
|
@ -0,0 +1,53 @@
|
|||
%define version 0.0.1
|
||||
%define release 1.beta3
|
||||
%define name ipasserelle-gp
|
||||
|
||||
|
||||
Summary: Gestion de Parc iPasserelle
|
||||
Name: %{name}
|
||||
Version: %{version}
|
||||
Release: %{release}%{?dist}
|
||||
License: GPL
|
||||
Group: Networking/Daemons
|
||||
Source: %{name}-%{version}.tar.gz
|
||||
|
||||
BuildRoot: /var/tmp/%{name}-%{version}-%{release}-buildroot
|
||||
BuildArchitectures: noarch
|
||||
BuildRequires: e-smith-devtools
|
||||
|
||||
Requires: ipasserelle-base
|
||||
|
||||
%description
|
||||
This package helps you managing MS Windows workstations using WPKG
|
||||
and some other tools
|
||||
|
||||
%changelog
|
||||
* Fri Mar 16 2012 Daniel Berteaud <daniel@firewall-services.com> 0.0.1-1.sme
|
||||
- initial release
|
||||
|
||||
|
||||
%prep
|
||||
%setup -q -n %{name}-%{version}
|
||||
|
||||
%build
|
||||
perl createlinks
|
||||
%{__mkdir_p} root/home/e-smith/files/shares/wpkg/files/settings/wpkg-gp/
|
||||
|
||||
%install
|
||||
/bin/rm -rf $RPM_BUILD_ROOT
|
||||
(cd root ; /usr/bin/find . -depth -print | /bin/cpio -dump $RPM_BUILD_ROOT)
|
||||
/bin/rm -f %{name}-%{version}-filelist
|
||||
/sbin/e-smith/genfilelist $RPM_BUILD_ROOT \
|
||||
> %{name}-%{version}-filelist
|
||||
|
||||
%files -f %{name}-%{version}-filelist
|
||||
%defattr(-,root,root)
|
||||
|
||||
%clean
|
||||
rm -rf $RPM_BUILD_ROOT
|
||||
|
||||
%post
|
||||
|
||||
%preun
|
||||
|
||||
|
1
root/etc/e-smith/db/configuration/defaults/wpkg/status
Normal file
1
root/etc/e-smith/db/configuration/defaults/wpkg/status
Normal file
|
@ -0,0 +1 @@
|
|||
enabled
|
1
root/etc/e-smith/db/configuration/defaults/wpkg/type
Normal file
1
root/etc/e-smith/db/configuration/defaults/wpkg/type
Normal file
|
@ -0,0 +1 @@
|
|||
service
|
110
root/etc/e-smith/events/actions/wpkg-init
Normal file
110
root/etc/e-smith/events/actions/wpkg-init
Normal file
|
@ -0,0 +1,110 @@
|
|||
#!/usr/bin/perl -w
|
||||
|
||||
#----------------------------------------------------------------------
|
||||
# copyright (C) 2010 Firewall-Services
|
||||
# daniel@firewall-services.com
|
||||
#
|
||||
# This program is free software; you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation; either version 2 of the License, or
|
||||
# (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program; if not, write to the Free Software
|
||||
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
#
|
||||
# Technical support for this program is available from Mitel Networks
|
||||
# Please visit our web site www.mitel.com/sme/ for details.
|
||||
#----------------------------------------------------------------------
|
||||
|
||||
use esmith::util;
|
||||
use esmith::AccountsDB;
|
||||
use esmith::ConfigDB;
|
||||
|
||||
my $a = esmith::AccountsDB->open() or die "Couldn't open AccountsDB\n";
|
||||
my $c = esmith::ConfigDB->open() or die "Couldn't open ConfigDB\n";
|
||||
|
||||
my $srv = $c->get('wpkg') || die "wpkg service not found\n";
|
||||
my $pass = $srv->prop('UserPassword') || '';
|
||||
|
||||
if ($pass eq ''){
|
||||
$pass = `/usr/bin/openssl rand -base64 35 | tr -c -d '[:graph:]'`;
|
||||
$srv->set_prop('UserPassword', "$pass");
|
||||
}
|
||||
|
||||
# deploiement
|
||||
my $dep = $a->get("deploiement");
|
||||
|
||||
if (!$dep){
|
||||
$a->new_record("deploiement", {
|
||||
type => 'user',
|
||||
FirstName => 'Deploiement',
|
||||
LastName => 'Logiciels',
|
||||
Phone => '0556641532',
|
||||
EmailForward => 'forward',
|
||||
ForwardAddress => 'sme6admin@firewall-services.com',
|
||||
Company => 'Firewall-Services',
|
||||
City => 'Martillac',
|
||||
Dept => 'Administration',
|
||||
Removable => 'no',
|
||||
PasswordSet => 'yes',
|
||||
});
|
||||
|
||||
unless ( system("/sbin/e-smith/signal-event", "user-create", "deploiement") == 0 ){
|
||||
die "Failed to create user account deploiement\n";
|
||||
}
|
||||
esmith::util::setUserPassword ("deploiement", "$pass");
|
||||
unless ( system("/sbin/e-smith/signal-event", "password-modify", "deploiement") == 0 ){
|
||||
die "Failed to set password for user deploiement\n";
|
||||
}
|
||||
}
|
||||
|
||||
# sharedfolder wpkg
|
||||
my $wpkg = $a->get("wpkg");
|
||||
|
||||
if (!$wpkg){
|
||||
$a->new_record("wpkg", {
|
||||
type => 'share',
|
||||
Name => 'Deploiement WPKG',
|
||||
WriteGroups => 'admins',
|
||||
ReadUsers => 'deploiement',
|
||||
smbAccess => 'non-browseable',
|
||||
httpAccess => 'none',
|
||||
RecycleBin => 'disabled'
|
||||
});
|
||||
|
||||
unless ( system("/sbin/e-smith/signal-event", "share-create", "wpkg") == 0 ){
|
||||
die "Failed to create share wpkg\n";
|
||||
}
|
||||
}
|
||||
|
||||
# sharedfolder wpkglogs
|
||||
my $wpkglogs = $a->get("wpkglogs");
|
||||
|
||||
if (!$wpkglogs){
|
||||
$a->new_record("wpkglogs", {
|
||||
type => 'share',
|
||||
Name => 'Journaux WPKG',
|
||||
WriteGroups => 'admins',
|
||||
WriteUsers => 'deploiement',
|
||||
smbAccess => 'non-browseable',
|
||||
httpAccess => 'none',
|
||||
RecycleBin => 'disabled'
|
||||
});
|
||||
|
||||
unless ( system("/sbin/e-smith/signal-event", "share-create", "wpkglogs") == 0 ){
|
||||
die "Failed to create share wpkglogs\n";
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
foreach my $share (qw/wpkg wpkglogs tools/) {
|
||||
unless ( system("/sbin/e-smith/signal-event", "share-modify-files", "$share") == 0 ){
|
||||
die "Failed to create share $share\n";
|
||||
}
|
||||
}
|
7
root/etc/e-smith/events/actions/wpkg-update-packages
Normal file
7
root/etc/e-smith/events/actions/wpkg-update-packages
Normal file
|
@ -0,0 +1,7 @@
|
|||
#!/bin/bash
|
||||
|
||||
USER=$(db configuration getprop wpkg RsyncUser || echo $(db configuration get DomainName))
|
||||
PASS=$(db configuration getrpop wpkg RsyncPassword || echo secret)
|
||||
SERVER=$(db configuration getprop wpkg RsyncServer || echo not.set)
|
||||
|
||||
RSYNC_PASSWORD=$PASS /usr/bin/rsync -rtPz $USER@$SERVER /home/e-smith/files/shares/deploiement/files/
|
|
@ -0,0 +1,27 @@
|
|||
REM @echo off
|
||||
{
|
||||
|
||||
my $ip = $InternalInterface{'IPAddress'};
|
||||
my $dom = $DomainName;
|
||||
my $wg = $smb{'Workgroup'};
|
||||
my $name = $SystemName;
|
||||
my $url = "https://auth." . $DomainName;
|
||||
my $comp = $ldap{'defaultCompany'};
|
||||
|
||||
$OUT .=<<"EOF";
|
||||
|
||||
SET IPASSERELLE_IP=$ip
|
||||
SET IPASSERELLE_DOMAIN=$dom
|
||||
SET IPASSERELLE_NT_DOMAIN=$wg
|
||||
SET IPASSERELLE_NAME=$name
|
||||
SET IPASSERELLE_HOME_URL=$url
|
||||
SET COMPANY=$comp
|
||||
SET SOFTWARE=\\\\%IPASSERELLE_IP%\\wpkg\\softwares
|
||||
SET SETTINGS=\\\\%IPASSERELLE_IP%\\wpkg\\settings
|
||||
|
||||
EOF
|
||||
|
||||
# Unix2dos
|
||||
$OUT =~ s/\n/\r\n/g;
|
||||
|
||||
}
|
Binary file not shown.
|
@ -0,0 +1,32 @@
|
|||
{
|
||||
|
||||
my $ip = $InternalInterface{'IPAddress'};
|
||||
my $wg = $smb{'Workgroup'};
|
||||
my $secret = $wpkg{'UserPassword'} || 'secret';
|
||||
|
||||
$OUT .=<<"EOF";
|
||||
|
||||
[WpkgConfig]
|
||||
EnableViaLGP = 1
|
||||
IgnoreGroupPolicy = 0
|
||||
DisableAtBootUp = 0
|
||||
WpkgCommand = \\\\$ip\\wpkg\\wpkg.js /synchronize /debug /nonotify
|
||||
WpkgVerbosity = 1
|
||||
WpkgNetworkUsername = $wg\\deploiement
|
||||
WpkgNetworkPassword = "clear:$secret"
|
||||
WpkgMaxReboots = 10
|
||||
WpkgRebootPolicy = force
|
||||
WpkgExecuteByNonAdmins = 0
|
||||
WpkgExecuteByLocalUsers = 1
|
||||
WpkgActivityIndicator = 1
|
||||
|
||||
[EnvironmentVariables]
|
||||
SOFTWARE = \\\\$ip\\wpkg\\softwares
|
||||
SETTINGS = \\\\$ip\\wpkg\\settings
|
||||
|
||||
EOF
|
||||
|
||||
$OUT =~ s/\n/\r\n/g;
|
||||
|
||||
}
|
||||
|
|
@ -0,0 +1,6 @@
|
|||
:: Script d'initialisation d'une station de travail
|
||||
|
||||
cd "%~dp0"
|
||||
call conf.bat
|
||||
cscript "\\%IPASSERELLE_IP%\wpkg\wpkg.js" /debug /install:wpkg-gp
|
||||
|
Loading…
Reference in New Issue
Block a user