Difference between revisions of "WPKG"
m (→Changing WPKG Client settings) |
m |
||
Line 1: | Line 1: | ||
+ | = Initial WPKG Client deployment = | ||
+ | |||
+ | WPKG Client is available as a MSI package. | ||
+ | |||
+ | It can be installed silently from command line or in a script like below: | ||
+ | |||
+ | <source lang="dos"> | ||
+ | msiexec /norestart /qn /i "%SOFTWARE%\WPKG\WPKG Client 1.2.1.msi" ALLUSERS=1 SETTINGSFILE="%SOFTWARE%\WPKG\settings.xml" | ||
+ | </source> | ||
+ | |||
+ | |||
+ | If you have [wpkg.js] already configured, you can simply do: | ||
+ | |||
+ | <source lang="dos"> | ||
+ | cscript \\path\to\wpkg.js /synchronize /quiet | ||
+ | </source> | ||
+ | |||
+ | |||
= WPKG Client upgrade = | = WPKG Client upgrade = | ||
Line 66: | Line 84: | ||
− | + | = Other = | |
I use this setup from now to install all the stuff with a single command; I've simply build up a batch file that defines the same environment variable defined in settings.xml and start directly wpkg.js, as: | I use this setup from now to install all the stuff with a single command; I've simply build up a batch file that defines the same environment variable defined in settings.xml and start directly wpkg.js, as: | ||
Line 101: | Line 119: | ||
</package> | </package> | ||
</source> | </source> | ||
− | |||
[[Category:Silent Installers]] | [[Category:Silent Installers]] |
Revision as of 20:27, 20 April 2008
Contents
Initial WPKG Client deployment
WPKG Client is available as a MSI package.
It can be installed silently from command line or in a script like below:
msiexec /norestart /qn /i "%SOFTWARE%\WPKG\WPKG Client 1.2.1.msi" ALLUSERS=1 SETTINGSFILE="%SOFTWARE%\WPKG\settings.xml"
If you have [wpkg.js] already configured, you can simply do:
cscript \\path\to\wpkg.js /synchronize /quiet
WPKG Client upgrade
Computer scientists love recursion, or bootstrap, so this it a try to write a WPKG xml file that... installs itself.
Some theory first.
Upgrade will not work if WPKG service is running. Therefore, you have to kill WPKGsrv.exe process first. On XP, it can be done with taskkill
command; on Windows 2000, which doesn't have taskkill
command, you can use an external pskill
command.
<?xml version="1.0" encoding="UTF-8"?>
<packages>
<package
id="wpkg_client"
name="WPKG Client 1.2.1"
revision="6"
reboot="false"
priority="10">
<check type="uninstall" condition="exists" path="WPKG" />
<check type="file" condition="sizeequals" path="%PROGRAMFILES%\wpkg\wpkginst.exe" versionequalto="1.0.0.8" />
<install cmd='cmd /C start C:\wpkg\software\WPKG\wpkg_upgrade.bat' />
<upgrade cmd='cmd /C start C:\wpkg\software\WPKG\wpkg_upgrade.bat' />
</package>
</packages>
<!-- uncomment whichever is appropriate below, depending on your client version -->
<!-- <remove cmd='msiexec /qn /x{49676893-9829-4674-953D-1107C6B2C127}' /> --> <!-- 1.0rc2 -->
<!-- <remove cmd='msiexec /qn /x{2F7AB97F-17EC-4128-9BD1-903FC71F1B52}' /> --> <!-- 1.2rc6 -->
<!-- <remove cmd='msiexec /qn /x{D6D68FEC-0044-4E2A-9333-6C4BC1D5B1DE}' /> --> <!-- 1.2rc5 -->
</package>
Here is wpkg_upgrade.bat
script:
taskkill /F /IM WPKGSrv.exe
ping -n 1 127.0.0.1 >nul
msiexec /norestart /qn /i "%SOFTWARE%\WPKG\WPKG Client 1.2.1.msi" ALLUSERS=1 SETTINGSFILE="%SOFTWARE%\WPKG\settings.xml"
exit
Changing WPKG Client settings
<package
id="wpkg-settings"
name="WPKG Settings"
revision="5"
priority="5"
reboot="false"
execute="once">
<depends package-id="wpkg"/>
<install cmd='"%PROGRAMFILES%\WPKG\wpkginst.exe" --SETTINGSFILE="%SOFTWARE%\WPKG\settings.xml"' />
<upgrade cmd='"%PROGRAMFILES%\WPKG\wpkginst.exe" --SETTINGSFILE="%SOFTWARE%\WPKG\settings.xml"' />
<remove cmd='echo "nothing"' />
</package>
Other
I use this setup from now to install all the stuff with a single command; I've simply build up a batch file that defines the same environment variable defined in settings.xml and start directly wpkg.js, as:
:: Startup script for wpkg, for the first installation
::
:: These are not (still) defined elsewhere, define it.
::
set WPKGROOT=\\FILE\wpkg
set SOFTWARE=\\MEDIA\Software
set VPSERVER=MORPHEUS
:: Call directly wpkg.js, note the %* at the end, that permit to add custom parameters...
::
cscript %WPKGROOT%\wpkg.js /synchronize %*
install Log for computers
<package id="wpkglog" name="wpkg.xml files from workstations" revision="1" priority="0" execute="always">
<install timeout="15" cmd='cmd /C copy /Y "%SYSTEMROOT%\system32\wpkg.xml" "\\serwer\hostlogs\%COMPUTERNAME%-wpkg.xml"' />
</package>
remove wpkg.xml
<package id="wpkgxmlremove" name="wpkg.xml remove" revision="1" priority="0" execute="once">
<install timeout="15" cmd='cmd /C del /Q "%SYSTEMROOT%\system32\wpkg.xml"' />
</package>