You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@vcl.apache.org by jf...@apache.org on 2019/07/08 19:12:43 UTC
[vcl] branch develop updated: install_perl_libs.pl: -added to
@LINUX_PACKAGES -perl-Frontier-RPC -perl-Frontier-RPC-Client
-perl-LWP-Protocol-https -perl-Mo -perl-Object-InsideOut
-perl-Scalar-List-Utils -perl-Expect -added to @PERL_MODULES -Crypt::CBC
-IO::String -Text::CSV_XS -removed from @PERL_MODULES -DBI -Mail::Mailer
-RPC::XML -Term::ANSIColor -Time::HiRes -URI -YAML
This is an automated email from the ASF dual-hosted git repository.
jfthomps pushed a commit to branch develop
in repository https://gitbox.apache.org/repos/asf/vcl.git
The following commit(s) were added to refs/heads/develop by this push:
new 1e98853 install_perl_libs.pl: -added to @LINUX_PACKAGES -perl-Frontier-RPC -perl-Frontier-RPC-Client -perl-LWP-Protocol-https -perl-Mo -perl-Object-InsideOut -perl-Scalar-List-Utils -perl-Expect -added to @PERL_MODULES -Crypt::CBC -IO::String -Text::CSV_XS -removed from @PERL_MODULES -DBI -Mail::Mailer -RPC::XML -Term::ANSIColor -Time::HiRes -URI -YAML
1e98853 is described below
commit 1e98853d11ccc0f0213974fa37eba2f2e37ed424
Author: Josh Thompson <jf...@ncsu.edu>
AuthorDate: Mon Jul 8 15:10:55 2019 -0400
install_perl_libs.pl:
-added to @LINUX_PACKAGES
-perl-Frontier-RPC
-perl-Frontier-RPC-Client
-perl-LWP-Protocol-https
-perl-Mo
-perl-Object-InsideOut
-perl-Scalar-List-Utils
-perl-Expect
-added to @PERL_MODULES
-Crypt::CBC
-IO::String
-Text::CSV_XS
-removed from @PERL_MODULES
-DBI
-Mail::Mailer
-RPC::XML
-Term::ANSIColor
-Time::HiRes
-URI
-YAML
INSTALLATION:
-updated 2.5 to 2.5.1
-small changes to initial paragraph
-removed Apache HTTP v1.3 as supported web server version
-added php-gettext as required php module
-added DBD::MySQL as required perl module
-added Net::Ping::External as required perl module
README:
-updated 2.5 to 2.5.1
-removed Apache HTTP v1.3 as supported web server version
-removed RHEL 6.8 as supported OS version
-updated supported CentOS version from 7.3 to 7.6.1810
-added DBD::MySQL and Net::Ping::External to required perl modules
-removed Windows XP and Windows Server 2003 from management node conditional system requirements
-removed Jabber notifications from management node conditional system requirements
-updated Dojo Toolkit version reference from 1.6.2 to 1.6.5
RELEASE_NOTES:
-updated 2.5 to 2.5.1
-updated list of notworthy changes
-added note about emailing security bugs rather than reporting via JIRA
UPGRADE:
-updated 2.4.2 to 2.5
-updated 2.5 to 2.5.1
-small changes to initial paragraph
-changed step 9 for web code to add SSLOFFLOAD to conf.php instead of removing MAXVMLIMIT
-removed step to update secrets.php
---
INSTALLATION | 41 ++++++++--------
README | 25 +++-------
RELEASE_NOTES | 31 ++++--------
UPGRADE | 86 +++++++++++++++------------------
managementnode/bin/install_perl_libs.pl | 17 ++++---
5 files changed, 88 insertions(+), 112 deletions(-)
diff --git a/INSTALLATION b/INSTALLATION
index c5583e8..f6f4a62 100644
--- a/INSTALLATION
+++ b/INSTALLATION
@@ -1,10 +1,10 @@
-Installing VCL 2.5
+Installing VCL 2.5.1
-VCL 2.5 is the second release to include an installation script. All you need
-to install VCL is the script. It will download and validate the VCL software and
-then install it. The script can be used to install all three parts of VCL
-(database, web portal, and management node) on a single system or to install
-each part individually on separate systems.
+VCL 2.5.1 can be installed using an installation script. All you need to
+install VCL is the script. It will download and validate the VCL software
+and then install it. The script can be used to install all three parts of
+VCL (database, web portal, and management node) on a single system or to
+install each part individually on separate systems.
Running the installation script with no arguments will step you through
installing all three parts of VCL.
@@ -52,7 +52,7 @@ available:
-MINUAL INSTALLATION INSTRUCTIONS
+MANUAL INSTALLATION INSTRUCTIONS
The recommended method of installing VCL is to use the installation script. See
above for additional information. If manual installation is required,
@@ -145,7 +145,7 @@ instructions are listed below.
Import the vcl.sql file into the database. The vcl.sql file is included in
the mysql directory within the Apache VCL source code
- mysql vcl < apache-VCL-2.5/mysql/vcl.sql
+ mysql vcl < apache-VCL-2.5.1/mysql/vcl.sql
2. Install and Configure the Web Components
@@ -155,8 +155,8 @@ instructions are listed below.
Web Server:
- Apache HTTP Server v1.3 or v2.x with SSL enabled
- PHP 5.0 or later
+ Apache HTTP Server v2.x with SSL enabled
+ PHP 5.x or 7.x
Required Linux Packages:
@@ -167,12 +167,13 @@ instructions are listed below.
Required PHP Modules:
php
+ php-gettext
php-json (required if your PHP version is 5.2 or later)
+ php-ldap (if you will be using LDAP authentication)
php-mysql
php-openssl
php-xml
php-xmlrpc
- php-ldap (if you will be using LDAP authentication)
A. Install the Required Linux Packages & PHP Modules
@@ -225,14 +226,14 @@ instructions are listed below.
Copy the web directory to a location under the web root of your web
server and navigate to the destination .ht-inc subdirectory:
- cp -ar apache-VCL-2.5/web/ /var/www/html/vcl-2.5
- ln -s /var/www/html/vcl-2.5 /var/www/html/vcl
+ cp -ar apache-VCL-2.5.1/web/ /var/www/html/vcl-2.5.1
+ ln -s /var/www/html/vcl-2.5.1 /var/www/html/vcl
cd /var/www/html/vcl/.ht-inc
If SELinux is enabled, run the following command to set the context of the
web code to httpd_sys_content_t
- chcon -R -t httpd_sys_content_t /var/www/html/vcl-2.5
+ chcon -R -t httpd_sys_content_t /var/www/html/vcl-2.5.1
Copy secrets-default.php to secrets.php:
@@ -353,8 +354,8 @@ instructions are listed below.
Prerequisites The following management node installation instructions assume
the instructions in these previous sections have been completed:
- VCL 2.5 Database Installation
- VCL 2.5 Web Code Installation
+ VCL 2.5.1 Database Installation
+ VCL 2.5.1 Web Code Installation
Supported Operating Systems:
@@ -392,11 +393,12 @@ instructions are listed below.
The VCL management node daemon (vcld) is written in Perl and has been tested
on Perl 5.10 and 5.16. The following Perl modules available from CPAN are
- also required (see step 2 below for installation instructions):
+ also required (see step B below for installation instructions):
Crypt::CBC - implementation of the cryptographic cipher block chaining mode
Crypt::OpenSSL::RSA - RSA encoding and decoding, using the openSSL libraries
Crypt::Rijndael - Crypt::CBC compliant Rijndael encryption module
+ DBD::MySQL - MySQL driver for the Perl5 Database Interface (DBI)
DBI - Generic Database Interface
Digest::SHA1 - NIST SHA message digest algorithm
Exception::Class::Base - base class for exception objects
@@ -408,6 +410,7 @@ instructions are listed below.
Mail::Mailer - Simple mail agent interface
Net::Jabber - Jabber perl library
Net::Netmask - parse, manipulate and lookup IP network blocks
+ Net::Ping::External - Cross-platform Perl interface to "ping" utilities
Net::SSH::Expect - a wrapper to the ssh executable that is available in
system's PATH
Object::InsideOut - Comprehensive inside-out object support
@@ -421,8 +424,8 @@ instructions are listed below.
Copy the managementnode directory to the location where you want it to
reside (typically /usr/local):
- cp -ar apache-VCL-2.5/managementnode /usr/local/vcl-2.5
- ln -s /usr/local/vcl-2.5 /usr/local/vcl
+ cp -ar apache-VCL-2.5.1/managementnode /usr/local/vcl-2.5.1
+ ln -s /usr/local/vcl-2.5.1 /usr/local/vcl
B. Install the Required Linux Packages & Perl Modules
diff --git a/README b/README
index 22dbd62..9a0062e 100644
--- a/README
+++ b/README
@@ -1,10 +1,10 @@
-Apache VCL 2.5
+Apache VCL 2.5.1
================================================================================
INSTALLATION
Please see the INSTALLATION file or the installation guide on the Apache VCL
-website. (http://vcl.apache.org/docs/VCL25InstallGuide.html)
+website. (http://vcl.apache.org/docs/VCL251InstallGuide.html)
================================================================================
SYSTEM REQUIREMENTS
@@ -14,7 +14,7 @@ VCL WEB SITE
------------
VCL web server Linux packages:
-* Apache HTTP Server v1.3 or v2.x with SSL enabled
+* Apache HTTP Server v2.x with SSL enabled
* PHP 5.0 or later
VCL web server PHP modules:
@@ -40,8 +40,7 @@ VCL MANAGEMENT NODE
VCL has been tested on the following operating systems:
* CentOS release 6.9 (Final)
-* CentOS Linux release 7.3.1611 (Core)
-* Red Hat Enterprise Linux Server release 6.8 (Santiago)
+* CentOS Linux release 7.6.1810 (Core)
* Red Hat Enterprise Linux Server release 7.3 (Maipo)
Required Linux Packages:
@@ -72,6 +71,7 @@ modules will be installed from CPAN.
* Crypt::CBC
* Crypt::OpenSSL::RSA
* Crypt::Rijndael
+* DBD::MySQL
* DBI
* Digest::SHA1
* Exception::Class::Base
@@ -83,6 +83,7 @@ modules will be installed from CPAN.
* Mail::Mailer
* Net::Jabber
* Net::Netmask
+* Net::Ping::External
* Net::SSH::Expect
* Object::InsideOut
* RPC::XML::Client
@@ -119,21 +120,11 @@ Management node conditional system requirements:
http://www.vmware.com/support/developer/viperltoolkit/
This is not required if provisioning virtual machines on standalone VMware ESX
or ESXi hosts.
-* Windows XP & Windows Server 2003 bare-metal provisioning
- The Sysprep utility is required to provision Windows XP and Windows Server
- 2003 bare-metal images. The utility can be downloaded from Microsoft. It is
- included in newer versions of Windows. Sysprep is not required to provision
- virtual machine images.
-* Jabber notifications
- VCL has the ability to send instant message notifications using Jabber. This
- feature is optional and can be enabled or disabled by configuring the
- "jabber=[yes|no]" property in the vcld.conf file. If the Jabber notification
- feature is enabled, the Net::Jabber Perl module is required.
================================================================================
BUNDLED 3RD PARTY SOFTWARE
-A copy of Dojo Toolkit version 1.6.2 is included in under web/dojo.
+A copy of Dojo Toolkit version 1.6.5 is included in under web/dojo.
Portions of the phpseclib (http://phpseclib.sourceforge.net) project are
included under web/.ht-inc/phpseclib.
@@ -178,4 +169,4 @@ third-party Perl modules to decrypt password information stored in the database.
The backend management node code also uses the SSH protocol and public key
authentication to connect to and control compute nodes provisioned by a VCL
management node server as well as other hosts that comprise a VCL system such as
-hypervisors.
\ No newline at end of file
+hypervisors.
diff --git a/RELEASE_NOTES b/RELEASE_NOTES
index 8b0afa5..ed3c0a8 100644
--- a/RELEASE_NOTES
+++ b/RELEASE_NOTES
@@ -1,4 +1,4 @@
-VCL 2.5
+VCL 2.5.1
I. Intro and Description
@@ -21,27 +21,12 @@ servers in a server farm or HPC cluster.
II. Notable Changes
-The following are some notable changes from previous releases.
+This is primarily a bug fix release. However, the following are some
+changes worth highlighting.
-Added:
-
-* Support for Windows 10 and Windows Server 2016 images
-* Responsive theme (dropdownmenus) to web site
-* Support for automatically joining Windows images to an Active Directory domain
-* Basic automatic mounting of NFS shares for all users
-* Customization of email messages sent to users on a per-affiliation basis
-* Support for the automatic configuration of ufw and firewalld-based firewalls
- within Linux images
-* Support for NAT hosts which use ufw os firewalld-based firewalls including
- Ubuntu and RedHat/CentOS 7 and later
-* Support for the execution of custom scripts on a management node at various
- stages of the reservation
-* Display of reservation times in the user's own timezone
-
-Removed:
-
-* Server Profiles
-* Use of the Windows Administrator user account for imaging reservations
+* PHP code updated to work with PHP 7.x.
+* Rudimentary NFS file share mounting extended to work with Windows
+* Added method for using HTML in user emails through external script
=================================
@@ -84,7 +69,9 @@ IV. How to Submit Bugs and Feature Requests
If you find a bug, please submit a bug report to our JIRA bug tracking system at
http://issues.apache.org/jira/browse/VCL (you will need to set up an account
-there if you haven't already done so - it's free to anyone).
+there if you haven't already done so - it's free to anyone). If it is a security
+bug, do not open a JIRA issue. Instead report it in an email to
+security@apache.org.
If you would like to requrest a new feature, you can also submit that in the
same way through JIRA (just select "New Feature" or "Improvement" as the Issue
diff --git a/UPGRADE b/UPGRADE
index 4256ad1..6b0d8d1 100644
--- a/UPGRADE
+++ b/UPGRADE
@@ -1,10 +1,10 @@
-Upgrading to VCL 2.5
+Upgrading to VCL 2.5.1
-VCL 2.5 is the second release to include an upgrade script. All you need to
-upgrade VCL is the script. It will download and validate the VCL software and
-then upgrade your system. The script can be used to upgrade all three parts of
-VCL (database, web portal, and management node) or to upgrade each part
-individually.
+VCL 2.5.1 can be upgraded using an upgrade script. All you need to upgrade
+VCL is the script. It will download and validate the VCL software and then
+upgrade your system. The script can be used to upgrade all three parts of
+VCL (database, web portal, and management node) on a single system or to
+upgrade each part individually on separate systems.
Running the upgrade script with no arguments will step you through upgrading
all three parts of VCL.
@@ -57,101 +57,93 @@ are listed below.
2. Create a backup of the VCL database. This will provide a restore point if
necessary.
- mysqldump vcl > ~/vcl-pre2.5-upgrade.sql
+ mysqldump vcl > ~/vcl-pre2.5.1-upgrade.sql
3. Updates the database schema.
- mysql vcl < /root/apache-VCL-2.5/mysql/update-vcl.sql
+ mysql vcl < /root/apache-VCL-2.5.1/mysql/update-vcl.sql
4. Possibly move old web code. If /var/www/html/vcl is a directory, rename it
- to /var/www/html/vcl-2.4.2. These instructions assume that you installed the
+ to /var/www/html/vcl-2.5. These instructions assume that you installed the
VCL web code at /var/www/html/vcl. If you installed it elsewhere, replace
/var/www/html/vcl with your vcl web root.
- mv /var/www/html/vcl /var/www/html/vcl-2.4.2
+ mv /var/www/html/vcl /var/www/html/vcl-2.5
5. Disable access to the old web code
- echo "Require all denied" > /var/www/html/vcl-2.4.2/.htaccess
+ echo "Require all denied" > /var/www/html/vcl-2.5/.htaccess
6. Copy the new code in place
- cp -ar /root/apache-VCL-2.5/web /var/www/html/vcl-2.5
- ln -sfn /var/www/html/vcl-2.5 /var/www/html/vcl
+ cp -ar /root/apache-VCL-2.5.1/web /var/www/html/vcl-2.5.1
+ ln -sfn /var/www/html/vcl-2.5.1 /var/www/html/vcl
- 7. Copy your 2.4.2 config files
+ 7. Copy your 2.5 config files
- cd /var/www/html/vcl-2.4.2/.ht-inc
+ cd /var/www/html/vcl-2.5/.ht-inc
cp conf.php secrets.php pubkey.pem keys.pem /var/www/html/vcl/.ht-inc
+ cp cryptkey/cryptkeyid cryptkey/private.pem /var/www/html/vcl/.ht-inc/cryptkey/
8. If you are using SELinux, set the correct context:
- chcon -R -t httpd_sys_content_t /var/www/html/vcl-2.5
- chcon -t httpd_sys_rw_content_t /var/www/html/vcl-2.5/.ht-inc/maintenance
- chcon -t httpd_sys_rw_content_t /var/www/html/vcl-2.5/.ht-inc/cryptkey
+ chcon -R -t httpd_sys_content_t /var/www/html/vcl-2.5.1
+ chcon -t httpd_sys_rw_content_t /var/www/html/vcl-2.5.1/.ht-inc/maintenance
+ chcon -t httpd_sys_rw_content_t /var/www/html/vcl-2.5.1/.ht-inc/cryptkey
- 9. Update conf.php: the following item needs to be removed from the conf.php
+ 9. Update conf.php: the following item needs to be added to the conf.php
file:
(don't forget to edit conf.php in the *new* location)
vim /var/www/html/vcl/.ht-inc/conf.php
- define("MAXVMLIMIT", "100");
+ define("SSLOFFLOAD", 0);
-10. Update secrets.php: $cryptkey in secrets.php needs to be generated using
- openssl. Generate the value and set it in secrets.php:
-
- openssl rand 32 | base64
- vim /var/www/html/vcl/.ht-inc/secrets.php
-
- $cryptkey = 'xxxxxxxxxxxxxxxxxxxxxxxxx'; # set this to output of
- # "openssl rand 32 | base64"
-
-11. Make the maintenance and cryptkey directories writable by the web server
+10. Make the maintenance and cryptkey directories writable by the web server
user. Normally this is the apache user, if using a different user change
below command accordingly.
chown apache /var/www/html/vcl/.ht-inc/maintenance
chown apache /var/www/html/vcl/.ht-inc/cryptkey
-12. Start httpd service
+11. Start httpd service
service httpd start
-13. Check testsetup.php: Check that everything is correct by viewing the
+12. Check testsetup.php: Check that everything is correct by viewing the
testsetup.php script in your browser. This script is located in the same
directory as the index.php script. I.e.
https://your.site.url/vcl/testsetup.php
-14. Copy old management node code:
- If /usr/local/vcl is a directory, copy it to /usr/local/vcl-2.4.2, rename
- /usr/local/vcl to /usr/local/vcl-2.5, and create a symlink.
- If /usr/local/vcl is a symlink to vcl-2.4.2, copy /usr/local/vcl-2.4.2 to
- /usr/local/vcl-2.5 and update the symlink.
+13. Copy old management node code:
+ If /usr/local/vcl is a directory, copy it to /usr/local/vcl-2.5, rename
+ /usr/local/vcl to /usr/local/vcl-2.5.1, and create a symlink.
+ If /usr/local/vcl is a symlink to vcl-2.5, copy /usr/local/vcl-2.5 to
+ /usr/local/vcl-2.5.1 and update the symlink.
(for directory)
- cp -ar /usr/local/vcl /usr/local/vcl-2.4.2
- mv /usr/local/vcl /usr/local/vcl-2.5
- ln -s /usr/local/vcl-2.5 /usr/local/vcl
+ cp -ar /usr/local/vcl /usr/local/vcl-2.5
+ mv /usr/local/vcl /usr/local/vcl-2.5.1
+ ln -s /usr/local/vcl-2.5.1 /usr/local/vcl
(for symlink)
- cp -ar /usr/local/vcl-2.4.2 /usr/local/vcl-2.5
- ln -sfn /usr/local/vcl-2.5 /usr/local/vcl
+ cp -ar /usr/local/vcl-2.5 /usr/local/vcl-2.5.1
+ ln -sfn /usr/local/vcl-2.5.1 /usr/local/vcl
-15. Copy the new management node code over the old code:
+14. Copy the new management node code over the old code:
- /bin/cp -ar /root/apache-VCL-2.5/managementnode/* /usr/local/vcl-2.5
+ /bin/cp -ar /root/apache-VCL-2.5.1/managementnode/* /usr/local/vcl-2.5.1
-16. Run install_perl_libs.pl to add any new perl library requirements:
+15. Run install_perl_libs.pl to add any new perl library requirements:
/usr/local/vcl/bin/install_perl_libs.pl
-17. Start vcld service
+16. Start vcld service
service vcld start
-18. Make some test reservations and watch the vcld.log to verify everything is
+17. Make some test reservations and watch the vcld.log to verify everything is
working correctly.
tail -f /var/log/vcld.log
diff --git a/managementnode/bin/install_perl_libs.pl b/managementnode/bin/install_perl_libs.pl
index a61042d..e946948 100755
--- a/managementnode/bin/install_perl_libs.pl
+++ b/managementnode/bin/install_perl_libs.pl
@@ -63,13 +63,20 @@ my @LINUX_PACKAGES = (
'perl-DBD-MySQL',
'perl-DBI',
'perl-Digest-SHA1',
+ 'perl-Expect',
+ 'perl-Frontier-RPC',
+ 'perl-Frontier-RPC-Client',
'perl-IO-String',
'perl-JSON',
+ 'perl-LWP-Protocol-https',
'perl-MailTools',
+ 'perl-Mo',
'perl-Net-Jabber',
'perl-Net-Netmask',
'perl-Net-SSH-Expect',
+ 'perl-Object-InsideOut',
'perl-RPC-XML',
+ 'perl-Scalar-List-Utils',
'perl-Text-CSV_XS',
'perl-Time-HiRes',
'perl-XML-Simple',
@@ -79,21 +86,17 @@ my @LINUX_PACKAGES = (
my @PERL_MODULES = (
'CPAN',
- 'DBI',
+ 'Crypt::CBC',
'Digest::SHA1',
'Frontier::Client',
+ 'IO::String',
'LWP::Protocol::https',
- 'Mail::Mailer',
'Mo::builder',
'Net::Ping::External',
'Net::SSH::Expect',
'Object::InsideOut',
- 'RPC::XML',
'Scalar::Util',
- 'Term::ANSIColor',
- 'Time::HiRes',
- 'URI',
- 'YAML',
+ 'Text::CSV_XS',
);
# Store the command line options in hash