public inbox for git-commits@fedoraproject.org
help / color / mirror / Atom feed
* [rpms/condor] rawhide: Bring upstream and Fedora spec file in sync to speed updates
@ 2026-08-23 22:20 Tim Theisen
0 siblings, 0 replies; only message in thread
From: Tim Theisen @ 2026-08-23 22:20 UTC (permalink / raw)
To: git-commits
A new commit has been pushed.
Repo : rpms/condor
Branch : rawhide
Commit : 8d889261dac254ab8b0b2529bbd3942115967b21
Author : Tim Theisen <ttheisen@fedoraproject.org>
Date : 2026-08-22T22:06:57-05:00
Stats : +629/-227 in 4 file(s)
URL : https://src.fedoraproject.org/rpms/condor/c/8d889261dac254ab8b0b2529bbd3942115967b21?branch=rawhide
Log:
Bring upstream and Fedora spec file in sync to speed updates
---
diff --git a/.gitignore b/.gitignore
index 87cb381..b720188 100644
--- a/.gitignore
+++ b/.gitignore
@@ -43,3 +43,4 @@ _build
/htcondor-23.0.0.tar.gz
/htcondor-23.1.0.tar.gz
/condor-23.9.6.tar.gz
+/condor-25.13.2.tar.gz
diff --git a/condor.spec b/condor.spec
index 57d4d4a..6f01cf9 100644
--- a/condor.spec
+++ b/condor.spec
@@ -1,127 +1,305 @@
-%global version 23.9.6
+# Set the version and release here
+%global condor_version 25.13.2
+%global condor_release 1
+
+# set uw_build to 0 for downstream (Fedora or EPEL)
+# UW build includes stuff for testing and tarballs
+%global uw_build 0
+
+# We need to define the dist for SUSE
+%if 0%{?suse_version}
+%global _libexecdir %{_exec_prefix}/libexec
+%if %{suse_version} == 1500
+# Hard code this special case
+%if "%{os_release_id}" == "sles"
+%global dist .sles15sp5
+%else
+%global dist .leap15
+%endif
+%endif
+%if %{suse_version} == 1600
+%global dist .leap16
+%endif
+%endif
+
+#######################
+Name: condor
+Version: %{condor_version}
%global version_ %(tr . _ <<< %{version})
+Release: %{condor_release}%{?dist}
+Summary: HTCondor: High Throughput Computing
+License: Apache-2.0
+URL: https://htcondor.org/
+Source0: %{name}-%{condor_version}.tar.gz
+Source1: %{name}.sysusers.conf
+%if %uw_build
+Source2: htcondor.pp
+%endif
-%global with_vault_credmon 0
+ExcludeArch: %{ix86}
-#######################
-Name: condor
-Version: 23.9.6
-Release: 11%{?dist}
-Summary: HTCondor: High Throughput Computing
-# Automatically converted from old format: ASL 2.0 - review is highly recommended.
-License: Apache-2.0
-URL: http://htcondor.org
-##############################################################
-# NOTE: If you wish to setup a debug build either add a patch
-# or adjust the URL to a private github location
-##############################################################
-Source0: https://github.com/htcondor/htcondor/archive/v%{version}/%{name}-%{version}.tar.gz
-
-Patch1: exit_37.sif.patch
-Patch2: unified-bin.patch
-Patch3: CVE-2025-30093.patch
-
-# This is a stopgap until I can conditionalize the cmake files
-# use the system libfmt if suitable version available
+# Special arch for AlmaLinux 10
+%if 0%{?x86_64_v2}
+BuildArch: x86_64_v2
+%endif
+
+%if 0%{?rhel} == 8 || 0%{?rhel} == 9 || 0%{?rhel} == 10
+# Use gcc-toolset 15 for EL 8, 9, and 10
+%global gcctoolset 15
+%endif
# Do not check .so files in condor's library directory
+# We have an LD_PRELOAD for condor_ssh_to_job there
%global __provides_exclude_from ^%{_libdir}/%{name}/.*\\.so.*$
-# Do not provide libfmt
-%global __requires_exclude ^libfmt\\.so.*$
-
-#######################
-BuildRequires: gcc gcc-c++
-BuildRequires: cmake >= 3.16
+BuildRequires: cmake >= 3.20
BuildRequires: pcre2-devel
BuildRequires: openssl-devel
BuildRequires: krb5-devel
+%if ! 0%{?amzn} && "%{os_release_id}" != "sles"
BuildRequires: libvirt-devel
+%endif
BuildRequires: bind-utils
BuildRequires: libX11-devel
+%if ! ( 0%{?rhel} >= 10 ) && "%{os_release_id}" != "sles"
BuildRequires: libXScrnSaver-devel
-BuildRequires: libcurl-devel
-BuildRequires: expat-devel
+%endif
+%if 0%{?suse_version}
+BuildRequires: openldap2-devel
+%else
+BuildRequires: openldap-devel
+%endif
+BuildRequires: python3-devel
BuildRequires: python3-setuptools
-BuildRequires: python3-sphinx
-BuildRequires: python3-sphinx_rtd_theme
-BuildRequires: boost-devel
-BuildRequires: boost-python3-devel
-BuildRequires: boost-static
+%if 0%{?suse_version}
+BuildRequires: rpm-config-SUSE
+%else
+BuildRequires: redhat-rpm-config
+%endif
+BuildRequires: sqlite-devel
+BuildRequires: perl(Data::Dumper)
+
BuildRequires: glibc-static
+BuildRequires: gcc-c++
BuildRequires: libuuid-devel
-BuildRequires: sqlite-devel
BuildRequires: patch
-# needed for param table generator
-BuildRequires: perl-generators
+BuildRequires: pam-devel
+%if 0%{?suse_version}
+BuildRequires: mozilla-nss-devel
+%else
+BuildRequires: nss-devel
+%endif
+BuildRequires: openssl-devel
+%if 0%{?suse_version}
+BuildRequires: libexpat-devel
+BuildRequires: dbus-1-devel
+%else
+BuildRequires: expat-devel
+BuildRequires: dbus-devel
+%endif
BuildRequires: perl(Archive::Tar)
-BuildRequires: perl(Data::Dumper)
-BuildRequires: perl(Digest::MD5)
BuildRequires: perl(XML::Parser)
+BuildRequires: perl(Digest::MD5)
+BuildRequires: python3-devel
+BuildRequires: libcurl-devel
-BuildRequires: munge-devel
+# Authentication build requirements
+%if ! 0%{?amzn} && "%{os_release_id}" != "sles"
BuildRequires: voms-devel
-BuildRequires: nss-devel
-BuildRequires: openldap-devel
+%endif
+%if "%{os_release_id}" != "sles"
+BuildRequires: munge-devel
BuildRequires: scitokens-cpp-devel
+%endif
-# we now need to request the python libs and includes explicitly:
-BuildRequires: python3-devel
+%if 0%{?devtoolset}
+BuildRequires: which
+BuildRequires: devtoolset-%{devtoolset}-toolchain
+%endif
-# Added by B.DeKnuydt (Jan 2020)
-BuildRequires: libxml2 libxml2-devel
-BuildRequires: pam-devel
-BuildRequires: make
+%if 0%{?gcctoolset}
+BuildRequires: which
+BuildRequires: gcc-toolset-%{gcctoolset}
+BuildRequires: gcc-toolset-%{gcctoolset}-gcc-plugin-annobin
+%endif
+
+%if 0%{?amzn}
+BuildRequires: which
+BuildRequires: gcc14
+BuildRequires: gcc14-c++
+# Unfortunately, the annobin plugin is not provided for gcc 14 on amzn
+%undefine _annotated_build
+%endif
+
+%if 0%{?suse_version}
+%if %{suse_version} == 1500
+BuildRequires: gcc12
+BuildRequires: gcc12-c++
+%endif
+%if %{suse_version} == 1600
+BuildRequires: gcc15
+BuildRequires: gcc15-c++
+%endif
+%endif
+
+BuildRequires: libuuid-devel
+%if 0%{?suse_version}
+Requires: libuuid1
+%else
+Requires: libuuid
+%endif
BuildRequires: systemd-devel
+%if 0%{?fedora} >= 42 || 0%{?rhel} >= 10 || 0%{?suse_version} >= 1600
+BuildRequires: systemd-rpm-macros
+%endif
+%if 0%{?suse_version}
+BuildRequires: systemd
+%else
BuildRequires: systemd-units
+%endif
+Requires: systemd
+
+%if 0%{?rhel} || 0%{?amzn} || 0%{?fedora}
+BuildRequires: python3-sphinx python3-sphinx_rtd_theme
+%endif
+
+%if 0%{?suse_version}
+BuildRequires: python3-Sphinx python3-sphinx_rtd_theme
+%endif
+
+# openssh-server needed for condor_ssh_to_job
+Requires: openssh-server
+
+# net-tools needed to provide netstat for condor_who
+Requires: net-tools
+
+# cryptsetup needed for encrypted LVM execute partitions
+Requires: cryptsetup
-#######################
-# Installation requirements.
Requires: /usr/sbin/sendmail
-Requires: python3
-Requires: python3-cryptography
+
+# Docker credential processing uses json query
+Requires: jq
+
+# Useful tools are using the Python bindings
+Requires: python3-condor = %{version}-%{release}
+Requires: python3-requests
+
+Requires(post): /sbin/ldconfig
+Requires(postun): /sbin/ldconfig
+
+%if 0%{?suse_version}
+Requires(pre): shadow
+Requires(post): systemd
+Requires(preun): systemd
+Requires(postun): systemd
+%else
+Requires(pre): shadow-utils
+Requires(post): systemd-units
+Requires(preun): systemd-units
+Requires(postun): systemd-units
+%endif
+
+Requires(post): python3-policycoreutils
+%if ! 0%{?suse_version}
+Requires(post): selinux-policy-targeted
+%endif
# Require libraries that we dlopen
# Ganglia is optional as well as nVidia and cuda libraries
+%if ! 0%{?amzn} && "%{os_release_id}" != "sles"
+%if 0%{?suse_version}
+%if "%{os_release_id}" != "sles"
+Requires: libvomsapi1
+%endif
+%else
Requires: voms
+%endif
+%endif
+%if 0%{?suse_version}
+Requires: krb5
+Requires: libcom_err2
+%if "%{os_release_id}" != "sles"
+Requires: libmunge2
+%endif
+%if %{suse_version} == 1500
+Requires: libopenssl1_1
+%endif
+%if %{suse_version} == 1600
+Requires: libopenssl3
+%endif
+%if "%{os_release_id}" != "sles"
+Requires: libSciTokens0
+%endif
+Requires: libsystemd0
+%else
Requires: krb5-libs
Requires: libcom_err
Requires: munge-libs
Requires: openssl-libs
-Requires: scitokens-cpp >= 0.6.2
+Requires: scitokens-cpp
Requires: systemd-libs
+%endif
Requires: rsync
-Requires: condor-upgrade-checks
-# openssh-server needed for condor_ssh_to_job
-Requires: openssh-server
-
-# net-tools needed to provide netstat for condor_who
-Requires: net-tools
-
-# Perl modules required for condor_gather_info
-Requires: perl(Date::Manip)
-Requires: perl(FindBin)
+%if %uw_build
+# Require tested Pelican packages
+Requires: (pelican >= 7.26.0 or pelican-debug >= 7.26.0)
+Requires: pelican-osdf-compat >= 7.26.0
+%endif
-# Useful tools are using the Python bindings
-Requires: python3-condor = %{version}-%{release}
-Requires: python3-requests
+%if ! 0%{?amzn} && "%{os_release_id}" != "sles"
+# Require tested Apptainer
+%if 0%{?suse_version} == 1500
+# Unfortunately, Apptainer is lagging behind on openSUSE 15
+Requires: apptainer >= 1.4.5
+%else
+Requires: apptainer >= 1.5.3
+%endif
+%endif
# Ensure that our bash completions work
Recommends: bash-completion
#From /usr/share/doc/setup/uidgid (RPM: setup-2.12.2-11)
-#Provides: user(condor) = 64
-#Provides: group(condor) = 64
+%if 0%{?fedora} >= 42
+# The RPM macros already makes virtual Provides for user and group
+%else
+Provides: user(condor) = 64
+Provides: group(condor) = 64
+%endif
+
+%if 0%{?rhel} <= 8
+# external-libs package discontinued as of 8.9.9
+Obsoletes: %{name}-external-libs < 8.9.9
+Provides: %{name}-external-libs = %{version}-%{release}
+
+# Bosco package discontinued as of 9.5.0
+Obsoletes: %{name}-bosco < 9.5.0
+Provides: %{name}-bosco = %{version}-%{release}
+
+# Blahp provided by condor-blahp as of 9.5.0
+Provides: blahp = %{version}-%{release}
+Obsoletes: blahp < 9.5.0
+%endif
+
+%if 0%{?rhel} <= 9
+# externals package discontinued as of 10.8.0
+Obsoletes: %{name}-externals < 10.8.0
+Provides: %{name}-externals = %{version}-%{release}
+
+# blahp package discontinued as of 10.8.0
+Obsoletes: %{name}-blahp < 10.8.0
+Provides: %{name}-blahp = %{version}-%{release}
# procd package discontinued as of 10.8.0
Obsoletes: %{name}-procd < 10.8.0
Provides: %{name}-procd = %{version}-%{release}
# all package discontinued as of 10.8.0
-Obsoletes: %{name}-openstack-gahp < 10.8.0
-Provides: %{name}-openstack-gahp = %{version}-%{release}
+Obsoletes: %{name}-all < 10.8.0
+Provides: %{name}-all = %{version}-%{release}
# classads package discontinued as of 10.8.0
Obsoletes: %{name}-classads < 10.8.0
@@ -130,10 +308,23 @@ Provides: %{name}-classads = %{version}-%{release}
# classads-devel package discontinued as of 10.8.0
Obsoletes: %{name}-classads-devel < 10.8.0
Provides: %{name}-classads-devel = %{version}-%{release}
+%endif
+
+%if 0%{?rhel} <= 10
+# upgrade-checks package discontinued as of 24.9.0
+Obsoletes: %{name}-upgrade-checks < 24.9.0
+Provides: %{name}-upgrade-checks = %{version}-%{release}
+%endif
+
+%if 0%{?suse_version}
+%if %{suse_version} == 1500
+%debug_package
+%endif
+%endif
%description
-HTCondor is a workload management system for high-throughput and
-high-performance jobs. Like other full-featured batch systems, HTCondor
+HTCondor is a specialized workload management system for
+compute-intensive jobs. Like other full-featured batch systems, HTCondor
provides a job queuing mechanism, scheduling policy, priority scheme,
resource monitoring, and resource management. Users submit their
serial or parallel jobs to HTCondor, HTCondor places them into a queue,
@@ -144,16 +335,25 @@ completion.
#######################
%package devel
Summary: Development files for HTCondor
-Group: Applications/System
%description devel
Development files for HTCondor
+%if %uw_build
+#######################
+%package tarball
+Summary: Files needed to build an HTCondor tarball
+BuildArch: noarch
+
+%description tarball
+Files needed to build an HTCondor tarball
+
+%endif
+
#######################
%package kbdd
Summary: HTCondor Keyboard Daemon
Requires: %name = %version-%release
-Requires: condor = %{version}-%{release}
%description kbdd
The condor_kbdd monitors logged in X users for activity. It is only
@@ -161,55 +361,62 @@ useful on systems where no device (e.g. /dev/*) can be used to
determine console idle time.
#######################
-%package test
-Summary: HTCondor Self Tests
-Group: Applications/System
-Requires: %name = %version-%release
-
-%description test
-A collection of tests to verify that HTCondor is operating properly.
-
-#######################
+%if ! 0%{?amzn} && "%{os_release_id}" != "sles"
%package vm-gahp
Summary: HTCondor's VM Gahp
Requires: %name = %version-%release
Requires: libvirt
-Requires: condor = %{version}-%{release}
+%if 0%{?fedora} >= 35 || 0%{?rhel} >= 9 || 0%{?suse_version} >= 1600
+Requires: passt
+%endif
%description vm-gahp
The condor_vm-gahp enables the Virtual Machine Universe feature of
HTCondor. The VM Universe uses libvirt to start and control VMs under
HTCondor's Startd.
+%endif
+
+#######################
+%package test
+Summary: HTCondor Self Tests
+Requires: %name = %version-%release
+
+%description test
+A collection of tests to verify that HTCondor is operating properly.
+
#######################
%package -n python3-condor
Summary: Python bindings for HTCondor
Requires: %name = %version-%release
-%{?python_provide:%python_provide python3-condor}
+Requires: python3
+Requires: python3-cryptography
%description -n python3-condor
The python bindings allow one to directly invoke the C++ implementations of
the ClassAd library and HTCondor from python
+
#######################
%package credmon-local
Summary: Local issuer credmon for HTCondor
-Group: Applications/System
+BuildArch: noarch
Requires: %name = %version-%release
Requires: python3-condor = %{version}-%{release}
-Requires: python3-six
Requires: python3-cryptography
Requires: python3-scitokens
+Conflicts: %name-credmon-vault
%description credmon-local
The local issuer credmon allows users to obtain credentials from an
admin-configured private SciToken key on the access point and to use those
credentials securely inside running jobs.
+
#######################
%package credmon-oauth
Summary: OAuth2 credmon for HTCondor
-Group: Applications/System
+BuildArch: noarch
Requires: %name = %version-%release
Requires: condor-credmon-local = %{version}-%{release}
Requires: python3-requests-oauthlib
@@ -221,29 +428,49 @@ Requires: httpd
The OAuth2 credmon allows users to obtain credentials from configured
OAuth2 endpoints and to use those credentials securely inside running jobs.
-%if 0%{?with_vault_credmon}
+
#######################
%package credmon-vault
Summary: Vault credmon for HTCondor
-Group: Applications/System
+BuildArch: noarch
Requires: %name = %version-%release
Requires: python3-condor = %{version}-%{release}
-Requires: python3-six
Requires: python3-cryptography
+Requires: python3-urllib3
+%if %uw_build
# Although htgettoken is only needed on the submit machine and
# condor-credmon-vault is needed on both the submit and credd machines,
# htgettoken is small so it doesn't hurt to require it in both places.
Requires: htgettoken >= 1.1
+%endif
Conflicts: %name-credmon-local
%description credmon-vault
The Vault credmon allows users to obtain credentials from Vault using
htgettoken and to use those credentials securely inside running jobs.
+Install this package when exclusively using Vault for all HTCondor
+credential management.
+
+
+#######################
+%package credmon-multi
+Summary: Multi-credmon support for HTCondor
+BuildArch: noarch
+Requires: %name = %version-%release
+Requires: condor-credmon-local = %{version}-%{release}
+Requires: python3-urllib3
+Requires: htgettoken >= 1.1
+
+%description credmon-multi
+Provides concurrent support for the Vault credmon alongside the Local
+and (optional) OAuth credmons. This package should be installed instead
+of condor-credmon-vault when concurrent support is needed.
+
-%endif
#######################
%package -n minicondor
Summary: Configuration for a single-node HTCondor
+BuildArch: noarch
Requires: %name = %version-%release
Requires: python3-condor = %version-%release
@@ -255,7 +482,7 @@ shortens many timers to be more responsive.
#######################
%package ap
Summary: Configuration for an Access Point
-Group: Applications/System
+BuildArch: noarch
Requires: %name = %version-%release
Requires: python3-condor = %version-%release
@@ -264,9 +491,23 @@ This example configuration is good for installing an Access Point.
After installation, one could join a pool or start an annex.
#######################
+%package ep
+Summary: Configuration for an Execution Point
+BuildArch: noarch
+Requires: %name = %version-%release
+Requires: python3-condor = %version-%release
+
+%description ep
+This example configuration is good for installing an Execution Point.
+After installation, one could join a pool or start an annex.
+
+#######################
%package annex-ec2
-Summary: Configuration and scripts to make an EC2 image annex-compatible.
+Summary: Configuration and scripts to make an EC2 image annex-compatible
+BuildArch: noarch
Requires: %name = %version-%release
+Requires(post): /sbin/chkconfig
+Requires(preun): /sbin/chkconfig
%description annex-ec2
Configures HTCondor to make an EC2 image annex-compatible. Do NOT install
@@ -279,62 +520,153 @@ on a non-EC2 image.
%config(noreplace) %_sysconfdir/condor/master_shutdown_script.sh
%post annex-ec2
-#/bin/systemctl enable condor-annex-ec2
+/bin/systemctl enable condor-annex-ec2
%preun annex-ec2
if [ $1 == 0 ]; then
/bin/systemctl disable condor-annex-ec2
fi
-#######################
-%package upgrade-checks
-Summary: Script to check for manual interventions needed to upgrade
-Group: Applications/System
-Requires: python3-condor
-Requires: pcre2-tools
-
-%description upgrade-checks
-HTCondor V9 to V10 check for for known breaking changes:
-1. IDToken TRUST_DOMAIN default value change
-2. Upgrade to PCRE2 breaking map file regex sequences
-3. The way to request GPU resources for a job
-
-%files upgrade-checks
-%_bindir/condor_upgrade_check
+%pre
+%if 0%{?fedora} >= 42
+# RPM handles user creation automagically in these versions
+%else
+getent group condor >/dev/null || groupadd --system --gid 64 condor
+getent passwd condor >/dev/null || \
+ useradd --system --uid 64 --gid condor --home-dir /var/lib/condor \
+ --shell /usr/sbin/nologin --comment "Owner of HTCondor Daemons" condor
+exit 0
+%endif
%prep
-%setup -q -n %{name}-%{version}
-%patch 1 -p1
-%patch 2 -p1
-%patch 3 -p1
+# For release tarballs
+%setup -q -n %{name}-%{condor_version}
# fix errant execute permissions
find src -perm /a+x -type f -name "*.[Cch]" -exec chmod a-x {} \;
-# Create a sysusers.d config file.
-# uid and gid 64 is reserved:
-# https://src.fedoraproject.org/rpms/setup/blob/rawhide/f/uidgid#_75
-cat >condor.sysusers.conf <<EOF
-u condor 64 'Owner of HTCondor Daemons' %{_sharedstatedir}/%{name} -
-EOF
%build
+
+%if 0%{?suse_version}
+%if %{suse_version} == 1500
+export CC=/usr/bin/gcc-12
+export CXX=/usr/bin/g++-12
+%endif
+%if %{suse_version} == 1600
+export CC=/usr/bin/gcc-15
+export CXX=/usr/bin/g++-15
+%endif
+%endif
+
+%if 0%{?devtoolset}
+. /opt/rh/devtoolset-%{devtoolset}/enable
+export CC=$(which cc)
+export CXX=$(which c++)
+%endif
+
+%if 0%{?gcctoolset}
+%if 0%{?rhel} <= 9
+. /opt/rh/gcc-toolset-%{gcctoolset}/enable
+%else
+. /usr/lib/gcc-toolset/%{gcctoolset}-env.source
+%endif
+export CC=$(which cc)
+export CXX=$(which c++)
+%endif
+
+%if 0%{?amzn}
+export CC=$(which gcc14-gcc)
+export CXX=$(which gcc14-g++)
+%endif
+
+%if 0%{?x86_64_v2}
+export CFLAGS="${CFLAGS} -march=x86-64-v2"
+export CXXFLAGS="${CXXFLAGS} -march=x86-64-v2"
+export FFLAGS="${FFLAGS} -march=x86-64-v2"
+export FCFLAGS="${FCFLAGS} -march=x86-64-v2"
+%endif
+
+# build man files
+%if 0%{?amzn}
+# if this environment variable is set, sphinx-build cannot import markupsafe
+env -u RPM_BUILD_ROOT make -C docs man
+%else
make -C docs man
-%cmake -DBUILDID:STRING=RH-%{version}-%{release} \
+%endif
+
+%if %uw_build
+%global condor_build_id UW_development
+%global condor_git_sha -1
+%endif
+
+# Any changes here should be synchronized with
+# ../debian/rules
+
+%if 0%{?suse_version} || 0%{?fedora} >= 44
+%cmake \
+%else
+%cmake3 \
+%endif
+%if %uw_build
+ -DBUILDID:STRING=%condor_build_id \
+ -DPLATFORM:STRING=${NMI_PLATFORM:-unknown} \
+%if "%{condor_git_sha}" != "-1"
+ -DCONDOR_GIT_SHA:STRING=%condor_git_sha \
+%endif
+ -DBUILD_TESTING:BOOL=TRUE \
+%else
-DBUILD_TESTING:BOOL=FALSE \
- -DCMAKE_SKIP_RPATH:BOOL=TRUE \
-%if 0%{?rhel} == 8
+%endif
+%if 0%{?suse_version}
+ -DCMAKE_SHARED_LINKER_FLAGS="%{?build_ldflags} -Wl,--as-needed -Wl,-z,now" \
+%endif
+%if 0%{?rhel} == 8 || 0%{?suse_version} >= 1600
-DPython3_EXECUTABLE=%__python3 \
%endif
- -DPACKAGEID:STRING=%{version}-%{release} \
+ -DCMAKE_SKIP_RPATH:BOOL=TRUE \
+ -DPACKAGEID:STRING=%{version}-%{condor_release} \
-DCONDOR_PACKAGE_BUILD:BOOL=TRUE \
-DCONDOR_RPMBUILD:BOOL=TRUE \
+%if 0%{?amzn} || "%{os_release_id}" == "sles"
+ -DWITH_LIBVIRT:BOOL=FALSE \
+ -DWITH_VOMS:BOOL=FALSE \
+%endif
+%if "%{os_release_id}" == "sles"
+ -DWITH_MUNGE:BOOL=FALSE \
+ -DWITH_SCITOKENS:BOOL=FALSE \
+%endif
-DCMAKE_INSTALL_PREFIX:PATH=/
+%if 0%{?amzn}
+cd amazon-linux-build
+%else
+%if 0%{?rhel} >= 9 || 0%{?fedora} && 0%{?fedora} < 44
+cd redhat-linux-build
+%endif
+%endif
+
+%if 0%{?fedora} >= 44
%cmake_build
+%if %uw_build
+%cmake_build -t tests
+%endif
+%else
+make %{?_smp_mflags}
+%if %uw_build
+make %{?_smp_mflags} tests
+%endif
+%endif
%install
+%if 0%{?amzn}
+cd amazon-linux-build
+%else
+%if 0%{?rhel} >= 9 || 0%{?fedora} && 0%{?fedora} < 44
+cd redhat-linux-build
+%endif
+%endif
# installation happens into a temporary location, this function is
# useful in moving files into their final locations
function populate {
@@ -344,18 +676,47 @@ function populate {
}
rm -rf %{buildroot}
+echo ---------------------------- makefile ---------------------------------
+%if 0%{?suse_version}
+cd build
+%endif
+%if 0%{?fedora} >= 44
%cmake_install
+%else
+make install DESTDIR=%{buildroot}
+%endif
# TODO: Fix up cmake and remove this hack
%ifarch s390x
mv %{buildroot}/usr/lib/* %{buildroot}/usr/%{_lib}
%endif
+%if %uw_build
+%if 0%{?fedora} >= 44
+%cmake_build -t tests-tar-pkg
+%else
+make tests-tar-pkg
+%endif
+# tarball of tests
+%if 0%{?amzn}
+cp -p %{_builddir}/%{name}-%{version}/amazon-linux-build/condor_tests-*.tar.gz %{buildroot}/%{_libdir}/condor/condor_tests-%{version}.tar.gz
+%else
+%if 0%{?rhel} >= 9 || 0%{?fedora}
+cp -p %{_builddir}/%{name}-%{version}/redhat-linux-build/condor_tests-*.tar.gz %{buildroot}/%{_libdir}/condor/condor_tests-%{version}.tar.gz
+%else
+%if 0%{?suse_version}
+cp -p %{_builddir}/%{name}-%{version}/build/condor_tests-*.tar.gz %{buildroot}/%{_libdir}/condor/condor_tests-%{version}.tar.gz
+%else
+cp -p %{_builddir}/%{name}-%{version}/condor_tests-*.tar.gz %{buildroot}/%{_libdir}/condor/condor_tests-%{version}.tar.gz
+%endif
+%endif
+%endif
+%endif
+
# Drop in a symbolic link for backward compatibility
ln -s ../..%{_libdir}/condor/condor_ssh_to_job_sshd_config_template %{buildroot}/%_sysconfdir/condor/condor_ssh_to_job_sshd_config_template
-mv %{buildroot}/usr/share/doc/condor-%{version} %{buildroot}/usr/share/doc/condor
-populate /usr/share/doc/condor/examples %{buildroot}/usr/share/doc/condor/etc/examples/*
+populate /usr/share/doc/condor-%{version}/examples %{buildroot}/usr/share/doc/condor-%{version}/etc/examples/*
mkdir -p %{buildroot}/%{_sysconfdir}/condor
# the default condor_config file is not architecture aware and thus
@@ -375,63 +736,63 @@ mkdir -p -m0755 %{buildroot}/%{_sysconfdir}/condor/config.d
mkdir -p -m0700 %{buildroot}/%{_sysconfdir}/condor/passwords.d
mkdir -p -m0700 %{buildroot}/%{_sysconfdir}/condor/tokens.d
-populate %_sysconfdir/condor/config.d %{buildroot}/usr/share/doc/condor/examples/00-htcondor-9.0.config
-populate %_sysconfdir/condor/config.d %{buildroot}/usr/share/doc/condor/examples/00-minicondor
-populate %_sysconfdir/condor/config.d %{buildroot}/usr/share/doc/condor/examples/00-access-point
-populate %_sysconfdir/condor/config.d %{buildroot}/usr/share/doc/condor/examples/00-kbdd
-populate %_sysconfdir/condor/config.d %{buildroot}/usr/share/doc/condor/examples/50ec2.config
+populate %_sysconfdir/condor/config.d %{buildroot}/usr/share/doc/condor-%{version}/examples/00-security
+populate %_sysconfdir/condor/config.d %{buildroot}/usr/share/doc/condor-%{version}/examples/00-minicondor
+populate %_sysconfdir/condor/config.d %{buildroot}/usr/share/doc/condor-%{version}/examples/00-access-point
+populate %_sysconfdir/condor/config.d %{buildroot}/usr/share/doc/condor-%{version}/examples/00-execution-point
+populate %_sysconfdir/condor/config.d %{buildroot}/usr/share/doc/condor-%{version}/examples/00-kbdd
+populate %_sysconfdir/condor/config.d %{buildroot}/usr/share/doc/condor-%{version}/examples/50ec2.config
# Install a second config.d directory under /usr/share, used for the
# convenience of software built on top of Condor such as GlideinWMS.
mkdir -p -m0755 %{buildroot}/usr/share/condor/config.d
mkdir -p -m0755 %{buildroot}/%{_var}/log/condor
-# Note we use %{_var}/lib instead of %{_sharedstatedir} for RHEL5 compatibility
-mkdir -p -m0755 %{buildroot}/%{_var}/lib/condor/spool
-mkdir -p -m0755 %{buildroot}/%{_var}/lib/condor/execute
-mkdir -p -m0755 %{buildroot}/%{_var}/lib/condor/krb_credentials
-mkdir -p -m2770 %{buildroot}/%{_var}/lib/condor/oauth_credentials
+mkdir -p -m0755 %{buildroot}/%{_sharedstatedir}/condor/spool
+mkdir -p -m0755 %{buildroot}/%{_sharedstatedir}/condor/execute
+mkdir -p -m0755 %{buildroot}/%{_sharedstatedir}/condor/krb_credentials
+mkdir -p -m2770 %{buildroot}/%{_sharedstatedir}/condor/oauth_credentials
# not packaging configure/install scripts
+%if ! %uw_build
rm -f %{buildroot}%{_bindir}/make-ap-from-tarball
rm -f %{buildroot}%{_bindir}/make-personal-from-tarball
rm -f %{buildroot}%{_sbindir}/condor_configure
rm -f %{buildroot}%{_sbindir}/condor_install
rm -f %{buildroot}/%{_mandir}/man1/condor_configure.1
rm -f %{buildroot}/%{_mandir}/man1/condor_install.1
+%endif
mkdir -p %{buildroot}/%{_var}/www/wsgi-scripts/condor_credmon_oauth
mv %{buildroot}/%{_libexecdir}/condor/condor_credmon_oauth.wsgi %{buildroot}/%{_var}/www/wsgi-scripts/condor_credmon_oauth/condor_credmon_oauth.wsgi
# Move oauth credmon config files out of examples and into config.d
-mv %{buildroot}/usr/share/doc/condor/examples/condor_credmon_oauth/config/condor/40-oauth-credmon.conf %{buildroot}/%{_sysconfdir}/condor/config.d/40-oauth-credmon.conf
-mv %{buildroot}/usr/share/doc/condor/examples/condor_credmon_oauth/config/condor/40-oauth-tokens.conf %{buildroot}/%{_sysconfdir}/condor/config.d/40-oauth-tokens.conf
-mv %{buildroot}/usr/share/doc/condor/examples/condor_credmon_oauth/README.credentials %{buildroot}/%{_var}/lib/condor/oauth_credentials/README.credentials
+mv %{buildroot}/usr/share/doc/condor-%{version}/examples/condor_credmon_oauth/config/condor/40-oauth-credmon.conf %{buildroot}/%{_sysconfdir}/condor/config.d/40-oauth-credmon.conf
+mv %{buildroot}/usr/share/doc/condor-%{version}/examples/condor_credmon_oauth/config/condor/40-oauth-tokens.conf %{buildroot}/%{_sysconfdir}/condor/config.d/40-oauth-tokens.conf
+mv %{buildroot}/usr/share/doc/condor-%{version}/examples/condor_credmon_oauth/README.credentials %{buildroot}/%{_var}/lib/condor/oauth_credentials/README.credentials
-%if 0%{?with_vault_credmon}
# Move vault credmon config file out of examples and into config.d
-mv %{buildroot}/usr/share/doc/condor/examples/condor_credmon_oauth/config/condor/40-vault-credmon.conf %{buildroot}/%{_sysconfdir}/condor/config.d/40-vault-credmon.conf
-%else
-rm -f %{buildroot}%{_bindir}/condor_vault_storer
-rm -f %{buildroot}%{_sbindir}/condor_credmon_vault
-%endif
+mv %{buildroot}/usr/share/doc/condor-%{version}/examples/condor_credmon_oauth/config/condor/40-vault-credmon.conf %{buildroot}/%{_sysconfdir}/condor/config.d/40-vault-credmon.conf
# install tmpfiles.d/condor.conf
mkdir -p %{buildroot}%{_tmpfilesdir}
-install -m 0644 %{buildroot}/usr/share/doc/condor/examples/condor-tmpfiles.conf %{buildroot}%{_tmpfilesdir}/%{name}.conf
+install -m 0644 %{buildroot}/usr/share/doc/condor-%{version}/examples/condor-tmpfiles.conf %{buildroot}%{_tmpfilesdir}/%{name}.conf
-install -Dp -m0755 %{buildroot}/usr/share/doc/condor/examples/condor-annex-ec2 %{buildroot}%{_libexecdir}/condor/condor-annex-ec2
+install -Dp -m0755 %{buildroot}/usr/share/doc/condor-%{version}/examples/condor-annex-ec2 %{buildroot}%{_libexecdir}/condor/condor-annex-ec2
mkdir -p %{buildroot}%{_unitdir}
-install -m 0644 %{buildroot}/usr/share/doc/condor/examples/condor-annex-ec2.service %{buildroot}%{_unitdir}/condor-annex-ec2.service
-install -m 0644 %{buildroot}/usr/share/doc/condor/examples/condor.service %{buildroot}%{_unitdir}/condor.service
+install -m 0644 %{buildroot}/usr/share/doc/condor-%{version}/examples/condor-annex-ec2.service %{buildroot}%{_unitdir}/condor-annex-ec2.service
+install -m 0644 %{buildroot}/usr/share/doc/condor-%{version}/examples/condor.service %{buildroot}%{_unitdir}/condor.service
# Disabled until HTCondor security fixed.
-# install -m 0644 %{buildroot}/usr/share/doc/condor/examples/condor.socket %{buildroot}%{_unitdir}/condor.socket
+# install -m 0644 %{buildroot}/usr/share/doc/condor-%{version}/examples/condor.socket %{buildroot}%{_unitdir}/condor.socket
+
+mkdir -p %{buildroot}%{_sysusersdir}
+install -m 0644 %{SOURCE1} %{buildroot}%{_sysusersdir}/condor.conf
-%if 0%{?rhel} >= 7
mkdir -p %{buildroot}%{_datadir}/condor/
-cp %{SOURCE8} %{buildroot}%{_datadir}/condor/
+%if %uw_build
+cp %{SOURCE2} %{buildroot}%{_datadir}/condor/
%endif
#Fixups for packaged build, should have been done by cmake
@@ -441,63 +802,62 @@ mv %{buildroot}/usr/%{_lib}/condor/Chirp.jar %{buildroot}/usr/share/condor
mv %{buildroot}/usr/%{_lib}/condor/CondorJava*.class %{buildroot}/usr/share/condor
mv %{buildroot}/usr/%{_lib}/condor/libchirp_client.so %{buildroot}/usr/%{_lib}
mv %{buildroot}/usr/%{_lib}/condor/libcondor_utils_*.so %{buildroot}/usr/%{_lib}
-mv %{buildroot}/usr/%{_lib}/condor/libpyclassad3*.so %{buildroot}/usr/%{_lib}
-rm -rf %{buildroot}/usr/share/doc/condor/LICENSE
-rm -rf %{buildroot}/usr/share/doc/condor/NOTICE.txt
-rm -rf %{buildroot}/usr/share/doc/condor/README
+rm -rf %{buildroot}/usr/share/doc/condor-%{version}/LICENSE
+rm -rf %{buildroot}/usr/share/doc/condor-%{version}/NOTICE.txt
+rm -rf %{buildroot}/usr/share/doc/condor-%{version}/README
+
+# we must place the config examples in builddir so %doc can find them
+mv %{buildroot}/usr/share/doc/condor-%{version}/examples %_builddir/%name-%condor_version
# classad3 shouldn't be distributed yet
rm -rf %{buildroot}/usr/lib*/python%{python3_version}/site-packages/classad3
-# Move batch system customization files to /etc, with symlinks in the
-# original location. Admins will need to edit these.
-install -m 0755 -d -p %{buildroot}%{_sysconfdir}/blahp
-for batch_system in condor kubernetes lsf nqs pbs sge slurm; do
- mv %{buildroot}%{_libexecdir}/blahp/${batch_system}_local_submit_attributes.sh %{buildroot}%{_sysconfdir}/blahp
- ln -s ../.../../etc/blahp/${batch_system}_local_submit_attributes.sh \
- %{buildroot}%{_libexecdir}/blahp/${batch_system}_local_submit_attributes.sh
-done
+%clean
+rm -rf %{buildroot}
+
-install -m0644 -D condor.sysusers.conf %{buildroot}%{_sysusersdir}/condor.conf
+%check
+# This currently takes hours and can kill your machine...
+#cd condor_tests
+#make check-seralized
#################
%files
%defattr(-,root,root,-)
-%doc LICENSE NOTICE.txt
-%doc /usr/share/doc/condor/examples
+%doc LICENSE NOTICE.txt examples
%dir %_sysconfdir/condor/
%config %_sysconfdir/condor/condor_config
%{_tmpfilesdir}/%{name}.conf
%{_unitdir}/condor.service
# Disabled until HTCondor security fixed.
# % {_unitdir}/condor.socket
+%{_sysusersdir}/condor.conf
%dir %_datadir/condor/
%_datadir/condor/Chirp.jar
%_datadir/condor/CondorJavaInfo.class
%_datadir/condor/CondorJavaWrapper.class
-%if 0%{?rhel} >= 7
+%if %uw_build
%_datadir/condor/htcondor.pp
%endif
%dir %_sysconfdir/condor/passwords.d/
%dir %_sysconfdir/condor/tokens.d/
%dir %_sysconfdir/condor/config.d/
-%config(noreplace) %{_sysconfdir}/condor/config.d/00-htcondor-9.0.config
+%config(noreplace) %{_sysconfdir}/condor/config.d/00-security
%dir /usr/share/condor/config.d/
%_libdir/condor/condor_ssh_to_job_sshd_config_template
%_sysconfdir/condor/condor_ssh_to_job_sshd_config_template
%_sysconfdir/bash_completion.d/condor
%_libdir/libchirp_client.so
%_libdir/libcondor_utils_%{version_}.so
-%_libdir/condor/libfmt.so
-%_libdir/condor/libfmt.so.10
-%_libdir/condor/libfmt.so.10.1.0
%_libdir/condor/libgetpwnam.so
%dir %_libexecdir/condor/
%_libexecdir/condor/cleanup_locally_mounted_checkpoint
%_libexecdir/condor/linux_kernel_tuning
%_libexecdir/condor/accountant_log_fixer
+%_libexecdir/condor/check-url
+%_libexecdir/condor/condor_annex
%_libexecdir/condor/condor_chirp
%_libexecdir/condor/condor_ssh
%_libexecdir/condor/sshd.sh
@@ -507,8 +867,10 @@ install -m0644 -D condor.sysusers.conf %{buildroot}%{_sysusersdir}/condor.conf
%_libexecdir/condor/cred_producer_krb
%_libexecdir/condor/condor_job_router
%_libexecdir/condor/condor_pid_ns_init
+%_libexecdir/condor/condor_diagnostic_send_ep_logs
%_libexecdir/condor/condor_urlfetch
%_libexecdir/condor/htcondor_docker_test
+%_libexecdir/condor/htcondor_docker_test_arm
%ifarch aarch64 ppc64le x86_64
%_libexecdir/condor/exit_37.sif
%endif
@@ -516,6 +878,7 @@ install -m0644 -D condor.sysusers.conf %{buildroot}%{_sysusersdir}/condor.conf
%dir %_libexecdir/condor/singularity_test_sandbox/dev/
%dir %_libexecdir/condor/singularity_test_sandbox/proc/
%_libexecdir/condor/singularity_test_sandbox/exit_37
+%_libexecdir/condor/singularity_test_sandbox/get_user_ns
%_libexecdir/condor/condor_limits_wrapper.sh
%_libexecdir/condor/condor_rooster
%_libexecdir/condor/condor_schedd.init
@@ -531,32 +894,6 @@ install -m0644 -D condor.sysusers.conf %{buildroot}%{_sysusersdir}/condor.conf
%_libexecdir/condor/common-cloud-attributes-aws.py
%_libexecdir/condor/common-cloud-attributes-aws.sh
%_libexecdir/condor/onedrive_plugin.py
-# TODO: get rid of these
-# Not sure where these are getting built
-%if 0%{?rhel} <= 7 && ! 0%{?fedora}
-%_libexecdir/condor/box_plugin.pyc
-%_libexecdir/condor/box_plugin.pyo
-%_libexecdir/condor/gdrive_plugin.pyc
-%_libexecdir/condor/gdrive_plugin.pyo
-%_libexecdir/condor/onedrive_plugin.pyc
-%_libexecdir/condor/onedrive_plugin.pyo
-%_libexecdir/condor/adstash/__init__.pyc
-%_libexecdir/condor/adstash/__init__.pyo
-%_libexecdir/condor/adstash/ad_sources/__init__.pyc
-%_libexecdir/condor/adstash/ad_sources/__init__.pyo
-%_libexecdir/condor/adstash/ad_sources/registry.pyc
-%_libexecdir/condor/adstash/ad_sources/registry.pyo
-%_libexecdir/condor/adstash/interfaces/__init__.pyc
-%_libexecdir/condor/adstash/interfaces/__init__.pyo
-%_libexecdir/condor/adstash/interfaces/generic.pyc
-%_libexecdir/condor/adstash/interfaces/generic.pyo
-%_libexecdir/condor/adstash/interfaces/null.pyc
-%_libexecdir/condor/adstash/interfaces/null.pyo
-%_libexecdir/condor/adstash/interfaces/registry.pyc
-%_libexecdir/condor/adstash/interfaces/registry.pyo
-%_libexecdir/condor/adstash/interfaces/opensearch.pyc
-%_libexecdir/condor/adstash/interfaces/opensearch.pyo
-%endif
%_libexecdir/condor/curl_plugin
%_libexecdir/condor/condor_shared_port
%_libexecdir/condor/condor_defrag
@@ -575,6 +912,7 @@ install -m0644 -D condor.sysusers.conf %{buildroot}%{_sysusersdir}/condor.conf
%_libexecdir/condor/adstash/ad_sources/schedd_history.py
%_libexecdir/condor/adstash/ad_sources/startd_history.py
%_libexecdir/condor/adstash/ad_sources/schedd_job_epoch_history.py
+%_libexecdir/condor/adstash/ad_sources/schedd_transfer_epoch_history.py
%_libexecdir/condor/adstash/interfaces/__init__.py
%_libexecdir/condor/adstash/interfaces/elasticsearch.py
%_libexecdir/condor/adstash/interfaces/opensearch.py
@@ -584,12 +922,11 @@ install -m0644 -D condor.sysusers.conf %{buildroot}%{_sysusersdir}/condor.conf
%_libexecdir/condor/adstash/interfaces/registry.py
%_libexecdir/condor/annex
%_mandir/man1/condor_advertise.1.gz
-%_mandir/man1/condor_annex.1.gz
-%_mandir/man1/condor_check_password.1.gz
%_mandir/man1/condor_check_userlogs.1.gz
%_mandir/man1/condor_chirp.1.gz
%_mandir/man1/condor_config_val.1.gz
%_mandir/man1/condor_dagman.1.gz
+%_mandir/man1/condor_dag_checker.1.gz
%_mandir/man1/condor_fetchlog.1.gz
%_mandir/man1/condor_findhost.1.gz
%_mandir/man1/condor_gpu_discovery.1.gz
@@ -605,6 +942,7 @@ install -m0644 -D condor.sysusers.conf %{buildroot}%{_sysusersdir}/condor.conf
%_mandir/man1/condor_q.1.gz
%_mandir/man1/condor_qsub.1.gz
%_mandir/man1/condor_qedit.1.gz
+%_mandir/man1/condor_qusers.1.gz
%_mandir/man1/condor_reconfig.1.gz
%_mandir/man1/condor_release.1.gz
%_mandir/man1/condor_remote_cluster.1.gz
@@ -616,7 +954,6 @@ install -m0644 -D condor.sysusers.conf %{buildroot}%{_sysusersdir}/condor.conf
%_mandir/man1/condor_ssh_start.1.gz
%_mandir/man1/condor_sos.1.gz
%_mandir/man1/condor_ssl_fingerprint.1.gz
-%_mandir/man1/condor_stats.1.gz
%_mandir/man1/condor_status.1.gz
%_mandir/man1/condor_store_cred.1.gz
%_mandir/man1/condor_submit.1.gz
@@ -658,6 +995,7 @@ install -m0644 -D condor.sysusers.conf %{buildroot}%{_sysusersdir}/condor.conf
%_mandir/man1/condor_now.1.gz
%_mandir/man1/classad_eval.1.gz
%_mandir/man1/classads.1.gz
+%_mandir/man1/htcondor-jdl.1.gz
%_mandir/man1/condor_adstash.1.gz
%_mandir/man1/condor_evicted_files.1.gz
%_mandir/man1/condor_watch_q.1.gz
@@ -672,6 +1010,7 @@ install -m0644 -D condor.sysusers.conf %{buildroot}%{_sysusersdir}/condor.conf
%_bindir/condor_check_userlogs
%_bindir/condor_q
%_libexecdir/condor/condor_transferer
+%_libexecdir/condor/condor_container_launcher.sh
%_bindir/condor_docker_enter
%_bindir/condor_qedit
%_bindir/condor_qusers
@@ -681,9 +1020,9 @@ install -m0644 -D condor.sysusers.conf %{buildroot}%{_sysusersdir}/condor.conf
%_bindir/condor_config_val
%_bindir/condor_reschedule
%_bindir/condor_userprio
-%_bindir/condor_check_password
%_bindir/condor_check_config
%_bindir/condor_dagman
+%_bindir/condor_dag_checker
%_bindir/condor_rm
%_bindir/condor_vacate
%_bindir/condor_run
@@ -692,7 +1031,6 @@ install -m0644 -D condor.sysusers.conf %{buildroot}%{_sysusersdir}/condor.conf
%_bindir/condor_router_rm
%_bindir/condor_vacate_job
%_bindir/condor_findhost
-%_bindir/condor_stats
%_bindir/condor_version
%_bindir/condor_history
%_bindir/condor_status
@@ -722,7 +1060,6 @@ install -m0644 -D condor.sysusers.conf %{buildroot}%{_sysusersdir}/condor.conf
%_bindir/condor_job_router_info
%_bindir/condor_transform_ads
%_bindir/condor_update_machine_ad
-%_bindir/condor_annex
%_bindir/condor_nsenter
%_bindir/condor_evicted_files
%_bindir/condor_adstash
@@ -731,6 +1068,8 @@ install -m0644 -D condor.sysusers.conf %{buildroot}%{_sysusersdir}/condor.conf
%_bindir/condor_ssh_start
%_bindir/condor_test_token
%_bindir/condor_manifest
+%_bindir/condor_upgrade_check
+%_bindir/condor_join_pool
# sbin/condor is a link for master_off, off, on, reconfig,
# reconfig_schedd, restart
%_sbindir/condor_advertise
@@ -739,10 +1078,12 @@ install -m0644 -D condor.sysusers.conf %{buildroot}%{_sysusersdir}/condor.conf
%_sbindir/condor_c-gahp
%_sbindir/condor_c-gahp_worker_thread
%_sbindir/condor_collector
+%_sbindir/condor_docker_pat_producer
%_sbindir/condor_credd
%_sbindir/condor_fetchlog
%_sbindir/condor_ft-gahp
%_sbindir/condor_had
+%_sbindir/condor_librarian
%_sbindir/condor_master
%_sbindir/condor_negotiator
%_sbindir/condor_off
@@ -787,6 +1128,7 @@ install -m0644 -D condor.sysusers.conf %{buildroot}%{_sysusersdir}/condor.conf
%config %_sysconfdir/blparser.conf
%dir %_sysconfdir/blahp/
%config %_sysconfdir/blahp/condor_local_submit_attributes.sh
+%config %_sysconfdir/blahp/flux_local_submit_attributes.sh
%config %_sysconfdir/blahp/kubernetes_local_submit_attributes.sh
%config %_sysconfdir/blahp/lsf_local_submit_attributes.sh
%config %_sysconfdir/blahp/nqs_local_submit_attributes.sh
@@ -794,8 +1136,6 @@ install -m0644 -D condor.sysusers.conf %{buildroot}%{_sysusersdir}/condor.conf
%config %_sysconfdir/blahp/sge_local_submit_attributes.sh
%config %_sysconfdir/blahp/slurm_local_submit_attributes.sh
%_bindir/blahpd
-%_sbindir/blah_check_config
-%_sbindir/blahpd_daemon
%dir %_libexecdir/blahp
%_libexecdir/blahp/*
@@ -810,7 +1150,6 @@ install -m0644 -D condor.sysusers.conf %{buildroot}%{_sysusersdir}/condor.conf
####### classads files #######
%defattr(-,root,root,-)
%_libdir/libclassad.so.*
-%{_sysusersdir}/condor.conf
#################
%files devel
@@ -828,7 +1167,6 @@ install -m0644 -D condor.sysusers.conf %{buildroot}%{_sysusersdir}/condor.conf
%_libdir/libclassad.so
%dir %_includedir/classad/
%_includedir/classad/attrrefs.h
-%_includedir/classad/cclassad.h
%_includedir/classad/classad_distribution.h
%_includedir/classad/classadErrno.h
%_includedir/classad/classad.h
@@ -841,6 +1179,7 @@ install -m0644 -D condor.sysusers.conf %{buildroot}%{_sysusersdir}/condor.conf
%_includedir/classad/debug.h
%_includedir/classad/exprList.h
%_includedir/classad/exprTree.h
+%_includedir/classad/flat_set.h
%_includedir/classad/fnCall.h
%_includedir/classad/indexfile.h
%_includedir/classad/jsonSink.h
@@ -862,6 +1201,17 @@ install -m0644 -D condor.sysusers.conf %{buildroot}%{_sysusersdir}/condor.conf
%_includedir/classad/xmlSink.h
%_includedir/classad/xmlSource.h
+%if %uw_build
+#################
+%files tarball
+%{_bindir}/make-ap-from-tarball
+%{_bindir}/make-personal-from-tarball
+%{_sbindir}/condor_configure
+%{_sbindir}/condor_install
+%{_mandir}/man1/condor_configure.1.gz
+%{_mandir}/man1/condor_install.1.gz
+%endif
+
#################
%files kbdd
%defattr(-,root,root,-)
@@ -869,39 +1219,51 @@ install -m0644 -D condor.sysusers.conf %{buildroot}%{_sysusersdir}/condor.conf
%_sbindir/condor_kbdd
#################
-%if ! 0%{?amzn}
+%if ! 0%{?amzn} && "%{os_release_id}" != "sles"
%files vm-gahp
%defattr(-,root,root,-)
%_sbindir/condor_vm-gahp
%_libexecdir/condor/libvirt_simple_script.awk
-%endif
+%endif
#################
%files test
%defattr(-,root,root,-)
%_libexecdir/condor/condor_sinful
%_libexecdir/condor/condor_testingd
%_libexecdir/condor/test_user_mapping
+%_libexecdir/condor/test_offer_resources
+%{_bindir}/common_transfer_savings.py
+%if %uw_build
+%_libdir/condor/condor_tests-%{version}.tar.gz
+%_libexecdir/condor/ccb_proxy_bench
+%_libexecdir/condor/test_dc_std_functiond
+%_libexecdir/condor/test_stdf_timer_d
+%_libexecdir/condor/test_std_pipe_handlerd
+%_libexecdir/condor/test_awaitable_deadline_socketd
+%_libexecdir/condor/test_awaitable_deadline_socket_client
+%_libexecdir/condor/test_generator
+%_libexecdir/condor/memory_exerciser_dinner
+%_libexecdir/condor/test_starter_guidance.exe
+%endif
+# Experimental - not for wider deployment
+%_bindir/condor_login
+%_sbindir/condor_placementd
-#################
%files -n python3-condor
%defattr(-,root,root,-)
%_bindir/condor_top
+%_bindir/condor_diagnostics
%_bindir/classad_eval
%_bindir/condor_watch_q
%_bindir/htcondor
-%_libdir/libpyclassad3*.so
-%_libexecdir/condor/libclassad_python_user.cpython-3*.so
-%_libexecdir/condor/libclassad_python3_user.so
-/usr/%{_lib}/python%{python3_version}/site-packages/classad/
-/usr/%{_lib}/python%{python3_version}/site-packages/htcondor/
/usr/%{_lib}/python%{python3_version}/site-packages/htcondor-*.egg-info/
/usr/%{_lib}/python%{python3_version}/site-packages/htcondor_cli/
/usr/%{_lib}/python%{python3_version}/site-packages/classad2/
/usr/%{_lib}/python%{python3_version}/site-packages/htcondor2/
%files credmon-local
-%doc /usr/share/doc/condor/examples/condor_credmon_oauth
+%doc examples/condor_credmon_oauth
%_sbindir/condor_credmon_oauth
%_sbindir/scitokens_credential_producer
%_libexecdir/condor/credmon
@@ -915,16 +1277,17 @@ install -m0644 -D condor.sysusers.conf %{buildroot}%{_sysusersdir}/condor.conf
%config(noreplace) %_sysconfdir/condor/config.d/40-oauth-tokens.conf
%ghost %_var/lib/condor/oauth_credentials/wsgi_session_key
-%if 0%{?with_vault_credmon}
%files credmon-vault
-%doc /usr/share/doc/condor/examples/condor_credmon_oauth
+%doc examples/condor_credmon_oauth
%_sbindir/condor_credmon_vault
%_bindir/condor_vault_storer
%_libexecdir/condor/credmon
%config(noreplace) %_sysconfdir/condor/config.d/40-vault-credmon.conf
%ghost %_var/lib/condor/oauth_credentials/CREDMON_COMPLETE
%ghost %_var/lib/condor/oauth_credentials/pid
-%endif
+
+%files credmon-multi
+%_bindir/condor_vault_storer
%files -n minicondor
%config(noreplace) %_sysconfdir/condor/config.d/00-minicondor
@@ -932,19 +1295,56 @@ install -m0644 -D condor.sysusers.conf %{buildroot}%{_sysusersdir}/condor.conf
%files ap
%config(noreplace) %_sysconfdir/condor/config.d/00-access-point
-#################
+%files ep
+%config(noreplace) %_sysconfdir/condor/config.d/00-execution-point
+
%post
/sbin/ldconfig
-%systemd_post %{name}.service
+%if %uw_build
+# Remove obsolete security configuration
+rm -f /etc/condor/config.d/00-htcondor-9.0.config
+%if 0%{?fedora}
+test -x /usr/sbin/selinuxenabled && /usr/sbin/selinuxenabled
+if [ $? = 0 ]; then
+ restorecon -R -v /var/lock/condor
+ setsebool -P condor_domain_can_network_connect 1
+ setsebool -P daemons_enable_cluster_mode 1
+ semanage port -a -t condor_port_t -p tcp 12345
+ # the number of extraneous SELinux warnings on f17 is very high
+fi
+%endif
+test -x /usr/sbin/selinuxenabled && /usr/sbin/selinuxenabled
+if [ $? = 0 ]; then
+ /usr/sbin/semodule -i /usr/share/condor/htcondor.pp
+%if 0%{?rhel} < 9
+ /usr/sbin/setsebool -P condor_domain_can_network_connect 1
+%endif
+ /usr/sbin/setsebool -P daemons_enable_cluster_mode 1
+fi
+%endif
+if [ $1 -eq 1 ] ; then
+ # Initial installation
+ /bin/systemctl daemon-reload >/dev/null 2>&1 || :
+fi
%preun
-%systemd_preun %{name}.service
+if [ $1 -eq 0 ] ; then
+ # Package removal, not upgrade
+ /bin/systemctl --no-reload disable condor.service > /dev/null 2>&1 || :
+ /bin/systemctl stop condor.service > /dev/null 2>&1 || :
+fi
-%postun -n condor
-%systemd_postun_with_restart %{name}.service
+%postun
/sbin/ldconfig
+/bin/systemctl daemon-reload >/dev/null 2>&1 || :
+# Note we don't try to restart - HTCondor will automatically notice the
+# binary has changed and do graceful or peaceful restart, based on its
+# configuration
%changelog
+* Sat Aug 22 2026 Tim Theisen <ttheisen@fedoraproject.org> - 25.13.2-1
+- Bring upstream and Fedora spec file in sync to speed updates
+
* Fri Sep 19 2025 Python Maint <python-maint@redhat.com> - 23.9.6-11
- Rebuilt for Python 3.14.0rc3 bytecode
diff --git a/condor.sysusers.conf b/condor.sysusers.conf
new file mode 100644
index 0000000..496b7ad
--- /dev/null
+++ b/condor.sysusers.conf
@@ -0,0 +1 @@
+u condor 64 'Owner of HTCondor Daemons' /var/lib/condor -
diff --git a/sources b/sources
index a1bce0d..07c5af7 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (condor-23.9.6.tar.gz) = 05f32c4669bef3178d21d349943caf69b652bce7b75713c2a1d1eb6f0526829ecf3e0fb75f4b729b5d0784ae1935a5137ca9451cb87dc83a43c82422a43a3953
+SHA512 (condor-25.13.2.tar.gz) = 9347110014e3817a94f225700c0138a2a12d5c51a7f966d5ce7253e715c9b2eb8618664d7ecf83210b01df20c045d0005ffecaaf2ed6967f0408685beddcb850
^ permalink raw reply related [flat|nested] only message in thread
only message in thread, other threads:[~2026-08-23 22:20 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2026-08-23 22:20 [rpms/condor] rawhide: Bring upstream and Fedora spec file in sync to speed updates Tim Theisen
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox