Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 21 Next »

A. Create rpm Development Tree (if it does not exist)

Create the tree by hand, or use "rpmdev-setuptree" to create necessary directories.  To create by hand:

1. Go to your home directory; you don't need to be root

2. mkdir            rpmbuild

3. cd                 rpmbuild

4. mkdir            BUILD  BUILDROOT  RPMS  SOURCES  SPECS  SRPMS

 


B. Install Dependencies

Below is the list of prerequisite you will need.  (These are also specified in the "pbspro.spec" file):

  • gcc
  • autoconf
  • automake
  • hwloc-devel
  • libX11-devel
  • libXt-devel
  • libedit-devel
  • libical-devel
  • ncurses-devel
  • perl
  • postgresql-devel
  • python-devel >= 2.6
  • python-devel < 3.0
  • tcl-devel
  • tk-devel
  • swig
  • expat-devel (if suse then libexpat-devel)
  • openssl-devel (if suse then libopenssl-devel)

1. Install the dependencies for building PBS Pro:

For CentOS systems, run the following command as root:

yum install -y gcc make rpm-build libtool hwloc-devel libX11-devel libXt-devel libedit-devel libical-devel ncurses-devel perl postgresql-devel python-devel tcl-devel  tk-devel swig expat-devel openssl-devel libXext libXft

For openSUSE systems, run the following command as root:

zypper install gcc make rpm-build libtool hwloc-devel libX11-devel libXt-devel libedit-devel libical-devel ncurses-devel perl postgresql-devel python-devel tcl-devel tk-devel swig libexpat-devel libopenssl-devel libXext-devel libXft-devel fontconfig

2. Install the prerequisite packages for running PBS Pro:

In addition to the commands below, you should also install a text editor of your choosing (vim, emacs, gedit, etc.).

For CentOS systems, run the following command as root:

yum install -y expat libedit postgresql-server python sendmail sudo tcl tk libical

For openSUSE systems, run the following command as root:

zypper install expat libedit postgresql-server python sendmail sudo tcl tk libical1


C. Build the rpm Package for PBS Pro <pbs_version>

You can either build from source cloned from GitHub, or you can build from source rpm (srpm).

To Build from source cloned from GitHub:

        Note: <pbs_version> specified at pbspro/src/pbspro.spec

1.    Go to pbspro directory which you have cloned (git clone https://github.com/PBSPro/pbspro)
2.    Run the autogen.sh script to generate the configure script and Makefile.in files
                ./autogen.sh
                (generates configure script and Makefile.in templates)
3.    Run ./configure
4.    Generate the source tar that will use to build the rpm
                make dist
                make dist generates .tar.gz (pbspro-<pbs_version>.tar.gz) file in the same directory.
5.    Move the pbspro-<pbs_version>.tar.gz file to ~/rpmbuild/SOURCES
6.    Move pbspro/src/pbspro.spec file to  ~/rpmbuild/SPECS
7.    Change directory to ~/rpmbuild/SPECS
8.    Run the below command
                  rpmbuild -ba pbspro.spec         ( This command will generate below rpm packages in ~/rpmbuild/RPMS dirctory)

                  a) pbspro-client-<pbs_version>-0.x86_64.rpm 

                  b) pbspro-debuginfo-<pbs_version>-0.x86_64.rpm 

                  c) pbspro-execution-<pbs_version>-0.x86_64.rpm

                  d) pbspro-server-<pbs_version>-0.x86_64.rpm

 


To Build the rpm Package from pbspro-<pbs_version>.src.rpm:

  1. Download from http://download.opensuse.org/repositories/home:/pbsproci/

2. You can either use the –rebuild option, or you can build the rpm yourself.

To use the --rebuild option:

Do an rpmbuild –rebuild pbspro-<pbs_version>.src.rpm

 

To build the rpm yourself:

Install the pbspro-<pbs_version>.src.rpm

rpm -i pbspro-<pbs_version>.src.rpm    

This installs pbspro-<pbs_version>.tar.gz and pbspro.spec in their respective directories under the rpmbuild dev tree.

Change directory to ~/rpmbuild/SPECS and run the below command

rpmbuild -ba pbspro.spec               ( This command generates below rpm packages in ~/rpmbuild/RPMS dirctory)

a) pbspro-client-<pbs_version>-0.x86_64.rpm

b) pbspro-debuginfo-<pbs_version>-0.x86_64.rpm

c) pbspro-execution-<pbs_version>-0.x86_64.rpm

d) pbspro-server-<pbs_version>-0.x86_64.rpm


D. Install and Test an rpm Package Locally

Installing and Testing Locally on CentOS7:

  1.  After following section 'C' or 'D', change directory to ~/rpmbuild/RPMS
  2.  yum -y install /root/rpmbuild/RPMS/x86_64/pbspro-server-<pbs_version>.x86_64.rpm
  3.  Need to enable mom “PBS_START_MOM=1” in /etc/pbs.conf file
  4.  Start the PBSPro daemons using /etc/init.d/pbs start.
  5.  Need to validate by submitting job and verifying the state.
  6.  yum -y install python-pip sudo which net-tools
  7.  cd test/fw
  8.  pip install -r requirements.txt .
  9.  Need to install PTL(PBS test Lab) by executing “python setup.py install”
  10.  Need to create users needed by PTL by executing "pbs_config --make-ug"
  11.  cd ../tests
  12.  pbs_benchpress -l INFOCLI2 -o ptl.txt
  13.  Once pbs_benchpress completes, you can find the PTL log in ptl.txt.

Installing and Testing Locally on openSUSE 13.2:

  1. After following section 'C' or 'D', change directory to ~/rpmbuild/RPMS 
  2. zypper -n install /root/rpmbuild/RPMS/x86_64/pbspro-server-<pbs_version>.x86_64.rpm
  3. Need to enable mom “PBS_START_MOM=1” in /etc/pbs.conf file
  4.  Start the PBSPro daemons using /etc/init.d/pbs start. 
  5. Need to validate by submitting job and verifying the state.
  6. zypper -n install python-pip sudo which net-tools 
  7.  cd test/fw
  8.  pip install -r requirements.txt .
  9.  Need to install PTL(PBS test Lab) by executing “python setup.py install”
  10.  Need to create users needed by PTL by executing "pbs_config --make-ug"
  11.  cd ../tests
  12.  pbs_benchpress -l INFOCLI2 -o ptl.txt
  13.  Once pbs_benchpress completes, you can find the PTL log in ptl.txt.



Site Map



 

  • No labels