A web-based frontend to WPKG. Based on wpkgExpress by Brian White. WPKG is an automated software deployment, upgrade and removal program for Windows.
Application settings ->
Settings of WPKG;Download XML file;config.xml to %SOFTWARE_NETLOGON%\WPKG\Config\%Revision%,
where:
%SOFTWARE_NETLOGON% - global variable containing the path to the WPKG script,
e.g.: \\fabrikam.com\NETLOGON;%Revision% - current version of the WPKG configuration file, e.g.,
the modification date: 2018.12.05.config.xml and change the following parameters:
settings_file_path and log_file_path to %SystemRoot%\\Temp;settings_file_name to wpkg-gpo.xml;logfilePattern to wpkg-gpo-[HOSTNAME]@[DD]-[MM]-[YYYY]-[hh]-[mm]-[ss].log;logLevel to 0x13;profiles_path to profiles.xml;hosts_path to hosts.xml.config.xml to %SOFTWARE_NETLOGON%\WPKG\Script\Logon,
where:
%SOFTWARE_NETLOGON% - global variable containing the path to the WPKG script,
e.g.: \\fabrikam.com\NETLOGON.Create a XML package file:
<?xml version="1.0" encoding="UTF-8"?>
<packages:packages xmlns:packages="http://www.wpkg.org/packages" xmlns:wpkg="http://www.wpkg.org/wpkg" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.wpkg.org/packages">
<package id="WPKG-CONFIG" name="WPKG Config" revision="2018.12.05" priority="10000" reboot="false">
<!-- Notes: WPKG configuration -->
<variable name="ConfigFile" value="config.xml"/>
<variable name="ProgramDir" value="%ProgramFiles%\Wpkg" architecture="x86"/>
<variable name="ProgramDir" value="%ProgramW6432%\Wpkg" architecture="x64"/>
<variable name="Revision" value="2018.12.05"/>
<variable name="RevI1" value="2018"/>
<variable name="RevI2" value="12"/>
<variable name="RevI3" value="05"/>
<check type="file" condition="datemodifynewerthan" path="%ProgramDir%\%ConfigFile%" value="%RevI1%-%RevI2%-%RevI3% 00:00:00"/>
<commands>
<command type="install" include="remove"/>
<command type="install" cmd="%COMSPEC% /C xcopy "%SOFTWARE_NETLOGON%\WPKG\Config\%Revision%\%ConfigFile%" "%ProgramDir%\" /E /Q /H /R /Y" timeout="60"/>
<command type="upgrade" include="install"/>
<command type="downgrade" include="install"/>
<command type="remove" cmd="%COMSPEC% /C del /F /Q "%ProgramDir%\%ConfigFile%"" timeout="30">
<condition>
<check type="file" condition="exists" path="%ProgramDir%\%ConfigFile%"/>
</condition>
</command>
</commands>
</package>
</packages:packages>
Revision, RevI1, RevI2 and RevI3;Application settings ->
Uploading XML;Application settings ->
Creating XML, paste this XML into the editor and click the Create button.profiles.xml and hosts.xml filesCreate a XML profile file:
<?xml version="1.0" encoding="UTF-8"?>
<profiles:profiles xmlns:profiles="http://www.wpkg.org/profiles" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.wpkg.org/profiles">
<profile id="WPKG_Common">
<!-- Notes: WPKG common profile. -->
<package package-id="WPKG-GP"/>
</profile>
</profiles:profiles>
profiles.xml;Create a XML host file:
<?xml version="1.0" encoding="UTF-8"?>
<hosts:wpkg xmlns:hosts="http://www.wpkg.org/hosts" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.wpkg.org/hosts">
<host name=".+" profile-id="WPKG_Common">
<!-- Notes: WPKG common host. -->
</host>
</hosts:wpkg>
hosts.xml;profiles.xml and hosts.xml to %SOFTWARE_NETLOGON%\WPKG\Script\Logon,
where:
%SOFTWARE_NETLOGON% - global variable containing the path to the WPKG script,
e.g.: \\fabrikam.com\NETLOGON.wpkg.js to %SOFTWARE_NETLOGON%\WPKG\Script\%Revision%,
where:
%SOFTWARE_NETLOGON% - global variable containing the path to the WPKG script,
e.g.: \\fabrikam.com\NETLOGON;%Revision% - current version of the WPKG script, e.g.: 1.3.1.wpkg.js to %SOFTWARE_NETLOGON%\WPKG\Script\Logon,
where:
%SOFTWARE_NETLOGON% - global variable containing the path to the WPKG script,
e.g.: \\fabrikam.com\NETLOGON.Create a XML package file:
<?xml version="1.0" encoding="UTF-8"?>
<packages:packages xmlns:packages="http://www.wpkg.org/packages" xmlns:wpkg="http://www.wpkg.org/wpkg" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.wpkg.org/packages">
<package id="WPKG-SCRIPT" name="WPKG Script" revision="1.3.1" priority="10000" reboot="false">
<!-- Notes: WPKG script -->
<variable name="ProgramDir" value="%ProgramFiles%\Wpkg" architecture="x86"/>
<variable name="ProgramDir" value="%ProgramW6432%\Wpkg" architecture="x64"/>
<variable name="Revision" value="1.3.1"/>
<variable name="RevI1" value="1"/>
<variable name="RevI2" value="3"/>
<variable name="RevI3" value="1"/>
<variable name="WpkgModifyDate" value="2014-05-14"/>
<variable name="WpkgScript" value="wpkg.js"/>
<chain package-id="WPKG-CONFIG"/>
<check type="file" condition="datemodifynewerthan" path="%ProgramDir%\%WpkgScript%" value="%WpkgModifyDate% 00:00:00"/>
<commands>
<command type="install" include="remove"/>
<command type="install" cmd="%COMSPEC% /C xcopy "%SOFTWARE_NETLOGON%\WPKG\Script\%Revision%\%WpkgScript%" "%ProgramDir%\" /E /Q /H /R /Y" timeout="60"/>
<command type="upgrade" include="install"/>
<command type="downgrade" include="install"/>
<command type="remove" cmd="%COMSPEC% /C del /F /Q "%ProgramDir%\%WpkgScript%"" timeout="30">
<condition>
<check type="file" condition="exists" path="%ProgramDir%\%WpkgScript%"/>
</condition>
</command>
</commands>
</package>
</packages:packages>
Revision, RevI1, RevI2, RevI3 and WpkgModifyDate;Application settings ->
Uploading XML;Application settings ->
Creating XML, paste this XML into the editor and click the Create button.WPKG directory structure:The structure of the directory WPKG located in the %SOFTWARE_NETLOGON%
WPKG
+-- Config
| +-- 2018.12.05
| +-- config.xml
+-- Script
+-- 1.3.1
| +-- wpkg.js
+-- Logon
+-- config.xml
+-- hosts.xml
+-- profiles.xml
+-- wpkg.js