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