A web-based frontend to WPKG
WPKG Express 2 based on wpkgExpress by Brian White ©2009.
WPKG is an automated software deployment, upgrade and removal program for Windows.
See the project presentation.
- User authentication by username and password and LDAP security group membership;
- Generates XML configuration files for WPKG:
packages.xml
- Defines software packages (commands for WPKG to install/uninstall programs, etc.);profiles.xml
- Specifies which packages will be installed/executed for each WPKG profile;hosts.xml
- Mappings between machine names and profile names;config.xml
- Configuration settings for runtime behavior of wpkg.js.
- Generates configuration files for Windows Post-Install Wizard:
config.js
- Configuration file for WPI;profiles.xml
- Specifies which packages will be installed/executed for each WPKG profile;hosts.xml
- Mappings between machine names and profile names;config.xml
- Configuration settings for runtime behavior of wpkg.js.
- Creates a package, profile and host based on a template;
- Creates a profile and host based on a template and list of computers from LDAP;
- Creates copy of a package, profile and host;
- Preview XML configuration files for WPKG with validating XML schema;
- Download and upload XML configuration files for WPKG with validating XML schema;
- Creates and edit XML configuration for WPKG using an editor with validating XML schema and autocompletion based on XML schema;
- Build a relationship graph for package, profile, and host;
- Build a relationship graph for host by name;
- Maintaining archive version of the package with the ability to switch to version;
- Disable unused profile and host based on list of computers from LDAP;
- Parsing WPKG log files with sending report to administrators E-mail;
- Parsing WPKG report and client database files;
- Viewing the version chart of the installed package;
- Recycle Bin with the ability to recover deleted data of package, profile or host.
- Apache module
mod_rewrite
; - PHP
5.4
or greater (up to7.4
); - PHP Extensions:
pdo
,ldap
,bz2
,xml
andopenssl
; - Ldap server (
Active Directory
,Samba
orOpenLDAP
) to authenticate (onlyActive Directory
) and get a list of computers to createProfiles
andHosts
based on a template; - Database server (
MySQL
orPostgres
).
- Composer to install the application;
- GraphViz to create dependency graph of
Packages
,Profiles
andHosts
; - smbclient to access log files and databases of client computers for parsing content;
- SMTP Server to send mail notifications to the administrator.
- Install WPKG Express 2 using composer:
composer create-project anklimsk/wpkg-express-2 /var/www/wpkg
, where/var/www/wpkg
is Document Root directory. Or just download the latest release from releases and extract the archive to the Document Root directory. - Set the DocumentRoot
directive for the domain to
/var/www/wpkg/app/webroot
. - Make sure that an
.htaccess
override is allowed and thatAllowOverride
is set toAll
for the correct DocumentRoot. For users having apache 2.4 and above, you need to modify the configuration file for yourhttpd.conf
or virtual host configuration to look like the following:
DocumentRoot /var/www/wpkg/app/webroot
<Directory /var/www/wpkg>
Options FollowSymLinks
AllowOverride All
Require all granted
</Directory>
- If you are using OPcache you should set the opcache.blacklist_filename configuration value with a file path to your blacklist (View cache):
- For example, create a new file:
/etc/php/7.4/apache2/opcache-blacklist.txt
; - Specify the path for excluding files, e.g.:
/var/www/wpkg/app/tmp/cache/views/wpkg_*.php
; - Add the blacklist file path to your
php.ini
file:opcache.blacklist_filename=/etc/php/7.4/apache2/opcache-blacklist.txt
; - Reload apache configuration:
sudo service apache2 reload
.
- Navigate to the directory
app
application (/var/www/wpkg/app
), and run the following command:sudo ./Console/cake CakeInstaller
to start interactive shell of installer. - After the installation process is complete, in your browser go to the link
https://wpkg.fabrikam.com/settings
to change settings of application, wherehttps://wpkg.fabrikam.com
- base URL of installited WPKG Express 2. - Fill in the fields in the
Authentication
group settings (if required) and click theSave
button.
- List of silent install, upgrade and uninstall configurations for many programs;
- Running WPKG as a Group Policy Extension (forked from cleitet/wpkg-gp);
- GUI for wpkg-gp.
Part of: WPKG logo was contributed by Eric Le Henaff
GNU GENERAL PUBLIC LICENSE Version 3