public inbox for git-commits@fedoraproject.org
help / color / mirror / Atom feed
* [rpms/condor] f44: Merge branch 'f43' into f44
@ 2026-08-24 3:16 Tim Theisen
0 siblings, 0 replies; 4+ messages in thread
From: Tim Theisen @ 2026-08-24 3:16 UTC (permalink / raw)
To: git-commits
A new commit has been pushed.
Repo : rpms/condor
Branch : f44
Commit : 7ab664fe5c94a074c455b0bfc08f18f1aff0f005
Author : Tim Theisen <ttheisen@fedoraproject.org>
Date : 2026-08-23T22:16:18-05:00
Stats : +18/-1 in 1 file(s)
URL : https://src.fedoraproject.org/rpms/condor/c/7ab664fe5c94a074c455b0bfc08f18f1aff0f005?branch=f44
Log:
Merge branch 'f43' into f44
---
diff --git a/condor.spec b/condor.spec
index 4a6c2fc..779cd4f 100644
--- a/condor.spec
+++ b/condor.spec
@@ -1,6 +1,6 @@
# Set the version and release here
%global condor_version 25.13.2
-%global condor_release 1
+%global condor_release 2
# set uw_build to 0 for downstream (Fedora or EPEL)
# UW build includes stuff for testing and tarballs
@@ -461,7 +461,9 @@ BuildArch: noarch
Requires: %name = %version-%release
Requires: condor-credmon-local = %{version}-%{release}
Requires: python3-urllib3
+%if %uw_build
Requires: htgettoken >= 1.1
+%endif
%description credmon-multi
Provides concurrent support for the Vault credmon alongside the Local
@@ -1345,6 +1347,9 @@ fi
# configuration
%changelog
+* Sun Aug 23 2026 Tim Theisen <ttheisen@fedoraproject.org> - 25.13.2-2
+- Drop htgettoken requirement from credmon-multi
+
* Sun Aug 23 2026 Tim Theisen <ttheisen@fedoraproject.org> - 25.13.2-1
- Bring upstream and Fedora spec file in sync to speed updates - rhbz#2316408
- Also fixes build for f45/rawhide - rhbz#2503824
diff --git a/condor.spec b/condor.spec
index 3bdebd0..779cd4f 100644
--- a/condor.spec
+++ b/condor.spec
@@ -1354,6 +1354,18 @@ fi
- Bring upstream and Fedora spec file in sync to speed updates - rhbz#2316408
- Also fixes build for f45/rawhide - rhbz#2503824
+* Fri Jan 16 2026 Fedora Release Engineering <releng@fedoraproject.org> - 23.9.6-15
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_44_Mass_Rebuild
+
+* Fri Jan 16 2026 Fedora Release Engineering <releng@fedoraproject.org> - 23.9.6-14
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_44_Mass_Rebuild
+
+* Mon Jan 12 2026 Jonathan Wakely <jwakely@fedoraproject.org> - 23.9.6-13
+- Rebuilt for Boost 1.90
+
+* Thu Oct 2 2025 Daniel P. Berrangé <berrange@redhat.com> - 23.9.6-12
+- Exclude build on i686
+
* Fri Sep 19 2025 Python Maint <python-maint@redhat.com> - 23.9.6-11
- Rebuilt for Python 3.14.0rc3 bytecode
^ permalink raw reply related [flat|nested] 4+ messages in thread* [rpms/condor] f44: Merge branch 'f43' into f44
@ 2026-08-25 11:56 Tim Theisen
0 siblings, 0 replies; 4+ messages in thread
From: Tim Theisen @ 2026-08-25 11:56 UTC (permalink / raw)
To: git-commits
A new commit has been pushed.
Repo : rpms/condor
Branch : f44
Commit : 3c13e02fd42913d3a0551df030eb5cff5954c806
Author : Tim Theisen <ttheisen@fedoraproject.org>
Date : 2026-08-25T06:54:58-05:00
Stats : +36/-2 in 2 file(s)
URL : https://src.fedoraproject.org/rpms/condor/c/3c13e02fd42913d3a0551df030eb5cff5954c806?branch=f44
Log:
Merge branch 'f43' into f44
---
diff --git a/condor.spec b/condor.spec
index 779cd4f..0863d70 100644
--- a/condor.spec
+++ b/condor.spec
@@ -1,6 +1,6 @@
# Set the version and release here
%global condor_version 25.13.2
-%global condor_release 2
+%global condor_release 3
# set uw_build to 0 for downstream (Fedora or EPEL)
# UW build includes stuff for testing and tarballs
@@ -36,7 +36,7 @@ Source1: %{name}.sysusers.conf
Source2: htcondor.pp
%endif
-Patch1: turn-off-warnings-as-errors.patch
+Patch1: fix-arm-warning.patch
ExcludeArch: %{ix86}
@@ -1347,6 +1347,9 @@ fi
# configuration
%changelog
+* Tue Aug 25 2026 Tim Theisen <ttheisen@fedoraproject.org> - 25.13.2-3
+- Fix warning on ARM plaform
+
* Sun Aug 23 2026 Tim Theisen <ttheisen@fedoraproject.org> - 25.13.2-2
- Drop htgettoken requirement from credmon-multi
diff --git a/fix-arm-warning.patch b/fix-arm-warning.patch
new file mode 100644
index 0000000..6756185
--- /dev/null
+++ b/fix-arm-warning.patch
@@ -0,0 +1,19 @@
+commit a55507f50e28f1af085df614a096ed617182b222
+Author: Greg Thain <gthain@cs.wisc.edu>
+Date: Mon Aug 24 09:01:54 2026 -0500
+
+ HTCONDOR-3851 Fix arm warning, where "char" is unsigned by default
+
+diff --git a/src/condor_utils/ad_printmask.h b/src/condor_utils/ad_printmask.h
+index 57c05e9daf..78921e7d44 100644
+--- a/src/condor_utils/ad_printmask.h
++++ b/src/condor_utils/ad_printmask.h
+@@ -99,7 +99,7 @@ struct Formatter
+ int width; // 0 for 'width from printf'
+ int options; // one or more of Formatter_Opt_XXX options
+ char fmt_letter; // actual letter in the % escape
+- char fmt_type; // one of the the printf_fmt_t enum values.
++ signed char fmt_type; // one of the the printf_fmt_t enum values (signed: PFT_CRASH is -1).
+ char fmtKind; // identifies type type of the union
+ char altKind; // identifies type of alt text to print when attribute cannot be fetched
+ const char * printfFmt; // may be NULL if fmtKind != PRINTF_FMT
diff --git a/condor.spec b/condor.spec
index 5fae2d9..0863d70 100644
--- a/condor.spec
+++ b/condor.spec
@@ -1357,6 +1357,18 @@ fi
- Bring upstream and Fedora spec file in sync to speed updates - rhbz#2316408
- Also fixes build for f45/rawhide - rhbz#2503824
+* Fri Jan 16 2026 Fedora Release Engineering <releng@fedoraproject.org> - 23.9.6-15
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_44_Mass_Rebuild
+
+* Fri Jan 16 2026 Fedora Release Engineering <releng@fedoraproject.org> - 23.9.6-14
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_44_Mass_Rebuild
+
+* Mon Jan 12 2026 Jonathan Wakely <jwakely@fedoraproject.org> - 23.9.6-13
+- Rebuilt for Boost 1.90
+
+* Thu Oct 2 2025 Daniel P. Berrangé <berrange@redhat.com> - 23.9.6-12
+- Exclude build on i686
+
* Fri Sep 19 2025 Python Maint <python-maint@redhat.com> - 23.9.6-11
- Rebuilt for Python 3.14.0rc3 bytecode
^ permalink raw reply related [flat|nested] 4+ messages in thread* [rpms/condor] f44: Merge branch 'f43' into f44
@ 2026-08-23 15:54 Tim Theisen
0 siblings, 0 replies; 4+ messages in thread
From: Tim Theisen @ 2026-08-23 15:54 UTC (permalink / raw)
To: git-commits
A new commit has been pushed.
Repo : rpms/condor
Branch : f44
Commit : 07390c40a4f8afa5c7230c9e3113eb6eb14d64ff
Author : Tim Theisen <ttheisen@fedoraproject.org>
Date : 2026-08-23T10:54:41-05:00
Stats : +56/-381 in 6 file(s)
URL : https://src.fedoraproject.org/rpms/condor/c/07390c40a4f8afa5c7230c9e3113eb6eb14d64ff?branch=f44
Log:
Merge branch 'f43' into f44
---
diff --git a/CVE-2025-30093.patch b/CVE-2025-30093.patch
deleted file mode 100644
index bc2bf7a..0000000
--- a/CVE-2025-30093.patch
+++ /dev/null
@@ -1,346 +0,0 @@
-diff --git a/src/condor_daemon_core.V6/daemon_command.cpp b/src/condor_daemon_core.V6/daemon_command.cpp
-index 63a879489e..ba9c5d691d 100644
---- a/src/condor_daemon_core.V6/daemon_command.cpp
-+++ b/src/condor_daemon_core.V6/daemon_command.cpp
-@@ -881,6 +881,7 @@ DaemonCommandProtocol::CommandProtocolResult DaemonCommandProtocol::ReadCommand(
- m_policy->LookupBool(ATTR_SEC_TRIED_AUTHENTICATION,tried_authentication);
- m_sock->setTriedAuthentication(tried_authentication);
- m_sock->setSessionID(session->id());
-+ m_sock->setPolicyAd(*m_policy);
- }
-
- // If the cached policy doesn't have a version, then
-@@ -1542,7 +1543,8 @@ DaemonCommandProtocol::CommandProtocolResult DaemonCommandProtocol::VerifyComman
- // these limits if present.
- std::string authz_policy;
- bool can_attempt = true;
-- if (m_policy && m_policy->EvaluateAttrString(ATTR_SEC_LIMIT_AUTHORIZATION, authz_policy)) {
-+ const ClassAd* policy_ad = m_policy ? m_policy : m_sock->getPolicyAd();
-+ if (policy_ad && policy_ad->EvaluateAttrString(ATTR_SEC_LIMIT_AUTHORIZATION, authz_policy)) {
- std::set<DCpermission> authz_limits;
- for (const auto& limit_str: StringTokenIterator(authz_policy)) {
- DCpermission limit_perm = getPermissionFromString(limit_str.c_str());
-diff --git a/src/condor_daemon_core.V6/daemon_core_main.cpp b/src/condor_daemon_core.V6/daemon_core_main.cpp
-index 1a7aa5fdc8..5177504617 100644
---- a/src/condor_daemon_core.V6/daemon_core_main.cpp
-+++ b/src/condor_daemon_core.V6/daemon_core_main.cpp
-@@ -1930,6 +1930,16 @@ handle_dc_start_token_request(int, Stream* stream)
- return false;
- }
-
-+ if (!param_boolean("SEC_ENABLE_TOKEN_REQUEST", true)) {
-+ ClassAd result_ad;
-+ result_ad.InsertAttr(ATTR_ERROR_STRING, "Token request disabled.");
-+ result_ad.InsertAttr(ATTR_ERROR_CODE, 44);
-+ stream->encode();
-+ putClassAd(stream, result_ad);
-+ stream->end_of_message();
-+ return false;
-+ }
-+
- int error_code = 0;
- std::string error_string;
-
-@@ -2107,6 +2117,16 @@ handle_dc_finish_token_request(int, Stream* stream)
- return false;
- }
-
-+ if (!param_boolean("SEC_ENABLE_TOKEN_REQUEST", true)) {
-+ ClassAd result_ad;
-+ result_ad.InsertAttr(ATTR_ERROR_STRING, "Token request disabled.");
-+ result_ad.InsertAttr(ATTR_ERROR_CODE, 44);
-+ stream->encode();
-+ putClassAd(stream, result_ad);
-+ stream->end_of_message();
-+ return false;
-+ }
-+
- int error_code = 0;
- std::string error_string;
-
-@@ -2203,6 +2223,16 @@ handle_dc_list_token_request(int, Stream* stream)
- return false;
- }
-
-+ if (!param_boolean("SEC_ENABLE_TOKEN_REQUEST", true)) {
-+ ClassAd result_ad;
-+ result_ad.InsertAttr(ATTR_ERROR_STRING, "Token request disabled.");
-+ result_ad.InsertAttr(ATTR_ERROR_CODE, 44);
-+ stream->encode();
-+ putClassAd(stream, result_ad);
-+ stream->end_of_message();
-+ return false;
-+ }
-+
- int error_code = 0;
- std::string error_string;
-
-@@ -2310,6 +2340,16 @@ handle_dc_approve_token_request(int, Stream* stream)
- return false;
- }
-
-+ if (!param_boolean("SEC_ENABLE_TOKEN_REQUEST", true)) {
-+ ClassAd result_ad;
-+ result_ad.InsertAttr(ATTR_ERROR_STRING, "Token request disabled.");
-+ result_ad.InsertAttr(ATTR_ERROR_CODE, 44);
-+ stream->encode();
-+ putClassAd(stream, result_ad);
-+ stream->end_of_message();
-+ return false;
-+ }
-+
- int error_code = 0;
- std::string error_string;
-
-@@ -2370,6 +2410,40 @@ handle_dc_approve_token_request(int, Stream* stream)
- request_id = -1;
- }
-
-+ if (!error_code && !has_admin && static_cast<Sock*>(stream)->hasAuthorizationBoundingSet()) {
-+ auto& token_authz_set = iter->second->getBoundingSet();
-+ bool reject = false;
-+ if (token_authz_set.empty()) {
-+ reject = true;
-+ }
-+ for (const auto& authz: token_authz_set) {
-+ if (! static_cast<Sock*>(stream)->isAuthorizationInBoundingSet(authz)) {
-+ reject = true;
-+ break;
-+ }
-+ }
-+ if (reject) {
-+ error_code = 7;
-+ error_string = "Insufficient privilege to approve request (scope restricted).";
-+ request_id = -1;
-+ }
-+ }
-+
-+ if (!error_code && !has_admin) {
-+ const ClassAd* policy_ad = static_cast<ReliSock*>(stream)->getPolicyAd();
-+ time_t client_expiry = -1;
-+ if (policy_ad) {
-+ policy_ad->LookupInteger("TokenExpirationTime", client_expiry);
-+ }
-+ time_t request_lifetime = iter->second->getLifetime();
-+ if ((request_lifetime == -1 && client_expiry >= 0) ||
-+ (request_lifetime >= 0 && client_expiry >= 0 && (request_lifetime + time(nullptr) > client_expiry))) {
-+ error_code = 8;
-+ error_string = "Insufficient privilege to approve request (lifetime).";
-+ request_id = -1;
-+ }
-+ }
-+
- CondorError err;
- std::string final_key_name = htcondor::get_token_signing_key(err);
- if ((request_id != -1) && final_key_name.empty()) {
-@@ -2424,6 +2498,16 @@ handle_dc_auto_approve_token_request(int, Stream* stream )
- return false;
- }
-
-+ if (!param_boolean("SEC_ENABLE_TOKEN_REQUEST", true)) {
-+ ClassAd result_ad;
-+ result_ad.InsertAttr(ATTR_ERROR_STRING, "Token request disabled.");
-+ result_ad.InsertAttr(ATTR_ERROR_CODE, 44);
-+ stream->encode();
-+ putClassAd(stream, result_ad);
-+ stream->end_of_message();
-+ return false;
-+ }
-+
- std::string netblock;
- time_t lifetime = -1;
- ad.EvaluateAttrString(ATTR_SUBNET, netblock);
-@@ -2516,6 +2600,16 @@ handle_dc_exchange_scitoken(int, Stream *stream)
- return false;
- }
-
-+ if (!param_boolean("SEC_ENABLE_SCITOKEN_EXCHANGE", true)) {
-+ ClassAd result_ad;
-+ result_ad.InsertAttr(ATTR_ERROR_STRING, "SciToken exchange disabled.");
-+ result_ad.InsertAttr(ATTR_ERROR_CODE, 44);
-+ stream->encode();
-+ putClassAd(stream, result_ad);
-+ stream->end_of_message();
-+ return false;
-+ }
-+
- classad::ClassAd result_ad;
- std::string result_token;
- int error_code = 0;
-@@ -2616,12 +2710,49 @@ handle_dc_session_token(int, Stream* stream)
- dprintf(D_FULLDEBUG, "handle_dc_session_token: failed to read input from client\n");
- return false;
- }
-+
-+ if (!param_boolean("SEC_ENABLE_TOKEN_FETCH", true)) {
-+ ClassAd result_ad;
-+ result_ad.InsertAttr(ATTR_ERROR_STRING, "Token fetch disabled.");
-+ result_ad.InsertAttr(ATTR_ERROR_CODE, 44);
-+ stream->encode();
-+ putClassAd(stream, result_ad);
-+ stream->end_of_message();
-+ return false;
-+ }
-+
- CondorError err;
- classad::ClassAd result_ad;
-
-+ ReliSock* sock = static_cast<ReliSock*>(stream);
- std::vector<std::string> authz_list;
- std::string authz_list_str;
-- if (ad.EvaluateAttrString(ATTR_SEC_LIMIT_AUTHORIZATION, authz_list_str)) {
-+ ad.EvaluateAttrString(ATTR_SEC_LIMIT_AUTHORIZATION, authz_list_str);
-+ bool sock_has_authz_limit = sock->hasAuthorizationBoundingSet();
-+ if (!authz_list_str.empty()) {
-+ if (sock_has_authz_limit) {
-+ for (const auto& item: StringTokenIterator(authz_list_str)) {
-+ if (sock->isAuthorizationInBoundingSet(item)) {
-+ authz_list.emplace_back(item);
-+ }
-+ }
-+ if (authz_list.empty()) {
-+ result_ad.InsertAttr(ATTR_ERROR_STRING, "Session doesn't allow requested authorization levels.");
-+ result_ad.InsertAttr(ATTR_ERROR_CODE, 4);
-+ stream->encode();
-+ if (!putClassAd(stream, result_ad) ||
-+ !stream->end_of_message())
-+ {
-+ dprintf(D_FULLDEBUG, "handle_dc_session_token: failed to send response ad to client\n");
-+ return false;
-+ }
-+ return true;
-+ }
-+ } else {
-+ authz_list = split(authz_list_str);
-+ }
-+ } else if (sock_has_authz_limit) {
-+ sock->getPolicyAd()->LookupString(ATTR_SEC_LIMIT_AUTHORIZATION, authz_list_str);
- authz_list = split(authz_list_str);
- }
- int requested_lifetime;
-diff --git a/src/condor_includes/sock.h b/src/condor_includes/sock.h
-index 20af90ddf1..ea63d23758 100644
---- a/src/condor_includes/sock.h
-+++ b/src/condor_includes/sock.h
-@@ -393,6 +393,7 @@ public:
- void setAuthenticatedName(char const *auth_name);
- const char *getAuthenticatedName() const;
-
-+ bool hasAuthorizationBoundingSet() const;
- bool isAuthorizationInBoundingSet(const std::string &) const;
-
- void setCryptoMethodUsed(char const *crypto_method);
-@@ -683,6 +684,8 @@ private:
- connection attempt.
- **/
- void cancel_connect();
-+
-+ void computeAuthorizationBoundingSet() const;
- };
-
- void dprintf ( int flags, const Sock & sock, const char *fmt, ... ) CHECK_PRINTF_FORMAT(3,4);
-diff --git a/src/condor_io/sock.cpp b/src/condor_io/sock.cpp
-index aa6c21bf8e..685cafbbf8 100644
---- a/src/condor_io/sock.cpp
-+++ b/src/condor_io/sock.cpp
-@@ -302,6 +302,7 @@ Sock::setPolicyAd(const classad::ClassAd &ad)
- {
- if (!_policy_ad) {_policy_ad = new classad::ClassAd();}
- if (_policy_ad) {_policy_ad->CopyFrom(ad);}
-+ m_authz_bound.clear();
- }
-
-
-@@ -315,6 +316,41 @@ Sock::getPolicyAd(classad::ClassAd &ad) const
- }
-
-
-+void
-+Sock::computeAuthorizationBoundingSet() const
-+{
-+ const_cast<Sock*>(this)->m_authz_bound.clear();
-+ if (_policy_ad) {
-+ std::string authz_policy;
-+ if (_policy_ad->EvaluateAttrString(ATTR_SEC_LIMIT_AUTHORIZATION, authz_policy))
-+ {
-+ for (const auto& authz_name : StringTokenIterator(authz_policy)) {
-+ const_cast<Sock*>(this)->m_authz_bound.insert(authz_name);
-+ DCpermission implied_perm = getPermissionFromString(authz_name.c_str());
-+ if (implied_perm != NOT_A_PERM) {
-+ while ((implied_perm = DCpermissionHierarchy::nextImplied(implied_perm)) < LAST_PERM) {
-+ const_cast<Sock*>(this)->m_authz_bound.insert(PermString(implied_perm));
-+ }
-+ }
-+ }
-+ }
-+ }
-+ if (m_authz_bound.empty()) {
-+ // Put in a nonsense authz level to prevent re-parsing;
-+ // an empty bounding set is interpretted as no bounding set at all.
-+ const_cast<Sock*>(this)->m_authz_bound.insert("ALL_PERMISSIONS");
-+ }
-+}
-+
-+bool
-+Sock::hasAuthorizationBoundingSet() const
-+{
-+ if (m_authz_bound.empty()) {
-+ computeAuthorizationBoundingSet();
-+ }
-+ return m_authz_bound.find("ALL_PERMISSIONS") == m_authz_bound.end();
-+}
-+
- bool
- Sock::isAuthorizationInBoundingSet(const std::string &authz) const
- {
-@@ -326,26 +362,7 @@ Sock::isAuthorizationInBoundingSet(const std::string &authz) const
- // Cache the bounding set on first access.
- if (m_authz_bound.empty())
- {
-- if (_policy_ad) {
-- std::string authz_policy;
-- if (_policy_ad->EvaluateAttrString(ATTR_SEC_LIMIT_AUTHORIZATION, authz_policy))
-- {
-- for (const auto& authz_name : StringTokenIterator(authz_policy)) {
-- const_cast<Sock*>(this)->m_authz_bound.insert(authz_name);
-- DCpermission implied_perm = getPermissionFromString(authz_name.c_str());
-- if (implied_perm != NOT_A_PERM) {
-- while ((implied_perm = DCpermissionHierarchy::nextImplied(implied_perm)) < LAST_PERM) {
-- const_cast<Sock*>(this)->m_authz_bound.insert(PermString(implied_perm));
-- }
-- }
-- }
-- }
-- }
-- if (m_authz_bound.empty()) {
-- // Put in a nonsense authz level to prevent re-parsing;
-- // an empty bounding set is interpretted as no bounding set at all.
-- const_cast<Sock*>(this)->m_authz_bound.insert("ALL_PERMISSIONS");
-- }
-+ computeAuthorizationBoundingSet();
- }
- return (m_authz_bound.find(authz) != m_authz_bound.end()) ||
- (m_authz_bound.find("ALL_PERMISSIONS") != m_authz_bound.end());
-diff --git a/src/condor_utils/param_info.in b/src/condor_utils/param_info.in
-index 59b72ee01d..dd6de69cd1 100644
---- a/src/condor_utils/param_info.in
-+++ b/src/condor_utils/param_info.in
-@@ -2565,6 +2565,18 @@ description=Default max expiration time of issued session tokens.
- type=int
- tags=condor_auth_passwd
-
-+[SEC_ENABLE_TOKEN_REQUEST]
-+default=true
-+type=bool
-+
-+[SEC_ENABLE_TOKEN_FETCH]
-+default=true
-+type=bool
-+
-+[SEC_ENABLE_SCITOKEN_EXCHANGE]
-+default=true
-+type=bool
-+
- [EMAIL_DOMAIN]
- default=
- type=string
diff --git a/condor.spec b/condor.spec
index f88a406..4a6c2fc 100644
--- a/condor.spec
+++ b/condor.spec
@@ -36,6 +36,8 @@ Source1: %{name}.sysusers.conf
Source2: htcondor.pp
%endif
+Patch1: turn-off-warnings-as-errors.patch
+
ExcludeArch: %{ix86}
# Special arch for AlmaLinux 10
@@ -542,6 +544,7 @@ exit 0
%prep
# For release tarballs
%setup -q -n %{name}-%{condor_version}
+%patch 1 -p1
# fix errant execute permissions
find src -perm /a+x -type f -name "*.[Cch]" -exec chmod a-x {} \;
@@ -1342,8 +1345,9 @@ fi
# 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
+* Sun Aug 23 2026 Tim Theisen <ttheisen@fedoraproject.org> - 25.13.2-1
+- Bring upstream and Fedora spec file in sync to speed updates - rhbz#2316408
+- Also fixes build for f45/rawhide - rhbz#2503824
* Fri Jan 16 2026 Fedora Release Engineering <releng@fedoraproject.org> - 23.9.6-15
- Rebuilt for https://fedoraproject.org/wiki/Fedora_44_Mass_Rebuild
diff --git a/exit_37.sif.patch b/exit_37.sif.patch
deleted file mode 100644
index ec0f1ac..0000000
--- a/exit_37.sif.patch
+++ /dev/null
@@ -1,16 +0,0 @@
-diff --git a/src/condor_starter.V6.1/CMakeLists.txt b/src/condor_starter.V6.1/CMakeLists.txt
-index ba94bfb572..651eae6c13 100644
---- a/src/condor_starter.V6.1/CMakeLists.txt
-+++ b/src/condor_starter.V6.1/CMakeLists.txt
-@@ -127,7 +127,10 @@ endif()
-
- if (LINUX)
- install ( FILES ${CMAKE_CURRENT_SOURCE_DIR}/htcondor_docker_test DESTINATION ${C_LIBEXEC} )
-- install ( FILES ${CMAKE_CURRENT_SOURCE_DIR}/exit_37.sif.${SYS_ARCH} RENAME exit_37.sif DESTINATION ${C_LIBEXEC})
-+
-+ if ("${SYS_ARCH}" STREQUAL "AARCH64" OR "${SYS_ARCH}" STREQUAL "PPC64LE" OR "${SYS_ARCH}" STREQUAL "X86_64")
-+ install ( FILES ${CMAKE_CURRENT_SOURCE_DIR}/exit_37.sif.${SYS_ARCH} RENAME exit_37.sif DESTINATION ${C_LIBEXEC})
-+ endif()
- install ( DIRECTORY DESTINATION ${C_LIBEXEC}/singularity_test_sandbox )
- install ( DIRECTORY DESTINATION ${C_LIBEXEC}/singularity_test_sandbox/dev )
- install ( DIRECTORY DESTINATION ${C_LIBEXEC}/singularity_test_sandbox/proc )
diff --git a/fedora-spec-patch b/fedora-spec-patch
new file mode 100644
index 0000000..7f81472
--- /dev/null
+++ b/fedora-spec-patch
@@ -0,0 +1,21 @@
+diff --git a/condor.spec b/condor.spec
+index 6a3c193..270b98b 100644
+--- a/condor.spec
++++ b/condor.spec
+@@ -36,6 +36,8 @@ Source1: %{name}.sysusers.conf
+ Source2: htcondor.pp
+ %endif
+
++Patch1: turn-off-warnings-as-errors.patch
++
+ ExcludeArch: %{ix86}
+
+ # Special arch for AlmaLinux 10
+@@ -542,6 +544,7 @@ exit 0
+ %prep
+ # For release tarballs
+ %setup -q -n %{name}-%{condor_version}
++%patch 1 -p1
+
+ # fix errant execute permissions
+ find src -perm /a+x -type f -name "*.[Cch]" -exec chmod a-x {} \;
diff --git a/turn-off-warnings-as-errors.patch b/turn-off-warnings-as-errors.patch
new file mode 100644
index 0000000..196b120
--- /dev/null
+++ b/turn-off-warnings-as-errors.patch
@@ -0,0 +1,17 @@
+diff --git a/build/cmake/CondorConfigure.cmake b/build/cmake/CondorConfigure.cmake
+index fa912d933b..12e3efbe75 100644
+--- a/build/cmake/CondorConfigure.cmake
++++ b/build/cmake/CondorConfigure.cmake
+@@ -507,12 +507,6 @@ if("${OS_NAME}" STREQUAL "LINUX")
+ set(CURL_USES_NSS TRUE)
+ endif()
+
+- # Our fedora build is almost warning-clean. Let's keep
+- # it that way.
+- if (EXISTS "/etc/fedora-release")
+- set (CMAKE_COMPILE_WARNING_AS_ERROR ON)
+- endif()
+-
+ elseif(APPLE)
+ add_definitions(-DDarwin)
+ # CRUFT Remove this variable. All cmake files should be using APPLE.
diff --git a/unified-bin.patch b/unified-bin.patch
deleted file mode 100644
index ab6257b..0000000
--- a/unified-bin.patch
+++ /dev/null
@@ -1,17 +0,0 @@
-diff --git a/build/cmake/CondorPackageConfig.cmake b/build/cmake/CondorPackageConfig.cmake
-index ed894501fc..4a296051d0 100644
---- a/build/cmake/CondorPackageConfig.cmake
-+++ b/build/cmake/CondorPackageConfig.cmake
-@@ -490,7 +490,11 @@ elseif( "${OS_NAME}" STREQUAL "LINUX" AND CONDOR_PACKAGE_BUILD )
- set( C_BIN usr/bin )
- set( C_LIBEXEC usr/libexec/condor )
- set( C_LIBEXEC_BLAHP usr/libexec/blahp )
-- set( C_SBIN usr/sbin )
-+ if ( ${LINUX_NAME} MATCHES "Fedora" AND ${LINUX_VER} GREATER 41 )
-+ set( C_SBIN usr/bin )
-+ else()
-+ set( C_SBIN usr/sbin )
-+ endif()
- set( C_INCLUDE usr/include/condor )
- set( C_INCLUDE_PUBLIC usr/include )
- set( C_MAN usr/share/man/man1 )
diff --git a/condor.spec b/condor.spec
index a342039..4a6c2fc 100644
--- a/condor.spec
+++ b/condor.spec
@@ -1349,6 +1349,18 @@ fi
- Bring upstream and Fedora spec file in sync to speed updates - rhbz#2316408
- Also fixes build for f45/rawhide - rhbz#2503824
+* Fri Jan 16 2026 Fedora Release Engineering <releng@fedoraproject.org> - 23.9.6-15
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_44_Mass_Rebuild
+
+* Fri Jan 16 2026 Fedora Release Engineering <releng@fedoraproject.org> - 23.9.6-14
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_44_Mass_Rebuild
+
+* Mon Jan 12 2026 Jonathan Wakely <jwakely@fedoraproject.org> - 23.9.6-13
+- Rebuilt for Boost 1.90
+
+* Thu Oct 2 2025 Daniel P. Berrangé <berrange@redhat.com> - 23.9.6-12
+- Exclude build on i686
+
* Fri Sep 19 2025 Python Maint <python-maint@redhat.com> - 23.9.6-11
- Rebuilt for Python 3.14.0rc3 bytecode
^ permalink raw reply related [flat|nested] 4+ messages in thread* [rpms/condor] f44: Merge branch 'f43' into f44
@ 2026-08-23 15:54 Tim Theisen
0 siblings, 0 replies; 4+ messages in thread
From: Tim Theisen @ 2026-08-23 15:54 UTC (permalink / raw)
To: git-commits
A new commit has been pushed.
Repo : rpms/condor
Branch : f44
Commit : ca18c2b457ad9038b0427b0ed89559b1fc94ee8f
Author : Tim Theisen <ttheisen@fedoraproject.org>
Date : 2026-08-22T22:16:38-05:00
Stats : +638/-226 in 4 file(s)
URL : https://src.fedoraproject.org/rpms/condor/c/ca18c2b457ad9038b0427b0ed89559b1fc94ee8f?branch=f44
Log:
Merge branch 'f43' into f44
---
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 7faf0c3..f88a406 100644
--- a/condor.spec
+++ b/condor.spec
@@ -1,129 +1,305 @@
-%global version 23.9.6
-%global version_ %(tr . _ <<< %{version})
-
-%global with_vault_credmon 0
+# 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: 23.9.6
-Release: 15%{?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
+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
ExcludeArch: %{ix86}
-Patch1: exit_37.sif.patch
-Patch2: unified-bin.patch
-Patch3: CVE-2025-30093.patch
+# Special arch for AlmaLinux 10
+%if 0%{?x86_64_v2}
+BuildArch: x86_64_v2
+%endif
-# This is a stopgap until I can conditionalize the cmake files
-# use the system libfmt if suitable version available
+%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
@@ -132,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,
@@ -146,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
@@ -163,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
@@ -223,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
@@ -257,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
@@ -266,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
@@ -281,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 {
@@ -346,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
@@ -377,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
@@ -443,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
@@ -509,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
@@ -518,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
@@ -533,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
@@ -577,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
@@ -586,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
@@ -607,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
@@ -618,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
@@ -660,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
@@ -674,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
@@ -683,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
@@ -694,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
@@ -724,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
@@ -733,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
@@ -741,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
@@ -789,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
@@ -796,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/*
@@ -812,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
@@ -830,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
@@ -843,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
@@ -864,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,-)
@@ -871,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
@@ -917,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
@@ -934,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 Jan 16 2026 Fedora Release Engineering <releng@fedoraproject.org> - 23.9.6-15
- Rebuilt for https://fedoraproject.org/wiki/Fedora_44_Mass_Rebuild
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
diff --git a/condor.spec b/condor.spec
index 6f01cf9..f88a406 100644
--- a/condor.spec
+++ b/condor.spec
@@ -1345,6 +1345,18 @@ fi
* 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 Jan 16 2026 Fedora Release Engineering <releng@fedoraproject.org> - 23.9.6-15
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_44_Mass_Rebuild
+
+* Fri Jan 16 2026 Fedora Release Engineering <releng@fedoraproject.org> - 23.9.6-14
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_44_Mass_Rebuild
+
+* Mon Jan 12 2026 Jonathan Wakely <jwakely@fedoraproject.org> - 23.9.6-13
+- Rebuilt for Boost 1.90
+
+* Thu Oct 2 2025 Daniel P. Berrangé <berrange@redhat.com> - 23.9.6-12
+- Exclude build on i686
+
* Fri Sep 19 2025 Python Maint <python-maint@redhat.com> - 23.9.6-11
- Rebuilt for Python 3.14.0rc3 bytecode
^ permalink raw reply related [flat|nested] 4+ messages in thread
end of thread, other threads:[~2026-08-25 11:56 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2026-08-24 3:16 [rpms/condor] f44: Merge branch 'f43' into f44 Tim Theisen
-- strict thread matches above, loose matches on Subject: below --
2026-08-25 11:56 Tim Theisen
2026-08-23 15:54 Tim Theisen
2026-08-23 15:54 Tim Theisen
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox