diff --git a/.gitignore b/.gitignore index 7bd4efa..4129a1e 100644 --- a/.gitignore +++ b/.gitignore @@ -1,4 +1,14 @@ -torque-2.3.10.tar.gz -/torque-2.3.12.tar.gz -/torque-2.3.13.tar.gz +/torque-2.5.2.tar.gz +/torque-2.5.3.tar.gz +/torque-2.5.4.tar.gz +/torque-2.5.5.tar.gz /torque-2.5.7.tar.gz +/torque-3.0.0.tar.gz +/torque-3.0.0-snap.201102011355.tar.gz +/torque-3.0.1.tar.gz +/torque-3.0.2.tar.gz +/torque-3.0.3.tar.gz +/torque-3.0.4.tar.gz +/torque-4.2.6.1.tar.gz +/torque-4.2.8.tar.gz +/torque-4.2.10.tar.gz diff --git a/README-localhost b/README-localhost deleted file mode 100644 index c63a012..0000000 --- a/README-localhost +++ /dev/null @@ -1,20 +0,0 @@ -To setup a basic single-node localhost-only batch system, install the -torque-server, torque-mom, and torque-scheduler packages, and do something like -this: - -/sbin/chkconfig pbs_mom on -/sbin/chkconfig pbs_server on -/sbin/chkconfig pbs_sched on -/bin/hostname --long > %{torquehomedir}/server_priv/nodes -/bin/hostname --long > %{torquehomedir}/server_name -service pbs_server start -qmgr -c "s s scheduling=true" -qmgr -c "c q batch queue_type=execution" -qmgr -c "s q batch started=true" -qmgr -c "s q batch enabled=true" -qmgr -c "s q batch resources_default.nodes=1" -qmgr -c "s q batch resources_default.walltime=3600" -qmgr -c "s s default_queue=batch" -service pbs_mom restart -service pbs_sched restart - diff --git a/README.Fedora b/README.Fedora new file mode 100644 index 0000000..6a6811e --- /dev/null +++ b/README.Fedora @@ -0,0 +1,84 @@ +This README describes how to get the most basic working +torque service on a single host. + +To setup a basic single-node localhost-only batch system, install the +torque-server, torque-mom, and torque-scheduler packages, and do something like +this: + +0) If torque is built with munge support then this + must be enabled first on all nodes. The munge + package should allready be installed. + + Create a munge key with + + /usr/sbin/create-munge-key + + Copy resulting key /etc/munge/munge.key to + all torque nodes in your cluster including + pbs_server, pbs_mom and client (qstat,qsub) nodes. + +1) Get your full hostname with + +# /bin/hostname --long + +e.g myhost.example.org + +2) Edit /etc/torque/server_name +to contain the single line + +myhost.example.org + +3) Edit /etc/torque/mom/config +to contain the single line + +$pbsserver myhost.example.org + +4) Create a torque serverdb file. +# /usr/sbin/pbs_server -D -t create + +Warning this will remove any existing serverdb +file located at /var/lib/torque/server_priv/serverdb + +You will have to Ctrl^C the pbs_server command, it will +only take a moment to create this file. + +5) Start the pbs_server and configure it. +service pbs_server start +# qmgr -c "s s scheduling=true" +# qmgr -c "c q batch queue_type=execution" +# qmgr -c "s q batch started=true" +# qmgr -c "s q batch enabled=true" +# qmgr -c "s q batch resources_default.nodes=1" +# qmgr -c "s q batch resources_default.walltime=3600" +# qmgr -c "s s default_queue=batch" + +6) Add one batch worker to your pbs_server. + +# qmgr -c "c n myhost.example.org" + +7) Start the pbs_mom and pbs_sched deamons. + +# service pbs_mom start +# service pbs_sched start + +8) Use chkconfig to start the services at boot time. + +# /sbin/chkconfig pbs_mom on +# /sbin/chkconfig pbs_server on +# /sbin/chkconfig pbs_sched on +# /sbin/chkconfig munge on + +9) Submit a test job. +As a user not as root run the following + +$ qsub <ji_qs.ji_jobid, +- PJobSubState[pj->ji_qs.ji_substate]); ++ snprintf(log_buffer, sizeof(log_buffer), ++ "job %s in unexpected state '%s'", ++ pj->ji_qs.ji_jobid, ++ PJobSubState[pj->ji_qs.ji_substate]); + } + else + { +- sprintf(log_buffer, "job %s in unexpected state '%s' (errno=%d - %s)", +- pj->ji_qs.ji_jobid, +- PJobSubState[pj->ji_qs.ji_substate], +- errno, +- strerror(errno)); ++ snprintf(log_buffer, sizeof(log_buffer), ++ "job %s in unexpected state '%s' (errno=%d - %s)", ++ pj->ji_qs.ji_jobid, ++ PJobSubState[pj->ji_qs.ji_substate], ++ errno, ++ strerror(errno)); + } + + log_err(errno, id, log_buffer); +@@ -1264,9 +1266,10 @@ + + if (LOGLEVEL >= 6) + { +- sprintf(log_buffer, "successfully moved file '%s' for job '%s'", +- namebuf, +- preq->rq_ind.rq_jobfile.rq_jobid); ++ snprintf(log_buffer, sizeof(log_buffer), ++ "successfully moved file '%s' for job '%s'", ++ namebuf, ++ preq->rq_ind.rq_jobfile.rq_jobid); + + log_record( + PBSEVENT_JOB, +@@ -1382,9 +1385,11 @@ + { + char tmpLine[1024]; + +- sprintf(tmpLine, "cannot save job - errno=%d - %s", +- errno, +- strerror(errno)); ++ snprintf(tmpLine, sizeof(tmpLine), ++ "cannot save job - errno=%d - %s", ++ errno, ++ strerror(errno)); ++ + + log_err(errno, id, tmpLine); + +@@ -1408,9 +1413,11 @@ + { + /* reply failed, purge the job and close the connection */ + +- sprintf(log_buffer, "cannot report jobid - errno=%d - %s", +- errno, +- strerror(errno)); ++ snprintf(log_buffer, sizeof(log_buffer), ++ "cannot report jobid - errno=%d - %s", ++ errno, ++ strerror(errno)); ++ + + log_err(errno, id, log_buffer); + +@@ -1700,11 +1707,12 @@ + + /* need to format message first, before request goes away */ + +- sprintf(log_buffer, msg_jobnew, +- preq->rq_user, preq->rq_host, +- pj->ji_wattr[(int)JOB_ATR_job_owner].at_val.at_str, +- pj->ji_wattr[(int)JOB_ATR_jobname].at_val.at_str, +- pj->ji_qhdr->qu_qs.qu_name); ++ snprintf(log_buffer, sizeof(log_buffer), ++ msg_jobnew, ++ preq->rq_user, preq->rq_host, ++ pj->ji_wattr[JOB_ATR_job_owner].at_val.at_str, ++ pj->ji_wattr[JOB_ATR_jobname].at_val.at_str, ++ pj->ji_qhdr->qu_qs.qu_name); + + /* acknowledge the request with the job id */ + +@@ -1739,8 +1747,10 @@ + { + if (LOGLEVEL >= 7) + { +- sprintf(log_buffer, "Trying to AUTORUN job %s", +- pj->ji_qs.ji_jobid); ++ snprintf(log_buffer, sizeof(log_buffer), ++ "Trying to AUTORUN job %s", ++ pj->ji_qs.ji_jobid); ++ + log_record( + PBSEVENT_JOB, + PBS_EVENTCLASS_JOB, +@@ -1861,7 +1871,7 @@ + + if (!user_account_read_user(arguser)) + { +- sprintf(log_buffer, "user_account_verify(%s, %s) -> USER NOT FOUND", ++ snprintf(log_buffer,sizeof(log_buffer), "user_account_verify(%s, %s) -> USER NOT FOUND", + arguser, + argaccount); + +@@ -1872,7 +1882,7 @@ + { + if (strcmp(argaccount, UserAcct.ActAdr[i]) == 0) + { +- sprintf(log_buffer, "user_account_verify(%s, %s) -> SUCCESS", ++ snprintf(log_buffer,sizeof(log_buffer), "user_account_verify(%s, %s) -> SUCCESS", + arguser, + argaccount); + +@@ -1882,7 +1892,7 @@ + } + } /* END for (i) */ + +- sprintf(log_buffer, "user_account_verify(%s, %s) -> FAILED", ++ snprintf(log_buffer, sizeof(log_buffer) "user_account_verify(%s, %s) -> FAILED", + arguser, + argaccount); + +@@ -1909,7 +1919,7 @@ + + if (!user_account_read_user(arguser)) + { +- sprintf(log_buffer, "user_account_default(%s) = USER NOT FOUND", ++ snprintf(log_buffer,sizeof(log_buffer), "user_account_default(%s) = USER NOT FOUND", + arguser); + + goto user_account_default_done; +@@ -1917,7 +1927,7 @@ + + if (UserAcct.ActCnt < 1) + { +- sprintf(log_buffer, "user_account_default(%s) = NO PROJECT FOUND", ++ snprintf(log_buffer, sizeof(log_buffer), "user_account_default(%s) = NO PROJECT FOUND", + arguser); + + goto user_account_default_done; +@@ -1925,7 +1935,7 @@ + + rc = UserAcct.ActAdr[0]; + +- sprintf(log_buffer, "user_account_default(%s) = %s", ++ snprintf(log_buffer, sizeof(log_buffer), "user_account_default(%s) = %s", + arguser, + rc); + diff --git a/torque-munge-size.patch b/torque-munge-size.patch index 1f0470f..a473f4d 100644 --- a/torque-munge-size.patch +++ b/torque-munge-size.patch @@ -1,12 +1,25 @@ -diff -uNr torque-3.0.1.ORIG/src/include/libpbs.h torque-3.0.1/src/include/libpbs.h ---- torque-3.0.1.ORIG/src/include/libpbs.h 2011-06-17 19:19:32.984380003 +0200 -+++ torque-3.0.1/src/include/libpbs.h 2011-06-17 19:23:19.406379620 +0200 -@@ -117,7 +117,7 @@ +From 12a8d7dde1d07aed670f0dd50b317b256daaa991 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Ha=C3=AFkel=20Gu=C3=A9mar?= +Date: Sun, 12 Jan 2014 11:42:32 +0100 +Subject: [PATCH] munge size fix + +--- + src/include/libpbs.h | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/include/libpbs.h b/src/include/libpbs.h +index 6d32c8b..06b1bec 100644 +--- a/src/include/libpbs.h ++++ b/src/include/libpbs.h +@@ -121,7 +121,7 @@ #define EOF -1 #endif -#define MUNGE_SIZE 256 /* I do not know what the proper size of this should be. My -+#define MUNGE_SIZE 1024 /* I do not know what the proper size of this should be. My ++#define MUNGE_SIZE 1024 /* I do not know what the proper size of this should be. My testing with munge shows it creates a string of 128 bytes */ - /* enums for standard job files (sync w/TJobFileType[]) */ + +-- +1.8.4.2 + diff --git a/torque.spec b/torque.spec index 924a73d..8da6b7a 100644 --- a/torque.spec +++ b/torque.spec @@ -1,10 +1,3 @@ - -# comment out snap if building a real release -%define name torque -%define version 2.5.7 -#%%define snap 200604251602 -%define release 7 - # The following options are supported: # --with server_name=hostname # --with homedir=directory @@ -12,26 +5,25 @@ # --with[out] gui # --with[out] tcl - # Hrm, should we default to the name of the buildhost? That seems only # slightly better than picking a hostname at random. This is exactly the kind # of compile-time default that doesn't work well with distributable packages. # Let's force the issue with the non-sensical "localhost". -# +# # Note that "localhost" doesn't actually work. You must either define the # correct hostname here, pass '--with server_name=foo' to rpmbuild, or be sure # that $PBS_SERVER_HOME/server_name contains the correct hostname. -%define server_name localhost +%global server_name localhost -# change as you wish -%define use_rcp 0 -%define use_tcl 1 -%define build_gui 1 +# Build doxygen docs +%global doxydoc 1 + +%global use_rcp 0 +%global use_tcl 1 +%global build_gui 1 # these are non-defaults, but fit better into most RPM-based systems -%define torquehomedir %_localstatedir/torque - - +%global torquehomedir %{_localstatedir}/lib/torque # --with/--without processing # first, error if conflicting options are used @@ -40,197 +32,474 @@ %{?_with_gui: %{?_without_gui: %{error: both _with_gui and _without_gui}}} # did we find any --with options? -%{?_with_rcp: %define use_rcp 1} -%{?_with_tcl: %define use_tcl 1} -%{?_with_gui: %define build_gui 1} +%{?_with_rcp: %global use_rcp 1} +%{?_with_tcl: %global use_tcl 1} +%{?_with_gui: %global build_gui 1} -%{?_with_server_name:%define server_name %(set -- %{_with_server_name}; echo $1 | grep -v with | sed 's/=//')} -%{?_with_homedir:%define torquehomedir %(set -- %{_with_homedir}; echo $1 | grep -v with | sed 's/=//')} +%{?_with_server_name:%global server_name %(set -- %{_with_server_name}; echo $1 | grep -v with | sed 's/=//')} +%{?_with_homedir:%global torquehomedir %(set -- %{_with_homedir}; echo $1 | grep -v with | sed 's/=//')} # did we find any --without options? -%{?_without_rcp: %define use_rcp 0} -%{?_without_tcl: %define use_tcl 0} -%{?_without_gui: %define build_gui 0} +%{?_without_rcp: %global use_rcp 0} +%{?_without_tcl: %global use_tcl 0} +%{?_without_gui: %global build_gui 0} # Set up all options as disabled -%define rcpflags --with-rcp=/usr/bin/scp -%define tclflags --without-tcl -%define guiflags --disable-gui +%global rcpflags --with-rcp=/usr/bin/scp +%global tclflags --without-tcl +%global guiflags --disable-gui # Enable options that we want -%if %use_rcp -%define rcpflags --with-rcp=mom_rcp +%if %{use_rcp} +%global rcpflags --with-rcp=mom_rcp %endif -%if %build_gui -%define guiflags --enable-gui +%if %{build_gui} +%global guiflags --enable-gui %endif -%if %use_tcl -%if %build_gui -%define tclflags --with-tcl --with-tk +%if %{use_tcl} +%if %{build_gui} +%global tclflags --with-tcl --with-tk %else -%define tclflags --with-tcl --without-tk +%global tclflags --with-tcl --without-tk %endif %endif # finish up the configs... -%define server_nameflags --with-default-server=%{server_name} +%global server_nameflags --with-default-server=%{server_name} - -%define shared_description %(echo -e "TORQUE (Tera-scale Open-source Resource and QUEue manager) is a resource \\nmanager providing control over batch jobs and distributed compute nodes. \\nTORQUE is based on OpenPBS version 2.3.12 and incorporates scalability, \\nfault tolerance, and feature extension patches provided by USC, NCSA, OSC, \\nthe U.S. Dept of Energy, Sandia, PNNL, U of Buffalo, TeraGrid, and many \\nother leading edge HPC organizations.\\n\\n") - - -Summary: Tera-scale Open-source Resource and QUEue manager -Name: %{name} -Version: %{version} -Release: %{?snap:0.%{release}.%{snap}cvs}%{!?snap:%{release}}%{?dist} -Source: torque-%{version}%{?snap:-snap.%snap}.tar.gz -Source2: xpbs.desktop -Source3: xpbsmon.desktop -Source4: xpbs.png -Source5: xpbsmon.png -Source6: README-localhost -Source7: pbs-config-multilib +Name: torque +Version: 4.2.10 +Release: 1%{?dist} +Summary: Tera-scale Open-source Resource and QUEue manager +Source0: http://www.adaptivecomputing.com/download/%{name}/%{name}-%{version}.tar.gz +Source2: xpbs.desktop +Source3: xpbsmon.desktop +Source4: xpbs.png +Source5: xpbsmon.png +Source6: README.Fedora +Source8: config +# Feb 3rd 2011, I've sent a mail upstream to request the re-inclusion +# of the OpenPBS license file in distribution. +# I'll announce to fedora-devel once this is resolved either way. +# Fedora approval of TORQUEv1.1 +# http://lists.fedoraproject.org/pipermail/legal/2011-February/001530.html # https://bugzilla.redhat.com/show_bug.cgi?id=713996 -Patch0: torque-munge-size.patch +Patch1: torque-munge-size.patch -# https://bugzilla.redhat.com/show_bug.cgi?id=744138 -Patch2: torque-initd-hangs-rhbz-744138.patch - -# https://bugzilla.redhat.com/show_bug.cgi?id=752079 -Patch3: torque-fix-munge-rhbz#752079.patch -Patch4: torque-fix-munge-rhbz#752079-PTII.patch - -# https://bugzilla.redhat.com/show_bug.cgi?id=758740 -Patch5: torque-rhbz#758740-r5258-dis-close.patch -Patch6: torque-rhbz#758740-r5270-dis-array.patch - -# https://bugzilla.redhat.com/show_bug.cgi?id=759141 -Patch7: torque-2.5.7-rhbz#759141-r5167-pbs_server-crash.patch - - -License: OpenPBS and TORQUEv1.1 -Group: System Environment/Daemons -URL: http://www.clusterresources.com/products/torque/ +License: OpenPBS and TORQUEv1.1 +Group: System Environment/Daemons +URL: http://www.adaptivecomputing.com/products/open-source/torque/ +%if 0%{?el4}%{?el5} BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) -Provides: pbs -BuildRequires: desktop-file-utils, pam-devel, xauth, readline-devel, ncurses-devel -Requires(posttrans): /usr/sbin/alternatives -Requires(preun): /usr/sbin/alternatives -Conflicts: pbspro, openpbs, openpbs-oscar -Obsoletes: torque-localhost - -%if %use_tcl +%endif +BuildRequires: desktop-file-utils +BuildRequires: pam-devel +BuildRequires: xauth +BuildRequires: readline-devel +BuildRequires: ncurses-devel +BuildRequires: gperf +BuildRequires: openssl-devel +BuildRequires: libxml2-devel +BuildRequires: munge-devel +%if %{use_tcl} BuildRequires: tcl-devel %endif -%if %build_gui +%if %{build_gui} BuildRequires: tk-devel -%else -Obsoletes: torque-gui %endif -%if ! %use_rcp -Requires: openssh-clients + + + +%if 0%{?doxydoc} +BuildRequires: graphviz +BuildRequires: doxygen +%if "%{?rhel}" == "5" +BuildRequires: graphviz-gd +%endif +%if %{?fedora}%{!?fedora:0} >= 9 +BuildRequires: tex(latex) +BuildRequires: tex-xtab +BuildRequires: tex-sectsty +BuildRequires: tex-tocloft +BuildRequires: tex-multirow +BuildRequires: tex-adjustbox +%else +%if %{?rhel}%{!?rhel:0} >= 6 +BuildRequires: tex(latex) +%else +BuildRequires: tetex-latex +%endif +%endif %endif %description -%shared_description +TORQUE (Tera-scale Open-source Resource and QUEue manager) is a resource +manager providing control over batch jobs and distributed compute nodes. +TORQUE is based on OpenPBS version 2.3.12 and incorporates scalability, +fault tolerance, and feature extension patches provided by USC, NCSA, OSC, +the U.S. Dept of Energy, Sandia, PNNL, U of Buffalo, TeraGrid, and many +other leading edge HPC organizations. + This package holds just a few shared files and directories. +%package client +Group: Applications/System +Summary: Client part of TORQUE +Requires: %{name}-libs = %{version}-%{release} +Requires: munge +Requires(posttrans): chkconfig +Requires(preun): chkconfig +Requires: munge + +%description client +TORQUE (Tera-scale Open-source Resource and QUEue manager) is a resource +manager providing control over batch jobs and distributed compute nodes. +TORQUE is based on OpenPBS version 2.3.12 and incorporates scalability, +fault tolerance, and feature extension patches provided by USC, NCSA, OSC, +the U.S. Dept of Energy, Sandia, PNNL, U of Buffalo, TeraGrid, and many +other leading edge HPC organizations. + +This package holds the command-line client programs. + +%package docs +Group: Documentation +Summary: Documentation files for TORQUE +Requires: %{name} = %{version}-%{release} +%if 0%{?fedora} >= 10 || 0%{?rhel} >= 6 +BuildArch: noarch +%endif + +%description docs +TORQUE (Tera-scale Open-source Resource and QUEue manager) is a resource +manager providing control over batch jobs and distributed compute nodes. +TORQUE is based on OpenPBS version 2.3.12 and incorporates scalability, +fault tolerance, and feature extension patches provided by USC, NCSA, OSC, +the U.S. Dept of Energy, Sandia, PNNL, U of Buffalo, TeraGrid, and many +other leading edge HPC organizations. + +This package holds the documentation files. + +%package gui +Group: Applications/System +Summary: Graphical clients for TORQUE +Requires: torque-client = %{version}-%{release} + +%description gui +TORQUE (Tera-scale Open-source Resource and QUEue manager) is a resource +manager providing control over batch jobs and distributed compute nodes. +TORQUE is based on OpenPBS version 2.3.12 and incorporates scalability, +fault tolerance, and feature extension patches provided by USC, NCSA, OSC, +the U.S. Dept of Energy, Sandia, PNNL, U of Buffalo, TeraGrid, and many +other leading edge HPC organizations. + +This package holds the graphical clients. + +%package libs +Summary: Run-time libs for programs which will use the %{name} library +Group: Development/Libraries +Requires: torque = %{version}-%{release} +Requires: munge +Obsoletes: libtorque < 2.4.8-2 +Provides: libtorque = %{version}-%{release} +Requires: munge + +%description libs +TORQUE (Tera-scale Open-source Resource and QUEue manager) is a resource +manager providing control over batch jobs and distributed compute nodes. +TORQUE is based on OpenPBS version 2.3.12 and incorporates scalability, +fault tolerance, and feature extension patches provided by USC, NCSA, OSC, +the U.S. Dept of Energy, Sandia, PNNL, U of Buffalo, TeraGrid, and many +other leading edge HPC organizations. + +This package includes the shared libraries necessary for running TORQUE +programs. + +%package devel +Summary: Development tools for programs which will use the %{name} library +Group: Development/Libraries +Requires: torque-libs = %{version}-%{release} +Obsoletes: libtorque-devel < 2.4.8-2 +Provides: libtorque-devel = %{version}-%{release} + +%description devel +TORQUE (Tera-scale Open-source Resource and QUEue manager) is a resource +manager providing control over batch jobs and distributed compute nodes. +TORQUE is based on OpenPBS version 2.3.12 and incorporates scalability, +fault tolerance, and feature extension patches provided by USC, NCSA, OSC, +the U.S. Dept of Energy, Sandia, PNNL, U of Buffalo, TeraGrid, and many +other leading edge HPC organizations. + +This package includes the header files and static libraries +necessary for developing programs which will use %{name}. + +%package mom +Group: System Environment/Daemons +Summary: Node execution daemon for TORQUE +Requires: torque-libs = %{version}-%{release} +Requires: munge +%if ! %{use_rcp} +Requires: openssh-clients +%endif +Requires(post): chkconfig +Requires(preun): chkconfig +Requires(preun): initscripts + + + +%description mom +TORQUE (Tera-scale Open-source Resource and QUEue manager) is a resource +manager providing control over batch jobs and distributed compute nodes. +TORQUE is based on OpenPBS version 2.3.12 and incorporates scalability, +fault tolerance, and feature extension patches provided by USC, NCSA, OSC, +the U.S. Dept of Energy, Sandia, PNNL, U of Buffalo, TeraGrid, and many +other leading edge HPC organizations. + +This package holds the execute daemon required on every node. + +%package pam +Summary: PAM module for TORQUE MOM nodes +Group: System Environment/Base + +%description pam +TORQUE (Tera-scale Open-source Resource and QUEue manager) is a resource +manager providing control over batch jobs and distributed compute nodes. +TORQUE is based on OpenPBS version 2.3.12 and incorporates scalability, +fault tolerance, and feature extension patches provided by USC, NCSA, OSC, +the U.S. Dept of Energy, Sandia, PNNL, U of Buffalo, TeraGrid, and many +other leading edge HPC organizations. + +A simple PAM module to authorize users on PBS MOM nodes with a running job. + +%package scheduler +Group: System Environment/Daemons +Summary: Simple fifo scheduler for TORQUE +Requires: torque-libs = %{version}-%{release} +Requires(post): chkconfig +Requires(preun): chkconfig +Requires(preun): initscripts + +%description scheduler +TORQUE (Tera-scale Open-source Resource and QUEue manager) is a resource +manager providing control over batch jobs and distributed compute nodes. +TORQUE is based on OpenPBS version 2.3.12 and incorporates scalability, +fault tolerance, and feature extension patches provided by USC, NCSA, OSC, +the U.S. Dept of Energy, Sandia, PNNL, U of Buffalo, TeraGrid, and many +other leading edge HPC organizations. + +This package holds the fifo C scheduler. + +%package server +Group: System Environment/Daemons +Summary: The main part of TORQUE +Requires: torque-libs = %{version}-%{release} +Requires: munge +%if ! %{use_rcp} +Requires: openssh-server +%endif +Requires(post): chkconfig +Requires(preun): chkconfig +Requires(preun): initscripts + +%description server +TORQUE (Tera-scale Open-source Resource and QUEue manager) is a resource +manager providing control over batch jobs and distributed compute nodes. +TORQUE is based on OpenPBS version 2.3.12 and incorporates scalability, +fault tolerance, and feature extension patches provided by USC, NCSA, OSC, +the U.S. Dept of Energy, Sandia, PNNL, U of Buffalo, TeraGrid, and many +other leading edge HPC organizations. + +This package holds the server. + +%package drmaa +Group: System Environment/Daemons +Summary: Run time files for the drmaa interface +Requires: torque-libs = %{version}-%{release} + +%description drmaa +TORQUE (Tera-scale Open-source Resource and QUEue manager) is a resource +manager providing control over batch jobs and distributed compute nodes. +TORQUE is based on OpenPBS version 2.3.12 and incorporates scalability, +fault tolerance, and feature extension patches provided by USC, NCSA, OSC, +the U.S. Dept of Energy, Sandia, PNNL, U of Buffalo, TeraGrid, and many +other leading edge HPC organizations. + +Run time files for working the DRMAA interface to torque. +DRMAA is "Distributed Resource Management Application API" + + +%package drmaa-devel +Group: System Environment/Daemons +Summary: Development files for the drmaa interface. +Requires: torque-drmaa = %{version}-%{release} +Requires: torque-devel = %{version}-%{release} + +%description drmaa-devel +TORQUE (Tera-scale Open-source Resource and QUEue manager) is a resource +manager providing control over batch jobs and distributed compute nodes. +TORQUE is based on OpenPBS version 2.3.12 and incorporates scalability, +fault tolerance, and feature extension patches provided by USC, NCSA, OSC, +the U.S. Dept of Energy, Sandia, PNNL, U of Buffalo, TeraGrid, and many +other leading edge HPC organizations. + +Developement files for working the DRMAA interface to torque. +DRMAA is "Distributed Resource Management Application API" + %prep -%setup -q -n torque-%{version}%{?snap:-snap.%snap} -%patch0 -p1 -%patch2 -p1 -%patch3 -p2 -pushd src/server -%patch4 -p 0 -popd - -%patch5 -p0 -%patch6 -p0 -%patch7 -p1 - -%__install -pm 644 %{SOURCE2} %{SOURCE3} %{SOURCE4} %{SOURCE5} %{SOURCE6} %{SOURCE7} . - +%setup -q -n torque-%{version} +%patch1 -p 1 +sed -i '/LATEX_BATCHMODE/d' src/drmaa/Doxyfile.in +install -pm 644 %{SOURCE2} %{SOURCE3} %{SOURCE4} %{SOURCE5} \ + %{SOURCE6} %{SOURCE8} . +# rm x bit on some documentation. +chmod 644 torque.setup %build -%configure --disable-gcc-warnings \ - --includedir=%{_includedir}/torque \ +CFLAGS="%{optflags} -Wno-overlength-strings -DUSE_INTERP_RESULT -DUSE_INTERP_ERRORLINE" +%configure --includedir=%{_includedir}/torque \ --with-server-home=%{torquehomedir} --with-pam=/%{_lib}/security \ - --with-sendmail=/usr/sbin/sendmail \ - --enable-munge-auth \ - --with-tcp-retry-limit=2 \ + --with-sendmail=%{_sbindir}/sendmail --disable-static \ + --with-tcp-retry-limit=2 --without-debug \ + --enable-drmaa --enable-munge-auth --with-munge \ %{server_nameflags} %{guiflags} %{tclflags} %{rcpflags} -%__cp -vf pbs-config-multilib pbs-config -%__make %{?_smp_mflags} - +make %{?_smp_mflags} +for daemon in pbs_mom pbs_sched pbs_server +do +sed -i -e 's|^PBS_HOME=.*|PBS_HOME=%{torquehomedir}|' \ + -e 's|^PBS_DAEMON=.*|PBS_DAEMON=%{_sbindir}/'$daemon'|' \ + -e 's|chkconfig: 345|chkconfig: -|' \ + contrib/init.d/$daemon +done %install -%__rm -rf "$RPM_BUILD_ROOT" -%__make install DESTDIR=$RPM_BUILD_ROOT INSTALL="%{__install} -p" +make DESTDIR=%{buildroot} INSTALL="install -p" install # remove files we don't need -%__rm -f $RPM_BUILD_ROOT/%_libdir/*.la -%__rm -f $RPM_BUILD_ROOT/%_libdir/*/buildindex -%__rm -f $RPM_BUILD_ROOT/%{_lib}/security/pam_pbssimpleauth.{a,la} -touch -r pbs-config-multilib $RPM_BUILD_ROOT/%{_bindir}/pbs-config +rm -f %{buildroot}%{_libdir}/*.la +rm -f %{buildroot}%{_libdir}/*/buildindex +rm -f %{buildroot}/%{_lib}/security/pam_pbssimpleauth.{a,la} +mkdir -p %{buildroot}%{_bindir} # install initscripts -%__mkdir_p $RPM_BUILD_ROOT%{_initrddir} -for daemon in pbs_mom pbs_sched pbs_server; do - %__sed -e 's|^PBS_HOME=.*|PBS_HOME=%{torquehomedir}|' \ - -e 's|^PBS_DAEMON=.*|PBS_DAEMON=%{_sbindir}/'$daemon'|' \ - -e 's|chkconfig: 345|chkconfig: -|' \ - < contrib/init.d/$daemon > $RPM_BUILD_ROOT%{_initrddir}/$daemon - %__chmod 755 $RPM_BUILD_ROOT%{_initrddir}/$daemon -done +mkdir -p %{buildroot}%{_initrddir} +install -p -m 755 contrib/init.d/pbs_mom %{buildroot}%{_initrddir}/pbs_mom +install -p -m 755 contrib/init.d/pbs_sched %{buildroot}%{_initrddir}/pbs_sched +install -p -m 755 contrib/init.d/pbs_server %{buildroot}%{_initrddir}/pbs_server %if %{build_gui} # This is really trivial, but cleans up an rpmlint warning -%__sed -i -e 's|%_lib/../||' $RPM_BUILD_ROOT%{_bindir}/xpbs - -# install .desktop files and my ugly icons -desktop-file-install --vendor fedora \ - --dir $RPM_BUILD_ROOT%{_datadir}/applications \ - --add-category X-Fedora \ - xpbs.desktop -desktop-file-install --vendor fedora \ - --dir $RPM_BUILD_ROOT%{_datadir}/applications \ - --add-category X-Fedora \ - xpbsmon.desktop -%__install -d $RPM_BUILD_ROOT%{_datadir}/pixmaps -%__install -p -m0644 xpbs.png xpbsmon.png $RPM_BUILD_ROOT%{_datadir}/pixmaps +sed -i -e 's|%{_lib}/../||' %{buildroot}%{_bindir}/xpbs +desktop-file-install --dir %{buildroot}%{_datadir}/applications xpbs.desktop +desktop-file-install --dir %{buildroot}%{_datadir}/applications xpbsmon.desktop +install -d %{buildroot}%{_datadir}/pixmaps +install -p -m0644 xpbs.png xpbsmon.png %{buildroot}%{_datadir}/pixmaps %endif - # alternatives stuff for bin in qalter qdel qhold qrls qselect qstat qsub do - mv $RPM_BUILD_ROOT%{_bindir}/$bin $RPM_BUILD_ROOT%{_bindir}/${bin}-torque - mv $RPM_BUILD_ROOT%{_mandir}/man1/${bin}.1 \ - $RPM_BUILD_ROOT%{_mandir}/man1/${bin}-torque.1 + mv %{buildroot}%{_bindir}/$bin %{buildroot}%{_bindir}/${bin}-torque + mv %{buildroot}%{_mandir}/man1/${bin}.1 \ + %{buildroot}%{_mandir}/man1/${bin}-torque.1 done - # Remove nodes file database since we don't want it in # the package. -rm -f $RPM_BUILD_ROOT%{torquehomedir}/server_priv/nodes +rm %{buildroot}/%{torquehomedir}/server_priv/nodes +# Relocate configuration files. +mkdir -p %{buildroot}%{_sysconfdir}/torque +pushd %{buildroot}%{torquehomedir} +mv pbs_environment %{buildroot}%{_sysconfdir}/torque +mv server_name %{buildroot}%{_sysconfdir}/torque +ln -s %{_sysconfdir}/torque/pbs_environment . +ln -s %{_sysconfdir}/torque/server_name . +popd + +# Relocate mom_logs to /var/log +mkdir -p %{buildroot}%{_var}/log/torque +pushd %{buildroot}%{torquehomedir} +mv mom_logs %{buildroot}%{_var}/log/torque +ln -s %{_var}/log/torque/mom_logs . +popd + +# Install mom_priv/config file to /etc/torque/mom +mkdir -p %{buildroot}%{_sysconfdir}/torque/mom +install -p -m 644 config %{buildroot}%{_sysconfdir}/torque/mom/config +pushd %{buildroot}%{torquehomedir}/mom_priv +ln -s %{_sysconfdir}/torque/mom/config . +popd + +# Install sched_config files to /etc/torque/sched +mkdir -p %{buildroot}%{_sysconfdir}/torque/sched +pushd %{buildroot}%{torquehomedir}/sched_priv +for CONFIG in dedicated_time holidays resource_group sched_config ; do + mv $CONFIG %{buildroot}%{_sysconfdir}/torque/sched/. + ln -s %{_sysconfdir}/torque/sched/$CONFIG . +done +popd + +# Relocate sched_logs to /var/log +pushd %{buildroot}%{torquehomedir} +mv sched_logs %{buildroot}%{_var}/log/torque +ln -s %{_var}/log/torque/sched_logs . +popd + +# Relocate server_logs to /var/log +pushd %{buildroot}%{torquehomedir} +mv server_logs %{buildroot}%{_var}/log/torque +ln -s %{_var}/log/torque/server_logs . +popd + + +# Move drmaa man pages to correct place +# and delete the three copies of the same documentation. + +%if 0%{?doxydoc} +rm -f %{buildroot}%{_defaultdocdir}/torque-drmaa/man/man3/*_src_drmaa_src_.3 +mv %{buildroot}%{_defaultdocdir}/torque-drmaa/man/man3/* %{buildroot}%{_mandir}/man3/. +rm -rf %{buildroot}%{_defaultdocdir}/torque-drmaa/html/* +rm -rf %{buildroot}%{_defaultdocdir}/torque-drmaa/latex/* +# Include drmaa.pdf later from the src tree. +rm %{buildroot}%{_defaultdocdir}/torque-drmaa/drmaa.pdf +%endif + +#Remove man page for binary that is not included. +rm %{buildroot}%{_mandir}/man1/basl2c.1 + +# fix permissions for some directories in /var/lib/torque +chmod 755 `find %{buildroot}/var/lib/torque -type d` + +# Merge applications into one software center item +%if %{build_gui} +mkdir -p $RPM_BUILD_ROOT%{_datadir}/appdata +cat > $RPM_BUILD_ROOT%{_datadir}/appdata/xpbsmon.appdata.xml < + + + CC0-1.0 + xpbsmon.desktop + + xpbs.desktop + + +EOF +%endif %clean -%__rm -rf "$RPM_BUILD_ROOT" - +rm -rf %{buildroot} %post -if %__grep -q "PBS services" /etc/services;then +if grep -q "PBS services" /etc/services;then : PBS services already installed else - cat<<-__EOF__>>/etc/services + cat<<__EOF__>>/etc/services # Standard PBS services pbs 15001/tcp # pbs server (pbs_server) pbs 15001/udp # pbs server (pbs_server) @@ -243,142 +512,6 @@ pbs_sched 15004/udp # scheduler __EOF__ fi - -%files -%defattr(-, root, root) -%doc README.torque torque.setup Release_Notes -%doc CHANGELOG PBS_License_2.5.txt contrib/PBS_License_2.3.txt -%config(noreplace) %{torquehomedir}/pbs_environment -%config(noreplace) %{torquehomedir}/server_name -%dir %{torquehomedir} -%{torquehomedir}/aux -%{torquehomedir}/checkpoint -%{torquehomedir}/spool - - -%package docs -Group: Documentation -Summary: Documentation files for TORQUE -Requires: %{name} = %{?epoch:%{epoch}:}%{version}-%{release} -Provides: pbs-docs -%description docs -%shared_description -This package holds the documentation files. - -%files docs -%defattr(-, root, root) -%doc doc/admin_guide.ps -%{_mandir}/man*/* -%exclude %{_mandir}/man1/qsub-torque.1.gz -%exclude %{_mandir}/man1/qalter-torque.1.gz -%exclude %{_mandir}/man1/qdel-torque.1.gz -%exclude %{_mandir}/man1/qhold-torque.1.gz -%exclude %{_mandir}/man1/qrls-torque.1.gz -%exclude %{_mandir}/man1/qselect-torque.1.gz -%exclude %{_mandir}/man1/qstat-torque.1.gz - - -%package scheduler -Group: System Environment/Daemons -Summary: Simple fifo scheduler for TORQUE -Requires: %{name} = %{?epoch:%{epoch}:}%{version}-%{release} -Provides: pbs-scheduler -%description scheduler -%shared_description -This package holds the fifo C scheduler. - -%files scheduler -%defattr(-, root, root) -%attr(0755, root, root) %{_sbindir}/pbs_sched -%attr(0755, root, root) %{_sbindir}/qschedd -%{_initrddir}/pbs_sched -%dir %{torquehomedir}/sched_priv -%config(noreplace) %{torquehomedir}/sched_priv/* -%{torquehomedir}/sched_logs - -%post scheduler -/sbin/chkconfig --add pbs_sched - -%preun scheduler -if [ $1 -eq 0 ]; then - /sbin/service pbs_sched stop - /sbin/chkconfig --del pbs_sched -fi - - -%package server -Group: System Environment/Daemons -Summary: The main part of TORQUE -Requires: %{name} = %{?epoch:%{epoch}:}%{version}-%{release} -Requires: munge -Provides: pbs-server -%description server -%shared_description -This package holds the server. - -%files server -%defattr(-, root, root) -%attr(0755, root, root) %{_sbindir}/pbs_server -%attr(0755, root, root) %{_sbindir}/qserverd -%attr(0755, root, root) %{_sbindir}/momctl -%{_initrddir}/pbs_server -%{torquehomedir}/server_logs -%{torquehomedir}/server_priv - -%post server -/sbin/chkconfig --add pbs_server - -%preun server -if [ $1 -eq 0 ]; then - /sbin/service pbs_server stop - /sbin/chkconfig --del pbs_server -fi - - -%package mom -Group: System Environment/Daemons -Summary: Node execution daemon for TORQUE -Requires: %{name} = %{?epoch:%{epoch}:}%{version}-%{release} -Requires: munge -Provides: pbs-mom -%description mom -%shared_description -This package holds the execute daemon required on every node. - -%files mom -%defattr(-, root, root) -%attr(0755, root, root) %{_sbindir}/pbs_mom -%attr(0755, root, root) %{_sbindir}/qnoded -%attr(0755, root, root) %{_bindir}/pbs_track -%{_initrddir}/pbs_mom -%if %{use_rcp} -%attr(4755 root root) %{_sbindir}/pbs_rcp -%endif -%{torquehomedir}/mom_priv -%{torquehomedir}/mom_logs -%{torquehomedir}/undelivered - -%post mom -/sbin/chkconfig --add pbs_mom - -%preun mom -if [ $1 -eq 0 ]; then - /sbin/service pbs_mom stop - /sbin/chkconfig --del pbs_mom -fi - - -%package client -Group: Applications/System -Summary: Client part of TORQUE -Requires: %{name} = %{?epoch:%{epoch}:}%{version}-%{release} -Requires: munge -Provides: pbs-client -Requires: munge -%description client -%shared_description -This package holds the command-line client programs. - %posttrans client /usr/sbin/alternatives --install %{_bindir}/qsub qsub %{_bindir}/qsub-torque 10 \ --slave %{_mandir}/man1/qsub.1.gz qsub-man \ @@ -407,8 +540,56 @@ if [ $1 -eq 0 ]; then /usr/sbin/alternatives --remove qsub %{_bindir}/qsub-torque fi +%post libs -p /sbin/ldconfig +%postun libs -p /sbin/ldconfig +%post drmaa -p /sbin/ldconfig +%postun drmaa -p /sbin/ldconfig + + +%post mom +/sbin/chkconfig --add pbs_mom + +%preun mom +if [ $1 -eq 0 ]; then + /sbin/service pbs_mom stop >/dev/null 2>&1 + /sbin/chkconfig --del pbs_mom +fi + +%post scheduler +/sbin/chkconfig --add pbs_sched + +%preun scheduler +if [ $1 -eq 0 ]; then + /sbin/service pbs_sched stop >/dev/null 2>&1 + /sbin/chkconfig --del pbs_sched +fi + +%post server +/sbin/chkconfig --add pbs_server + +%preun server +if [ $1 -eq 0 ]; then + /sbin/service pbs_server stop >/dev/null 2>&1 + /sbin/chkconfig --del pbs_server +fi + +%files +%defattr(-, root, root, -) +%doc README.torque torque.setup Release_Notes +%doc CHANGELOG PBS_License.txt README.Fedora contrib/PBS_License_2.3.txt +%dir %{torquehomedir} +%dir %{torquehomedir}/aux +%dir %{torquehomedir}/spool +%dir %{torquehomedir}/undelivered +%{torquehomedir}/checkpoint +%{torquehomedir}/pbs_environment +%{torquehomedir}/server_name +%config(noreplace) %{_sysconfdir}/torque/pbs_environment +%config(noreplace) %{_sysconfdir}/torque/server_name +%{_mandir}/man1/pbs.1.* + %files client -%defattr(-, root, root) +%defattr(-, root, root, -) %{_bindir}/q* %{_bindir}/chk_tree %{_bindir}/hostn @@ -416,166 +597,444 @@ fi %{_bindir}/pbsdsh %{_bindir}/pbsnodes %{_bindir}/printjob -%{_bindir}/printtracking %{_bindir}/printserverdb +%{_bindir}/printtracking %{_bindir}/tracejob -%attr(4755 root root) %{_sbindir}/pbs_iff +%{_sbindir}/momctl %{_sbindir}/pbs_demux -%if %use_tcl +%if %{use_tcl} %{_bindir}/pbs_tclsh %endif -%{_mandir}/man1/qsub-torque.1.gz -%{_mandir}/man1/qalter-torque.1.gz -%{_mandir}/man1/qdel-torque.1.gz -%{_mandir}/man1/qhold-torque.1.gz -%{_mandir}/man1/qrls-torque.1.gz -%{_mandir}/man1/qselect-torque.1.gz -%{_mandir}/man1/qstat-torque.1.gz +%{_mandir}/man1/nqs2pbs.1.* +%{_mandir}/man1/pbsdsh.1.* +%{_mandir}/man1/qchkpt.1.* +%{_mandir}/man1/qmgr.1.* +%{_mandir}/man1/qmove.1.* +%{_mandir}/man1/qmsg.1.* +%{_mandir}/man1/qorder.1.* +%{_mandir}/man1/qrerun.1.* +%{_mandir}/man1/qsig.1.* +%{_mandir}/man1/qgpumode.1.gz +%{_mandir}/man1/qgpureset.1.gz +%{_mandir}/man8/pbsnodes.8.* +%{_mandir}/man8/qdisable.8.* +%{_mandir}/man8/qenable.8.* +%{_mandir}/man8/qrun.8.* +%{_mandir}/man8/qstart.8.* +%{_mandir}/man8/qstop.8.* +%{_mandir}/man8/qterm.8.* +%{_mandir}/man7/pbs_job_attributes.7.* +%{_mandir}/man7/pbs_queue_attributes.7.* +%{_mandir}/man7/pbs_resources.7.* +%{_mandir}/man7/pbs_resources_aix4.7.* +%{_mandir}/man7/pbs_resources_aix5.7.* +%{_mandir}/man7/pbs_resources_darwin.7.* +%{_mandir}/man7/pbs_resources_digitalunix.7.* +%{_mandir}/man7/pbs_resources_freebsd.7.* +%{_mandir}/man7/pbs_resources_fujitsu.7.* +%{_mandir}/man7/pbs_resources_hpux10.7.* +%{_mandir}/man7/pbs_resources_hpux11.7.* +%{_mandir}/man7/pbs_resources_irix5.7.* +%{_mandir}/man7/pbs_resources_irix6.7.* +%{_mandir}/man7/pbs_resources_irix6array.7.* +%{_mandir}/man7/pbs_resources_linux.7.* +%{_mandir}/man7/pbs_resources_netbsd.7.* +%{_mandir}/man7/pbs_resources_solaris5.7.* +%{_mandir}/man7/pbs_resources_solaris7.7.* +%{_mandir}/man7/pbs_resources_sp2.7.* +%{_mandir}/man7/pbs_resources_sunos4.7.* +%{_mandir}/man7/pbs_resources_unicos8.7.* +%{_mandir}/man7/pbs_resources_unicosmk2.7.* +%{_mandir}/man7/pbs_server_attributes.7.* + +# And the following are alternative managed ones. +%{_mandir}/man1/qsub-torque.1.* +%{_mandir}/man1/qalter-torque.1.* +%{_mandir}/man1/qdel-torque.1.* +%{_mandir}/man1/qhold-torque.1.* +%{_mandir}/man1/qrls-torque.1.* +%{_mandir}/man1/qselect-torque.1.* +%{_mandir}/man1/qstat-torque.1.* -%package gui -Group: Applications/System -Summary: Graphical clients for TORQUE -Requires: %{name}-client = %{?epoch:%{epoch}:}%{version}-%{release} -Provides: xpbs xpbsmon -Provides: %{name}-x11tools -%description gui -%shared_description -This package holds the graphical clients. - +%files docs +%defattr(-, root, root, -) +%doc doc/admin_guide.ps +%if 0%{?doxydoc} +%doc src/drmaa/drmaa.pdf +%endif %if %{build_gui} %files gui -%defattr(-, root, root) +%defattr(-, root, root, -) %{_bindir}/pbs_wish %{_bindir}/xpbs %{_bindir}/xpbsmon %{_libdir}/xpbs %{_libdir}/xpbsmon +%{_datadir}/appdata/*.appdata.xml %{_datadir}/applications/*.desktop %{_datadir}/pixmaps/*.png +%{_mandir}/man1/xpbs.1.* +%{_mandir}/man1/xpbsmon.1.* %endif +%files libs +%defattr(-, root, root, -) +%{_libdir}/libtorque.so.* -%package -n lib%{name} -Summary: Run-time libs for programs which will use the %{name} library -Group: Development/Libraries -Requires: %{name} = %{?epoch:%{epoch}:}%{version}-%{release} -Requires: munge - -%description -n lib%{name} -%shared_description -This package includes the shared libraries -necessary for running TORQUE programs. - -%files -n lib%{name} -%defattr(-, root, root) -%{_libdir}/*.so.* - -%post -n lib%{name} -p /sbin/ldconfig -%postun -n lib%{name} -p /sbin/ldconfig - -%package -n lib%{name}-devel -Summary: Development tools for programs which will use the %{name} library -Group: Development/Libraries -Requires: lib%{name} = %{?epoch:%{epoch}:}%{version}-%{release} - -%description -n lib%{name}-devel -%shared_description -This package includes the header files and static libraries -necessary for developing programs which will use %{name}. - -%files -n lib%{name}-devel -%defattr(-, root, root) -%{_libdir}/*.a -%{_libdir}/*.so +%files devel +%defattr(-, root, root, -) +%{_libdir}/libtorque.so %{_includedir}/torque +%exclude %{_includedir}/torque/drmaa.h %{_bindir}/pbs-config +%{_mandir}/man3/pbs_alterjob.3.* +%{_mandir}/man3/pbs_connect.3.* +%{_mandir}/man3/pbs_default.3.* +%{_mandir}/man3/pbs_deljob.3.* +%{_mandir}/man3/pbs_disconnect.3.* +%{_mandir}/man3/pbs_geterrmsg.3.* +%{_mandir}/man3/pbs_holdjob.3.* +%{_mandir}/man3/pbs_locate.3.* +%{_mandir}/man3/pbs_manager.3.* +%{_mandir}/man3/pbs_movejob.3.* +%{_mandir}/man3/pbs_msgjob.3.* +%{_mandir}/man3/pbs_orderjob.3.* +%{_mandir}/man3/pbs_rerunjob.3.* +%{_mandir}/man3/pbs_rescquery.3.* +%{_mandir}/man3/pbs_rescreserve.3.* +%{_mandir}/man3/pbs_rlsjob.3.* +%{_mandir}/man3/pbs_runjob.3.* +%{_mandir}/man3/pbs_selectjob.3.* +%{_mandir}/man3/pbs_selstat.3.* +%{_mandir}/man3/pbs_sigjob.3.* +%{_mandir}/man3/pbs_stagein.3.* +%{_mandir}/man3/pbs_statjob.3.* +%{_mandir}/man3/pbs_statnode.3.* +%{_mandir}/man3/pbs_statque.3.* +%{_mandir}/man3/pbs_statserver.3.* +%{_mandir}/man3/pbs_submit.3.* +%{_mandir}/man3/pbs_terminate.3.* +%{_mandir}/man3/pbs_checkpointjob.3.gz +%{_mandir}/man3/pbs_fbserver.3.gz +%{_mandir}/man3/pbs_get_server_list.3.gz +%{_mandir}/man3/pbs_gpumode.3.gz +%{_mandir}/man3/pbs_gpureset.3.gz +%{_mandir}/man3/tm.3.* +%{_mandir}/man3/pbs_gpumode.3.gz +%{_mandir}/man3/pbs_gpureset.3.gz -%package pam -Summary: PAM module for TORQUE MOM nodes -Group: System Environment/Base -%description pam -%shared_description -A simple PAM module to authorize users on PBS MOM nodes with a running job. +%files mom +%defattr(-, root, root, -) +%{_sbindir}/pbs_mom +%{_sbindir}/qnoded +%{_sbindir}/pbs_demux +%{_bindir}/pbs_track +%{_initrddir}/pbs_mom +%if %{use_rcp} +%attr(4755, root, root) %{_sbindir}/pbs_rcp +%endif +%{torquehomedir}/mom_priv +%{torquehomedir}/mom_logs +%{torquehomedir}/undelivered +%dir %{_var}/log/torque +%dir %{_var}/log/torque/mom_logs +%dir %{_sysconfdir}/torque/mom +%{_mandir}/man8/pbs_mom.8.* +%config(noreplace) %{_sysconfdir}/torque/mom/config %files pam -%defattr(-, root, root) +%defattr(-, root, root, -) %doc src/pam/README.pam /%{_lib}/security/pam_pbssimpleauth.so +%files scheduler +%defattr(-, root, root, -) +%attr(0755, root, root) %{_sbindir}/pbs_sched +%{_sbindir}/qschedd +%{_initrddir}/pbs_sched +%dir %{torquehomedir}/sched_priv +%config(noreplace) %{torquehomedir}/sched_priv/* +%{torquehomedir}/sched_logs +%dir %{_var}/log/torque/sched_logs +%dir %{_sysconfdir}/torque/sched +%{_mandir}/man8/pbs_sched.8.* +%{_mandir}/man8/pbs_sched_basl.8.* +%{_mandir}/man8/pbs_sched_cc.8.* +%{_mandir}/man8/pbs_sched_tcl.8.* +%config(noreplace) %{_sysconfdir}/torque/sched/dedicated_time +%config(noreplace) %{_sysconfdir}/torque/sched/holidays +%config(noreplace) %{_sysconfdir}/torque/sched/resource_group +%config(noreplace) %{_sysconfdir}/torque/sched/sched_config + +%files server +%defattr(-, root, root, -) +%attr(0755, root, root) %{_sbindir}/pbs_server +%attr(0755, root, root) %{_sbindir}/momctl +%attr(0755, root, root) %{_sbindir}/trqauthd +%{_sbindir}/qserverd +%{_initrddir}/pbs_server +%dir %{_var}/log/torque/server_logs +%{torquehomedir}/server_logs +%{torquehomedir}/server_priv +%{_mandir}/man8/pbs_server.8.* + +%files drmaa +%defattr(-, root, root, -) +%{_libdir}/libdrmaa.so.* + +%files drmaa-devel +%defattr(-, root, root, -) +%{_libdir}/libdrmaa.so +%{_includedir}/torque/drmaa.h +%if 0%{?doxydoc} +%{_mandir}/man3/compat.h.3.* +%{_mandir}/man3/drmaa.3.* +%{_mandir}/man3/drmaa.h.3.* +%{_mandir}/man3/drmaa_attr_names_s.3.* +%{_mandir}/man3/drmaa_attr_values_s.3.* +%{_mandir}/man3/drmaa_attrib.3.* +%{_mandir}/man3/drmaa_attrib_info_s.3.* +%{_mandir}/man3/drmaa_def_attr_s.3.* +%{_mandir}/man3/drmaa_job_ids_s.3.* +%{_mandir}/man3/drmaa_job_iter_s.3.* +%{_mandir}/man3/drmaa_job_s.3.* +%{_mandir}/man3/drmaa_job_template_s.3.* +%{_mandir}/man3/drmaa_jobt.3.* +%{_mandir}/man3/drmaa_session.3.* +%{_mandir}/man3/drmaa_session_s.3.* +%{_mandir}/man3/drmaa_submission_context_s.3.* +%{_mandir}/man3/drmaa_viter.3.* +%{_mandir}/man3/error.h.3.* +%{_mandir}/man3/jobs.3.* +%{_mandir}/man3/jobs.h.3.* +%{_mandir}/man3/lookup3.h.3.* +%{_mandir}/man3/pbs_attrib.3.* +%endif %changelog -* Sat Dec 3 2011 Steve Traylen - 2.5.7-7 -- Add torque-2.5.7-rhbz#759141-r5167-pbs_server-crash.patch -- torque clients require munge, e.g qsub. +* Mon Apr 6 2015 David Brown - 4.2.10-1 +- Updated upstream version -* Mon Nov 21 2011 Steve Traylen - 2.5.7-6 +* Thu Apr 2 2015 David Brown - 4.2.8-3 +- Version bump to merge from previous version + +* Thu Mar 26 2015 Richard Hughes - 4.2.8-2 +- Add an AppData file for the software center + +* Tue Oct 14 2014 David Brown - 4.2.8-2 +- merged fedora latest into epel +- This breaks old configs and should be treated carefully + +* Mon Sep 01 2014 Haïkel Guémar - 4.2.8-1 +- upstream 4.2.8 + +* Mon Aug 18 2014 Fedora Release Engineering - 4.2.6.1-6 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild + +* Thu Jul 17 2014 Ralf Corsépius - 4.2.6.1-5 +- Reflect upstream URL and Source0 having changed. + +* Thu Jul 17 2014 Ralf Corsépius - 4.2.6.1-4 +- Append -DUSE_INTERP_RESULT -DUSE_INTERP_ERRORLINE to CFLAGS to work-around + Tcl/Tk-8.6 incompatibilities (FTFFS RHBZ#1107455). +- Pass --without-debug to %%configure to let configure pass through + %%optflags (RHBZ#1074571). +- Fix twice listed files in *-devel. + +* Sun Jun 08 2014 Fedora Release Engineering - 4.2.6.1-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild + +* Wed May 21 2014 Jaroslav Škarvada - 4.2.6.1-2 +- Rebuilt for https://fedoraproject.org/wiki/Changes/f21tcl86 + +* Sun Jan 12 2014 Haïkel Guémar - 4.2.6.1-1 +- upstream 4.2.6.1 + +* Wed Nov 13 2013 Haïkel Guémar - 4.2.6-1 +- upstream 4.2.6 + +* Fri Aug 16 2013 Orion Poplawski - 3.0.4-4 +- Add missing BRs for latex docs + +* Sun Aug 04 2013 Fedora Release Engineering - 3.0.4-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild + +* Fri Feb 15 2013 Fedora Release Engineering - 3.0.4-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild + +* Sat Jul 21 2012 Fedora Release Engineering - 3.0.4-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild + +* Sun Feb 5 2012 Steve Traylen - 3.0.4-1 +- New upstream. + +* Sat Jan 14 2012 Fedora Release Engineering - 3.0.3-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild + +* Sat Dec 3 2011 Steve Traylen - 2.5.7-9 +- Add torque-2.5.7-rhbz#759141-r5167-pbs_server-crash.patch + +* Mon Nov 21 2011 Steve Traylen - 2.5.7-8 - Add torque-rhbz#758740-r5258-dis-close.patch and torque-rhbz#758740-r5270-dis-array.patch -* Mon Nov 21 2011 Steve Traylen - 2.5.7-5 -- Add torque-fix-munge-rhbz#752079-PTII.patch +* Mon Nov 21 2011 Steve Traylen - 2.5.7-7 +- Add torque-fix-munge-rhbz#752079-PTII.patch -* Thu Nov 17 2011 Steve Traylen - 2.5.7-4 +* Thu Nov 17 2011 Steve Traylen - 3.0.3-2 - Empty release for release mistake. -* Thu Nov 17 2011 Steve Traylen - 2.5.7-3 -- Add torque-fix-munge-rhbz#752079.patch +* Thu Nov 17 2011 Steve Traylen - 3.0.3-1 +- New upstream. -* Sun Oct 9 2011 Steve Traylen - 2.5.7-2 3 +* Thu Nov 17 2011 Steve Traylen - 2.5.7-6 +- Empty release for release mistake. + +* Thu Nov 17 2011 Steve Traylen - 2.5.7-5 +- Add patch torque-fix-munge-rhbz#752079.patch + +* Sun Oct 9 2011 Steve Traylen - 3.0.2-4 - Add patch torque-initd-hangs-rhbz-744138.patch -* Mon Sep 19 2011 Steve Traylen - 2.5.7-2 2 +* Sun Oct 9 2011 Steve Traylen - 2.5.7-4 +- Add patch torque-initd-hangs-rhbz-744138.patch + +* Mon Sep 19 2011 Steve Traylen - 3.0.2-3 - Add --with-tcp-retry-limit=2 to build, rhbz#738576. -* Wed Aug 31 2011 Steve Traylen - 2.5.7-2 1 -- Remove wrong configure messages from description. +* Mon Sep 19 2011 Steve Traylen - 2.5.7-3 +- Add --with-tcp-retry-limit=2 to build, rhbz#738576. * Wed Aug 31 2011 Steve Traylen - 2.5.7-2 -- Move checkpoint directory from torque-mom to torque package. - rhbz#734878 +- Move checkpoint directory from torque-mom to torque package. + rhbz#734878. -* Wed Aug 10 2011 Steve Traylen - 2.5.7-1 1 -- Don't include nodes file rhbz#716659 +* Tue Aug 30 2011 Steve Traylen - 3.0.2-2 +- Move checkpoint directory from torque-mom to torque package. + rhbz#734878. -* Thu Jul 26 2011 Steve Traylen - 2.5.7-1 -- Big update to 2.5.7-1, drop torque-buffer-overrun-2.3.13.patch, - change license from OpenPBS to OpenPBS and TORQUEv1.1 -- Enabled or rather force munge support. +* Tue Jul 26 2011 Steve Traylen - 2.5.7-1 +- Update to 2.5.7, drop torque-buffer-overrun-2.5.5.patch, + Add man pages for: qgpumod, qgpureset, pbs_gpumode and + pbs_gpureset. +- Add or rather force munge support, Add torque-munge-size.patch. -* Wed Jun 8 2011 Steve Traylen - 2.3.13-2 -- Add torque-buffer-overrun.patch , rhbz#711463 +* Mon Jun 27 2011 Steve Traylen - 3.0.2-1 +- Update to 3.0.2. +- Remove torque-buffer-overrun since upstream now. -* Tue Sep 29 2010 Steve Traylen - 2.3.13-1 -- New upstream 2.3.13 +* Sun Jun 26 2011 Steve Traylen - 3.0.1-4 +- Removes nodes database file from package rhbz#716659 -* Tue Sep 7 2010 Steve Traylen - 2.3.12-1 -- New upstream 2.3.12 +* Sun Jun 26 2011 Steve Traylen - 2.5.5-3 +- Removes nodes database file from package rhbz#716659 -* Fri Feb 12 2010 Steve Traylen - 2.3.10-1 -- New upstream 2.3.10 +* Fri Jun 17 2011 Steve Traylen - 3.0.1-3 +- Add torque-munge-size.patch, rhbz#713996, Alex Chernyakhovsky + +* Wed Jun 8 2011 Steve Traylen - 2.5.5-2 +- Add torque-buffer-overrun.patch rhbz#711463 + +* Wed Jun 8 2011 Steve Traylen - 3.0.1-2 +- Add torque-buffer-overrun.patch patch, rhbz#711463 + +* Thu Apr 21 2011 Steve Traylen - 3.0.1-1 +- Update to 3.0.1. + License file name change. +- Renable doxygen documentation for drmaa. + +* Tue Mar 8 2011 Steve Traylen - 2.5.5-1 +- New upstream 2.5.5 + Drop torque-create-request.patch since fixed upstream. +- Torque License change, + PBS_License.txt now contrib/PBS_License2.3.txt + New additional license file PBS_License_2.5.txt + License field changed from OpenPBS to "OpenPBS and TORQUEv1.1" + +* Wed Feb 09 2011 Fedora Release Engineering - 3.0.0_snap.201102011355-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild + +* Sun Jan 9 2011 Steve Traylen - 2.5.4-1 +- New upstream 2.5.4 + Drop patches: torque-cond-touch.patch rhbz#528060 and + torque-start-start.patch rhbz#643194 since both upstream. + +* Fri Dec 10 2010 Steve Traylen - 3.0.0-snap.201102011355-1 +- Update to 3.0.0-snap.201102011355-1. +- Drop torque-create-request.patch since upstream. +- License change to "OpenPBS and TORQUEv1.1" from OpenPBS. + +* Fri Dec 10 2010 Steve Traylen - 3.0.0-2 +- Enable or rather force munge support. + +* Thu Dec 9 2010 Steve Traylen - 3.0.0-1 +- New upstream 3.0.0. Drop patches torque-cond-touch.patch and + torque-start-start.patch since both upstream now. + +* Wed Dec 8 2010 Steve Traylen - 2.5.3-3 +- Remove own copy of pbs-config. #657027 +- Move man pages from doc subpackage to relavent sub package. +- Enable drmaa support and add drmaa sub packages. + +* Wed Dec 8 2010 Steve Traylen - 2.5.3-2 +- Only build noarch doc package on RHEL6 or Fedora10. #659723 + +* Thu Nov 18 2010 Steve Traylen - 2.5.3-1 +- Upstream to 2.5.3. + +* Thu Oct 14 2010 Steve Traylen - 2.5.2-4 +- rhbz#643194, stop a stoped service, start a start service + return codes now fixed. + +* Thu Oct 14 2010 Steve Traylen - 2.5.2-3 +- rhbz#631256 Only create db if asked to. + +* Thu Oct 14 2010 Steve Traylen - 2.5.2-2 +- rhbz#58060, add torque-cond-touch.spec to only touch files + when service actually starts. + +* Tue Sep 7 2010 Steve Traylen - 2.5.2-1 +- New upstream 2.5.2 +- Three new man pages added to file listing. + +* Tue Aug 10 2010 Steve Traylen - 2.5.1-1 +- New upstream 2.5.1 + +* Wed Jul 14 2010 Steve Traylen - 2.4.8-3 +- Rebuild for cvs mistake. + +* Thu Jul 1 2010 Steve Traylen - 2.4.8-2 +- Set torquehome to /var/lib/torque rather than /var/torque +- Drop provides and obsoletes since never present in Fedora/EPEL. +- Don't use a variable for the description. +- Split install of init.d scripts to build and install sections + as appropriate. +- Mark docs subpackage as noarch. +- Rename libtorque package to more normal torque-libs package. +- Rename libtorque-devel package to more normal torque-devel package. +- Remove the unused epoch and snapshot variables. +- Have mom requires openssh-clients and server openssh-server +- Have mom, sched and server log to /var/log/torque and symlinks +- Move configurtion files to /etc/torque and symlink in expected. +- Be more explicit about man page in the files section. +- Rename README-localhost to README.Fedora to make it more obvious + it's related to this package. + +* Wed Jun 2 2010 Tom "spot" Callaway - 2.4.8-1 +- update to 2.4.8 +- drop static libs +- cleanup spec file -* Tue Jan 19 2010 Steve Traylen - 2.3.9-1 -- New upstream 2.3.9 -* Thu Dec 3 2009 Steve Traylen - 2.3.8-1 -- Updated to upstream 2.3.8 -- First EPEL build. -- Add new commands to package. - /usr/bin/pbs_track - /usr/bin/printserverdb - /usr/sbin/qnoded - /usr/sbin/qschedd - /usr/sbin/qserverd -- Remove torque-2.1.10-NI_MAXSERV.patch as not needed any more. * Sun Jul 26 2009 Fedora Release Engineering - 2.1.10-8 - Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild * Wed Feb 25 2009 Fedora Release Engineering - 2.1.10-7 - Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild -* Mon Apr 16 2008 Garrick Staples 2.1.10-6 +* Wed Apr 16 2008 Garrick Staples 2.1.10-6 - add alternatives system * Thu Feb 14 2008 Garrick Staples 2.1.10-5 diff --git a/xpbs.desktop b/xpbs.desktop index b417428..383b3e0 100644 --- a/xpbs.desktop +++ b/xpbs.desktop @@ -1,11 +1,11 @@ [Desktop Entry] Encoding=UTF-8 -Name=xpbs +Name=xPBS GenericName=PBS/TORQUE client Comment=View job status and submit jobs Exec=xpbs Icon=xpbs.png Terminal=false Type=Application -Categories=Application;Other; -Version=1.1.12 +Categories=Education;Science;ComputerScience;ParallelComputing; +Version=1.0 diff --git a/xpbsmon.desktop b/xpbsmon.desktop index 9d6280c..470f103 100644 --- a/xpbsmon.desktop +++ b/xpbsmon.desktop @@ -1,11 +1,11 @@ [Desktop Entry] Encoding=UTF-8 -Name=xpbsmon +Name=xPBSMon GenericName=PBS/TORQUE cluster monitor Comment=View node status Exec=xpbsmon Icon=xpbsmon.png Terminal=false Type=Application -Categories=Application;Other; -Version=2.3 +Categories=Education;Science;ComputerScience;ParallelComputing; +Version=1.0