Changes to 'refs/tags/SatConfig-general-1.216.17-1'
by Miroslav Suchý
Tag 'SatConfig-general-1.216.17-1' created by Miroslav Suchý <msuchy(a)redhat.com> at 2010-04-14 08:04 +0000
Tagging package [SatConfig-general] version [1.216.17-1] in directory [monitoring/SatConfig/general/].
Changes since spacewalk-backend-0.9.21-1:
Colin Coe (1):
Add 'arch' to channel.list*Channels
Miroslav Suchý (2):
add NOCpulse-ini to %files, so it is actually included in package
Automatic commit of package [SatConfig-general] release [1.216.17-1].
Tomas Lestach (1):
fixing column name in sql query of NOCpulse-ini
---
java/code/src/com/redhat/rhn/common/db/datasource/xml/Channel_queries.xml | 18 ++++++----
java/code/src/com/redhat/rhn/frontend/dto/ChannelTreeNode.java | 15 ++++++++
java/code/src/com/redhat/rhn/frontend/xmlrpc/serializer/ChannelTreeNodeSerializer.java | 5 ++
monitoring/SatConfig/general/NOCpulse-ini | 2 -
monitoring/SatConfig/general/SatConfig-general.spec | 7 +++
rel-eng/packages/SatConfig-general | 2 -
6 files changed, 40 insertions(+), 9 deletions(-)
---
14 years, 2 months
2 commits - monitoring/SatConfig rel-eng/packages
by Miroslav Suchý
monitoring/SatConfig/general/SatConfig-general.spec | 7 ++++++-
rel-eng/packages/SatConfig-general | 2 +-
2 files changed, 7 insertions(+), 2 deletions(-)
New commits:
commit 9f3cf74ed1eca4a170ada0d09e2db431f8b2b707
Author: Miroslav Suchý <msuchy(a)redhat.com>
Date: Wed Apr 14 10:04:38 2010 +0200
Automatic commit of package [SatConfig-general] release [1.216.17-1].
diff --git a/monitoring/SatConfig/general/SatConfig-general.spec b/monitoring/SatConfig/general/SatConfig-general.spec
index 005ec0c..77cb065 100644
--- a/monitoring/SatConfig/general/SatConfig-general.spec
+++ b/monitoring/SatConfig/general/SatConfig-general.spec
@@ -2,7 +2,7 @@
%define hb_res_dir %{_sysconfdir}/ha.d/resource.d
%define installed_dir %sysv_dir/installed
Name: SatConfig-general
-Version: 1.216.16
+Version: 1.216.17
Release: 1%{?dist}
Summary: Satellite Configuration System - general setup, used by many packages
URL: https://fedorahosted.org/spacewalk
@@ -65,7 +65,7 @@ install -D -p -m 755 NOCpulse-ini $RPM_BUILD_ROOT%{_sbindir}/NOCpulse-ini
rm -rf $RPM_BUILD_ROOT
%changelog
-* Wed Apr 14 2010 Miroslav Suchý <msuchy(a)redhat.com>
+* Wed Apr 14 2010 Miroslav Suchý <msuchy(a)redhat.com> 1.216.17-1
- add NOCpulse-ini to %%files
* Thu Sep 17 2009 Miroslav Suchý <msuchy(a)redhat.com> 1.216.16-1
diff --git a/rel-eng/packages/SatConfig-general b/rel-eng/packages/SatConfig-general
index 61f62af..48c02d7 100644
--- a/rel-eng/packages/SatConfig-general
+++ b/rel-eng/packages/SatConfig-general
@@ -1 +1 @@
-1.216.16-1 monitoring/SatConfig/general/
+1.216.17-1 monitoring/SatConfig/general/
commit 5a3d548e3666dc0a49923e546915da4cb0849d76
Author: Miroslav Suchý <msuchy(a)redhat.com>
Date: Wed Apr 14 10:04:27 2010 +0200
add NOCpulse-ini to %files, so it is actually included in package
diff --git a/monitoring/SatConfig/general/SatConfig-general.spec b/monitoring/SatConfig/general/SatConfig-general.spec
index 6315e25..005ec0c 100644
--- a/monitoring/SatConfig/general/SatConfig-general.spec
+++ b/monitoring/SatConfig/general/SatConfig-general.spec
@@ -41,6 +41,7 @@ install -m 755 pip $RPM_BUILD_ROOT%sysv_dir
install -m 444 SysV.ini $RPM_BUILD_ROOT%sysv_dir
ln -s ../../rc.d/np.d/hbResource $RPM_BUILD_ROOT%hb_res_dir/ClusterLeader
install -D -m 644 NOCpulse-ini.8 $RPM_BUILD_ROOT%{_mandir}/man8/NOCpulse-ini.8
+install -D -p -m 755 NOCpulse-ini $RPM_BUILD_ROOT%{_sbindir}/NOCpulse-ini
%files
%defattr(-,root,root,-)
@@ -56,6 +57,7 @@ install -D -m 644 NOCpulse-ini.8 $RPM_BUILD_ROOT%{_mandir}/man8/NOCpulse-ini.8
%sysv_dir/pip
%sysv_dir/SysV.ini
%hb_res_dir/*
+%{_sbindir}/NOCpulse-ini
%doc 1-STARTUP_SEQUENCE 2-COMMANDS_OVERVIEW 3-CONFIGURATION 4-DEVELOPMENT 5-STEPS_LEGEND
%{_mandir}/man8/NOCpulse-ini.8.*
@@ -63,6 +65,9 @@ install -D -m 644 NOCpulse-ini.8 $RPM_BUILD_ROOT%{_mandir}/man8/NOCpulse-ini.8
rm -rf $RPM_BUILD_ROOT
%changelog
+* Wed Apr 14 2010 Miroslav Suchý <msuchy(a)redhat.com>
+- add NOCpulse-ini to %%files
+
* Thu Sep 17 2009 Miroslav Suchý <msuchy(a)redhat.com> 1.216.16-1
- 476851 - removal of tables: rhn_db_environment, rhn_environment
14 years, 2 months
2 commits - java/code monitoring/SatConfig
by Tomas Lestach
java/code/src/com/redhat/rhn/common/db/datasource/xml/Channel_queries.xml | 18 ++++++----
java/code/src/com/redhat/rhn/frontend/dto/ChannelTreeNode.java | 15 ++++++++
java/code/src/com/redhat/rhn/frontend/xmlrpc/serializer/ChannelTreeNodeSerializer.java | 5 ++
monitoring/SatConfig/general/NOCpulse-ini | 2 -
4 files changed, 33 insertions(+), 7 deletions(-)
New commits:
commit f88cfa6ae42302ac2895d060a1ab6ce1cc31ad36
Author: Tomas Lestach <tlestach(a)redhat.com>
Date: Tue Apr 13 21:04:00 2010 +0200
fixing column name in sql query of NOCpulse-ini
diff --git a/monitoring/SatConfig/general/NOCpulse-ini b/monitoring/SatConfig/general/NOCpulse-ini
index 8bcd01f..a1ea0d7 100644
--- a/monitoring/SatConfig/general/NOCpulse-ini
+++ b/monitoring/SatConfig/general/NOCpulse-ini
@@ -103,7 +103,7 @@ if ($set_macro) {
my $sql = qq|
UPDATE rhn_config_macro
SET definition=?
- WHERE macro.name = ?
+ WHERE name = ?
|;
my $sth = $ini->dbh->prepare($sql);
$sth->execute($new_value, $set_macro);
commit ff831cb0672534feefe7c6d6ccb1c923c2a47a70
Author: Colin Coe <colin.coe(a)gmail.com>
Date: Tue Apr 6 21:40:59 2010 +0800
Add 'arch' to channel.list*Channels
diff --git a/java/code/src/com/redhat/rhn/common/db/datasource/xml/Channel_queries.xml b/java/code/src/com/redhat/rhn/common/db/datasource/xml/Channel_queries.xml
index b648a7e..3fab8f3 100644
--- a/java/code/src/com/redhat/rhn/common/db/datasource/xml/Channel_queries.xml
+++ b/java/code/src/com/redhat/rhn/common/db/datasource/xml/Channel_queries.xml
@@ -410,7 +410,8 @@ SELECT CFO.id, CFO.org_id, CFO.name, CFO.label, CFO.current_members, CFO.max_mem
C.org_id,
(select org.name
from web_customer org
- where org.id = C.org_id) as org_name
+ where org.id = C.org_id) as org_name,
+ (select CA.name from rhnChannelArch CA where CA.ID = C.channel_arch_id) arch_name
from rhnChannel C inner join
rhnUserChannel UC on UC.channel_id = C.id
where UC.user_id = :user_id
@@ -431,7 +432,8 @@ SELECT CFO.id, CFO.org_id, CFO.name, CFO.label, CFO.current_members, CFO.max_mem
C.org_id,
(select org.name
from web_customer org
- where org.id = C.org_id) as org_name
+ where org.id = C.org_id) as org_name,
+ (select CA.name from rhnChannelArch CA where CA.ID = C.channel_arch_id) arch_name
from rhnSharedChannelView C inner join
rhnUserChannel UC on UC.channel_id = C.id
where UC.user_id = :user_id
@@ -452,7 +454,8 @@ SELECT CFO.id, CFO.org_id, CFO.name, CFO.label, CFO.current_members, CFO.max_mem
C.org_id,
(select org.name
from web_customer org
- where org.id = C.org_id) as org_name
+ where org.id = C.org_id) as org_name,
+ (select CA.name from rhnChannelArch CA where CA.ID = C.channel_arch_id) arch_name
from rhnChannel C inner join
rhnUserChannel UC on UC.channel_id = C.id
where UC.user_id = :user_id AND
@@ -479,7 +482,8 @@ SELECT CFO.id, CFO.org_id, CFO.name, CFO.label, CFO.current_members, CFO.max_mem
C.org_id,
(select org.name
from web_customer org
- where org.id = C.org_id) as org_name
+ where org.id = C.org_id) as org_name,
+ (select CA.name from rhnChannelArch CA where CA.ID = C.channel_arch_id) arch_name
from rhnChannel C inner join
rhnUserChannel UC on UC.channel_id = C.id
where UC.user_id = :user_id and
@@ -499,7 +503,8 @@ SELECT CFO.id, CFO.org_id, CFO.name, CFO.label, CFO.current_members, CFO.max_mem
(SELECT COUNT(P.package_id)
FROM rhnChannelPackage P
WHERE P.channel_id = C.id
- ) AS package_count
+ ) AS package_count,
+ (select CA.name from rhnChannelArch CA where CA.ID = C.channel_arch_id) arch_name
from rhnChannel C inner join
rhnUserChannel UC on UC.channel_id = C.id left join
rhnChannel C2 on C.parent_channel = C2.id
@@ -518,7 +523,8 @@ SELECT CFO.id, CFO.org_id, CFO.name, CFO.label, CFO.current_members, CFO.max_mem
(SELECT COUNT(P.package_id)
FROM rhnChannelPackage P
WHERE P.channel_id = C.id
- ) AS package_count
+ ) AS package_count,
+ (select CA.name from rhnChannelArch CA where CA.ID = C.channel_arch_id) arch_name
from rhnChannel C inner join
rhnUserChannel UC on UC.channel_id = C.id left join
rhnChannel C2 on C2.parent_channel = C.id
diff --git a/java/code/src/com/redhat/rhn/frontend/dto/ChannelTreeNode.java b/java/code/src/com/redhat/rhn/frontend/dto/ChannelTreeNode.java
index 4c0ba0e..c173811 100644
--- a/java/code/src/com/redhat/rhn/frontend/dto/ChannelTreeNode.java
+++ b/java/code/src/com/redhat/rhn/frontend/dto/ChannelTreeNode.java
@@ -46,6 +46,7 @@ public class ChannelTreeNode extends BaseDto implements BaseListDto,
private Long parentId;
private Long orgId;
private String orgName;
+ private String archName;
@@ -458,4 +459,18 @@ public class ChannelTreeNode extends BaseDto implements BaseListDto,
orgName = orgname;
}
+ /**
+ * @return Returns the archName.
+ */
+ public String getArchName() {
+ return archName;
+ }
+
+ /**
+ * @param archNameIn The archName to set.
+ */
+ public void setArchName(String archNameIn) {
+ this.archName = archNameIn;
+ }
+
}
diff --git a/java/code/src/com/redhat/rhn/frontend/xmlrpc/serializer/ChannelTreeNodeSerializer.java b/java/code/src/com/redhat/rhn/frontend/xmlrpc/serializer/ChannelTreeNodeSerializer.java
index 461bd6a..3dd574f 100644
--- a/java/code/src/com/redhat/rhn/frontend/xmlrpc/serializer/ChannelTreeNodeSerializer.java
+++ b/java/code/src/com/redhat/rhn/frontend/xmlrpc/serializer/ChannelTreeNodeSerializer.java
@@ -14,6 +14,8 @@
*/
package com.redhat.rhn.frontend.xmlrpc.serializer;
+import com.redhat.rhn.domain.channel.Channel;
+import com.redhat.rhn.domain.channel.ChannelFactory;
import com.redhat.rhn.frontend.dto.ChannelTreeNode;
import com.redhat.rhn.frontend.xmlrpc.serializer.util.SerializerHelper;
@@ -37,6 +39,7 @@ import redstone.xmlrpc.XmlRpcSerializer;
* #prop("string", "provider_name")
* #prop("int", "packages")
* #prop("int", "systems")
+ * #prop("string", "arch_name")
* #struct_end()
*/
public class ChannelTreeNodeSerializer implements XmlRpcCustomSerializer {
@@ -80,6 +83,8 @@ public class ChannelTreeNodeSerializer implements XmlRpcCustomSerializer {
helper.add("systems", ctn.getSystemCount());
}
+ helper.add("arch_name", ctn.getArchName());
+
helper.writeTo(output);
}
}
14 years, 2 months
Changes to 'refs/tags/spacewalk-backend-0.9.21-1'
by Miroslav Suchý
Tag 'spacewalk-backend-0.9.21-1' created by Miroslav Suchý <msuchy(a)redhat.com> at 2010-04-13 15:14 +0000
Tagging package [spacewalk-backend] version [0.9.21-1] in directory [backend/].
Changes since spacewalk-backend-0.9.20-1:
Miroslav Suchý (2):
fix syntax error
Automatic commit of package [spacewalk-backend] release [0.9.21-1].
---
backend/satellite_tools/connection.py | 2 +-
backend/spacewalk-backend.spec | 4 ++--
rel-eng/packages/spacewalk-backend | 2 +-
3 files changed, 4 insertions(+), 4 deletions(-)
---
14 years, 2 months
backend/spacewalk-backend.spec rel-eng/packages
by Miroslav Suchý
backend/spacewalk-backend.spec | 4 ++--
rel-eng/packages/spacewalk-backend | 2 +-
2 files changed, 3 insertions(+), 3 deletions(-)
New commits:
commit f6eb8dec67faad7cd5795e18815d843d36b5ab21
Author: Miroslav Suchý <msuchy(a)redhat.com>
Date: Tue Apr 13 17:14:40 2010 +0200
Automatic commit of package [spacewalk-backend] release [0.9.21-1].
diff --git a/backend/spacewalk-backend.spec b/backend/spacewalk-backend.spec
index 2aedee3..15304f0 100644
--- a/backend/spacewalk-backend.spec
+++ b/backend/spacewalk-backend.spec
@@ -8,7 +8,7 @@ Name: spacewalk-backend
Summary: Common programs needed to be installed on the Spacewalk servers/proxies
Group: Applications/Internet
License: GPLv2
-Version: 0.9.20
+Version: 0.9.21
Release: 1%{?dist}
URL: https://fedorahosted.org/spacewalk
Source0: https://fedorahosted.org/releases/s/p/spacewalk/%{name}-%{version}.tar.gz
@@ -629,7 +629,7 @@ rm -f %{rhnconf}/rhnSecret.py*
# $Id$
%changelog
-* Tue Apr 13 2010 Miroslav Suchý <msuchy(a)redhat.com> 0.9.20-1
+* Tue Apr 13 2010 Miroslav Suchý <msuchy(a)redhat.com> 0.9.21-1
- 175155 - do not use X-RHN-Satellite-XML-Dump-Version on two places
- code cleanup (jpazdziora(a)redhat.com)
diff --git a/rel-eng/packages/spacewalk-backend b/rel-eng/packages/spacewalk-backend
index fc33e45..eacbec8 100644
--- a/rel-eng/packages/spacewalk-backend
+++ b/rel-eng/packages/spacewalk-backend
@@ -1 +1 @@
-0.9.20-1 backend/
+0.9.21-1 backend/
14 years, 2 months
backend/satellite_tools
by Miroslav Suchý
backend/satellite_tools/connection.py | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
New commits:
commit a55cb8e1a8941aa977c5ce33d42549e7eb46f856
Author: Miroslav Suchý <msuchy(a)redhat.com>
Date: Tue Apr 13 17:14:17 2010 +0200
fix syntax error
diff --git a/backend/satellite_tools/connection.py b/backend/satellite_tools/connection.py
index ddb6a24..1ee838e 100644
--- a/backend/satellite_tools/connection.py
+++ b/backend/satellite_tools/connection.py
@@ -95,7 +95,7 @@ class StreamConnection(_Server):
password=password, refreshCallback=refreshCallback)
self.add_header("X-RHN-Satellite-XML-Dump-Version", xml_dump_version)
-class GETServer(rpclib.GETServer)
+class GETServer(rpclib.GETServer):
""" class rpclib.GETServer with overriden default transports classes """
_transport_class = Transport
_transport_class_https = SafeTransport
14 years, 2 months
Changes to 'refs/tags/spacewalk-backend-0.9.20-1'
by Miroslav Suchý
Tag 'spacewalk-backend-0.9.20-1' created by Miroslav Suchý <msuchy(a)redhat.com> at 2010-04-13 15:04 +0000
Tagging package [spacewalk-backend] version [0.9.20-1] in directory [backend/].
Changes since spacewalk-certs-tools-0.9.2-1:
Joshua Roys (2):
Add selinux output to rhncfg-client verify
More support for symlinks in rhncfg tools
Miroslav Suchý (2):
175155 - do not use X-RHN-Satellite-XML-Dump-Version on two places
Automatic commit of package [spacewalk-backend] release [0.9.20-1].
Simon Lukasik (2):
Cleaning up, preparing for automatization (jhutar's patch)
Cleaning up, preparing for automatization (jhutar's patch)
---
backend/satellite_tools/connection.py | 7
backend/satellite_tools/xmlWireSource.py | 5
backend/spacewalk-backend.spec | 6
client/rhel/rhnlib/test/01-get.py | 21 +-
client/rhel/rhnlib/test/02-callbacks.py | 20 +-
client/tools/rhncfg/config_client/rhncfgcli_verify.py | 162 ++++++++++++------
client/tools/rhncfg/config_common/repository.py | 13 +
rel-eng/packages/spacewalk-backend | 2
8 files changed, 160 insertions(+), 76 deletions(-)
---
14 years, 2 months
2 commits - backend/satellite_tools backend/spacewalk-backend.spec rel-eng/packages
by Miroslav Suchý
backend/satellite_tools/connection.py | 7 +++++++
backend/satellite_tools/xmlWireSource.py | 5 +----
backend/spacewalk-backend.spec | 6 +++++-
rel-eng/packages/spacewalk-backend | 2 +-
4 files changed, 14 insertions(+), 6 deletions(-)
New commits:
commit 73c4a4177699a7249bfd5ab7c7e993e43f79f327
Author: Miroslav Suchý <msuchy(a)redhat.com>
Date: Tue Apr 13 17:04:36 2010 +0200
Automatic commit of package [spacewalk-backend] release [0.9.20-1].
diff --git a/backend/spacewalk-backend.spec b/backend/spacewalk-backend.spec
index 434062f..2aedee3 100644
--- a/backend/spacewalk-backend.spec
+++ b/backend/spacewalk-backend.spec
@@ -8,7 +8,7 @@ Name: spacewalk-backend
Summary: Common programs needed to be installed on the Spacewalk servers/proxies
Group: Applications/Internet
License: GPLv2
-Version: 0.9.19
+Version: 0.9.20
Release: 1%{?dist}
URL: https://fedorahosted.org/spacewalk
Source0: https://fedorahosted.org/releases/s/p/spacewalk/%{name}-%{version}.tar.gz
@@ -629,6 +629,10 @@ rm -f %{rhnconf}/rhnSecret.py*
# $Id$
%changelog
+* Tue Apr 13 2010 Miroslav Suchý <msuchy(a)redhat.com> 0.9.20-1
+- 175155 - do not use X-RHN-Satellite-XML-Dump-Version on two places
+- code cleanup (jpazdziora(a)redhat.com)
+
* Wed Apr 07 2010 Michael Mraka <michael.mraka(a)redhat.com> 0.9.19-1
- 574334 - fixed Error: NameError caught!
diff --git a/rel-eng/packages/spacewalk-backend b/rel-eng/packages/spacewalk-backend
index d7c1e8f..fc33e45 100644
--- a/rel-eng/packages/spacewalk-backend
+++ b/rel-eng/packages/spacewalk-backend
@@ -1 +1 @@
-0.9.19-1 backend/
+0.9.20-1 backend/
commit d36e5075f7b7f407b7d35ea4ac364193fa46ef41
Author: Miroslav Suchý <msuchy(a)redhat.com>
Date: Tue Apr 13 16:52:33 2010 +0200
175155 - do not use X-RHN-Satellite-XML-Dump-Version on two places
use Transport* classes from satellite_tools/connection,
which != Transport* classes from rpclib
diff --git a/backend/satellite_tools/connection.py b/backend/satellite_tools/connection.py
index d029e44..ddb6a24 100644
--- a/backend/satellite_tools/connection.py
+++ b/backend/satellite_tools/connection.py
@@ -95,6 +95,13 @@ class StreamConnection(_Server):
password=password, refreshCallback=refreshCallback)
self.add_header("X-RHN-Satellite-XML-Dump-Version", xml_dump_version)
+class GETServer(rpclib.GETServer)
+ """ class rpclib.GETServer with overriden default transports classes """
+ _transport_class = Transport
+ _transport_class_https = SafeTransport
+ _transport_class_proxy = ProxyTransport
+ _transport_class_https_proxy = SafeProxyTransport
+
def parse_url(url):
url_type, rest = urllib.splittype(url)
if url_type is None:
diff --git a/backend/satellite_tools/xmlWireSource.py b/backend/satellite_tools/xmlWireSource.py
index c018300..0c5166b 100644
--- a/backend/satellite_tools/xmlWireSource.py
+++ b/backend/satellite_tools/xmlWireSource.py
@@ -403,10 +403,7 @@ class RPCGetWireSource(BaseWireSource):
# Force a login otherwise
self._set_login_token(self._login())
url = self.url + self.handler
- # include xml-dump-version in the header
- self.login_token['X-RHN-Satellite-XML-Dump-Version'] = \
- CFG.XML_DUMP_VERSION
- get_server_obj = rpclib.GETServer(url, proxy=CFG.HTTP_PROXY,
+ get_server_obj = connection.GETServer(url, proxy=CFG.HTTP_PROXY,
username=CFG.HTTP_PROXY_USERNAME, password=CFG.HTTP_PROXY_PASSWORD,
headers=self.login_token)
# Add SSL trusted cert
14 years, 2 months
2 commits - client/tools
by Joshua Roys
client/tools/rhncfg/config_client/rhncfgcli_verify.py | 162 ++++++++++++------
client/tools/rhncfg/config_common/repository.py | 13 +
2 files changed, 119 insertions(+), 56 deletions(-)
New commits:
commit 03eb98234ec4a301e6e0b09a56ea6ddc82878ed2
Author: Joshua Roys <joshua.roys(a)gtri.gatech.edu>
Date: Tue Apr 13 13:07:09 2010 +0000
More support for symlinks in rhncfg tools
Specifically `rhncfg-manager add' will now handle symlinks properly.
diff --git a/client/tools/rhncfg/config_common/repository.py b/client/tools/rhncfg/config_common/repository.py
index bc71a7d..fc938d7 100644
--- a/client/tools/rhncfg/config_common/repository.py
+++ b/client/tools/rhncfg/config_common/repository.py
@@ -89,7 +89,7 @@ class Repository:
# Returns the stat information as required by the API
ret = {}
fields = {
- 'mode' : stat.ST_MODE & 07777,
+ 'mode' : stat.ST_MODE,
'user' : stat.ST_UID,
'group' : stat.ST_GID,
'size' : stat.ST_SIZE,
@@ -145,10 +145,10 @@ class Repository:
local_path = remote_path
try:
- file_stat = os.stat(local_path)
+ file_stat = os.lstat(local_path)
except OSError, e:
raise cfg_exceptions.RepositoryLocalFileError(
- "Error stat()-ing local file: %s" % e)
+ "Error lstat()-ing local file: %s" % e)
# Dlimiters
if delim_start or delim_end:
@@ -167,7 +167,12 @@ class Repository:
}
file_contents = None
- if os.path.isdir(local_path):
+ if os.path.islink(local_path):
+ params['config_file_type_id'] = 3
+ load_contents = 0
+ file_contents = os.readlink(local_path)
+ self._add_content(file_contents, params)
+ elif os.path.isdir(local_path):
params['config_file_type_id'] = 2
load_contents = 0
else:
commit 38756ce908a0ab0a466874ae4baaca1bc7c1c082
Author: Joshua Roys <joshua.roys(a)gtri.gatech.edu>
Date: Mon Apr 12 18:37:57 2010 +0000
Add selinux output to rhncfg-client verify
In addition, make the output more compact.
diff --git a/client/tools/rhncfg/config_client/rhncfgcli_verify.py b/client/tools/rhncfg/config_client/rhncfgcli_verify.py
index 44ba237..3c97102 100644
--- a/client/tools/rhncfg/config_client/rhncfgcli_verify.py
+++ b/client/tools/rhncfg/config_client/rhncfgcli_verify.py
@@ -20,6 +20,12 @@ import handler_base
import os
import stat
import pwd, grp
+try:
+ from selinux import lgetfilecon
+except:
+ # on rhel4 we do not support selinux
+ def lgetfilecon(path):
+ return [0, '']
class Handler(handler_base.HandlerBase):
_usage_options = handler_base.HandlerBase._usage_options + " [ files ... ]"
@@ -39,91 +45,116 @@ class Handler(handler_base.HandlerBase):
#Labels for column headers
status_label = "STATUS"
- owner_status = "OWNER (channel:deployed)"
- group_status = "GROUP (channel:deployed)"
- mode_status = "MODE (channel:deployed)"
+ owner_status = "OWNER"
+ group_status = "GROUP"
+ mode_status = "MODE"
+ selinux_status = "SELINUX"
file_status = "FILE"
+
+ status_help = "(channel:local)"
- maxlen = -1
+ maxlenarr = {
+ 'status' : len(status_label),
+ 'owner' : max(len(owner_status), len(status_help)),
+ 'group' : max(len(group_status), len(status_help)),
+ 'mode' : max(len(mode_status), len(status_help)),
+ 'selinux' : max(len(selinux_status), len(status_help)),
+ }
#Iterate throught the files and process them. The src file is the file as it is in the config channel,
#the dst file is the file as it is in the filesystem.
for file in self.get_valid_files():
(src, file_info, dirs_created) = self.repository.get_file_info(file)
-
+
ftype = file_info.get('filetype')
-
+
if not src:
continue
-
+
dst = self.get_dest_file(file)
-
+
#Added file_info parameter, which contains information needed to look for differences in the owner, group, and mode.
ret_dict = self._process_file(src, dst, file, ftype, file_info)
if self.options.verbose:
#Get the max of the return values for this file, which is used to determine the length of each field in the output.
#Don't include the 'file' value, because it gets displayed last in each row and will throw off the size of the other fields.
- ret_max = max(len(ret_dict['status']), len(ret_dict['owner']), len(ret_dict['group']), len(ret_dict['mode']))
-
- #Which is bigger, the current ret_max or the older value of maxlen?
- maxlen = max(maxlen, ret_max)
-
+ maxlenarr['status'] = max(maxlenarr['status'], len(ret_dict['status']))
+ maxlenarr['owner'] = max(maxlenarr['owner'], len(ret_dict['owner']))
+ maxlenarr['group'] = max(maxlenarr['group'], len(ret_dict['group']))
+ maxlenarr['mode'] = max(maxlenarr['mode'], len(ret_dict['mode']))
+ if len(ret_dict['selinux']) > 0:
+ (src, dst) = ret_dict['selinux'].split('|')
+ maxlenarr['selinux'] = max(maxlenarr['selinux'], len(src), len(dst))
+
#Place the return values into a list so we can iterate through them later when we want to print them out.
ret.append(ret_dict)
if self.options.verbose:
- #Take the column header labels into account when determining the length of each field.
- maxlen = max(maxlen, len(status_label), len(owner_status), len(group_status), len(mode_status), len(file_status))
-
formatstr = "%-*s" #format string for the fields where the length matters.
formatstr_nolimit = "%-s" #format string for the fields where the length of the field doesn't matter. Namely, the file field.
-
+
#The overall format of the output.
- outstring = "%(status)s %(owner)s %(group)s %(mode)s %(file)s"
-
+ outstring = "%(status)s %(owner)s %(group)s %(mode)s %(selinux)s %(file)s"
+
#Print out the column labels.
print outstring % {
- "status" : formatstr % (maxlen, status_label),
- "owner" : formatstr % (maxlen, owner_status),
- "group" : formatstr % (maxlen, group_status),
- "mode" : formatstr % (maxlen, mode_status),
+ "status" : formatstr % (maxlenarr['status'], status_label),
+ "owner" : formatstr % (maxlenarr['owner'], owner_status),
+ "group" : formatstr % (maxlenarr['group'], group_status),
+ "mode" : formatstr % (maxlenarr['mode'], mode_status),
+ "selinux" : formatstr % (maxlenarr['selinux'], selinux_status),
"file" : formatstr_nolimit % (file_status),
}
-
+
+ print outstring % {
+ "status" : formatstr % (maxlenarr['status'], ""),
+ "owner" : formatstr % (maxlenarr['owner'], status_help),
+ "group" : formatstr % (maxlenarr['group'], status_help),
+ "mode" : formatstr % (maxlenarr['mode'], status_help),
+ "selinux" : formatstr % (maxlenarr['selinux'], status_help),
+ "file" : ""
+ }
+
#Go through each of the dictionaries returned by self._process_file(), format their values, and print out the result.
for fdict in ret:
- print outstring % {
- "status" : formatstr % (maxlen, fdict['status']),
- "owner" : formatstr % (maxlen, fdict['owner']),
- "group" : formatstr % (maxlen, fdict['group']),
- "mode" : formatstr % (maxlen, fdict['mode']),
- "file" : formatstr_nolimit % (fdict['file'],),
+ src_selinux = dst_selinux = ""
+ if len(fdict['selinux']) > 0:
+ (src_selinux, dst_selinux) = fdict['selinux'].split('|')
+
+ print outstring % {
+ "status" : formatstr % (maxlenarr['status'], fdict['status']),
+ "owner" : formatstr % (maxlenarr['owner'], fdict['owner']),
+ "group" : formatstr % (maxlenarr['group'], fdict['group']),
+ "mode" : formatstr % (maxlenarr['mode'], fdict['mode']),
+ "selinux" : formatstr % (maxlenarr['selinux'], src_selinux),
+ "file" : formatstr_nolimit % (fdict['file']),
}
+ if len(dst_selinux) > 0:
+ print outstring % {
+ "status" : formatstr % (maxlenarr['status'], ""),
+ "owner" : formatstr % (maxlenarr['owner'], ""),
+ "group" : formatstr % (maxlenarr['group'], ""),
+ "mode" : formatstr % (maxlenarr['mode'], ""),
+ "selinux" : formatstr % (maxlenarr['selinux'], dst_selinux),
+ "file" : "",
+ }
#Not verbose, so give the simple output for each file...
else:
- outstring = "%9s %s"
+ outstring = "%*s %s"
+ maxlen = max(map(lambda x: len(x['status']), ret)) + 1
for fdict in ret:
- if fdict['status'] == 'unmodified':
- mystatus = ""
- else:
- mystatus = fdict['status']
-
- print outstring % (mystatus, fdict['file'])
-
-
+ print outstring % (maxlen, fdict['status'], fdict['file'])
def _process_file(self, *args):
- #5/16/05 wregglej - 154433 made the report string so I don't have to modify
- #the output format in mulitple places.
- report = "%9s\t%s\t%s\t%s\t%s" # modified state, owner changes, group changes, permissions changes, file. Was originally "%9s %s"
owner_report = "%s:%s"
group_report = "%s:%s"
perm_report = "%s:%s"
+ selinux_report = "%s|%s"
src, dst, file, type, info = args[:5]
- status = 'unmodified'
+ status = []
stat_err = 0
#Stat the destination file
@@ -132,7 +163,6 @@ class Handler(handler_base.HandlerBase):
except:
stat_err = 1
-
src_user = info['username']
if not stat_err:
#check for owner differences
@@ -146,7 +176,11 @@ class Handler(handler_base.HandlerBase):
dst_user = "missing"
#owner_status gets displayed with the verbose option.
- owner_status = owner_report % (src_user, dst_user)
+ if src_user == dst_user:
+ owner_status = ""
+ else:
+ owner_status = owner_report % (src_user, dst_user)
+ status.append('user')
src_group = info['groupname']
if not stat_err:
@@ -161,7 +195,11 @@ class Handler(handler_base.HandlerBase):
dst_group = "missing"
#group_status gets displayed with the verbose option.
- group_status = group_report % (src_group, dst_group)
+ if src_group == dst_group:
+ group_status = ""
+ else:
+ group_status = group_report % (src_group, dst_group)
+ status.append('group')
#check for permissions differences
src_perm = str(info['filemode'])
@@ -179,30 +217,50 @@ class Handler(handler_base.HandlerBase):
dst_perm = dst_perm[1:]
#perm_status gets displayed with the verbose option.
- perm_status = perm_report % (src_perm, dst_perm)
+ if src_perm == dst_perm:
+ perm_status = ""
+ else:
+ perm_status = perm_report % (src_perm, dst_perm)
+ status.append('mode')
+
+ # compare selinux contexts
+ src_selinux = info['selinux_ctx']
+ if not stat_err:
+ dst_selinux = lgetfilecon(dst)[1]
+ if dst_selinux == None:
+ dst_selinux = ""
+ else:
+ dst_selinux = "missing"
+
+ if src_selinux == dst_selinux:
+ selinux_status = ""
+ else:
+ selinux_status = selinux_report % (src_selinux, dst_selinux)
+ status.append('selinux')
#figure out the ultimate value of status.
if stat_err:
- status = "missing"
+ status = ["missing"]
elif type == 'directory':
if not os.path.isdir(file):
- status = 'missing'
+ status = ["missing"]
elif not os.access(dst, os.R_OK):
- status = "missing"
+ status = ["missing"]
else:
src_sha1 = utils.sha1_file(src)
dst_sha1 = utils.sha1_file(dst)
if src_sha1 != dst_sha1:
- status = 'modified'
+ status.append('modified')
return {
- "status" : status,
+ "status" : ','.join(status),
"owner" : owner_status,
"group" : group_status,
"mode" : perm_status,
+ "selinux" : selinux_status,
"file" : file,
}
14 years, 2 months
client/rhel
by Šimon Lukašík
client/rhel/rhnlib/test/02-callbacks.py | 20 +++++++++++++-------
1 file changed, 13 insertions(+), 7 deletions(-)
New commits:
commit 4d151773ea1152f5a9055b58ca200a1df8035e9e
Author: Simon Lukasik <slukasik(a)redhat.com>
Date: Tue Apr 13 15:01:49 2010 +0200
Cleaning up, preparing for automatization (jhutar's patch)
diff --git a/client/rhel/rhnlib/test/02-callbacks.py b/client/rhel/rhnlib/test/02-callbacks.py
old mode 100644
new mode 100755
index 87b8274..009ce0c
--- a/client/rhel/rhnlib/test/02-callbacks.py
+++ b/client/rhel/rhnlib/test/02-callbacks.py
@@ -9,7 +9,14 @@ sys.path.append('..')
from rhn.rpclib import Server, GETServer
SERVER = "http://xmlrpc.rhn.redhat.com/XMLRPC"
-#SERVER = "http://xmlrpc.rhn.webqa.redhat.com/XMLRPC"
+system_id_file = "/etc/sysconfig/rhn/systemid"
+try:
+ SERVER = "http://%s/XMLRPC" % sys.argv[1]
+ system_id_file = sys.argv[2]
+except:
+ pass
+print "SERVER = %s" % SERVER
+print "system_id_file = %s" % system_id_file
def refreshCallback(*args, **kwargs):
print "Called refreshCallback, args %s, kwargs %s" % (args, kwargs)
@@ -18,11 +25,6 @@ def progressCallback(*args, **kwargs):
print "Called progressCallback, args %s, kwargs %s" % (args, kwargs)
if __name__ == '__main__':
- if len(sys.argv) > 1:
- system_id_file = sys.argv[1]
- else:
- system_id_file = '/etc/sysconfig/rhn/systemid'
-
sysid = open(system_id_file).read()
s = Server(SERVER)
@@ -47,7 +49,11 @@ if __name__ == '__main__':
else:
raise Exception("Package not found")
+ print "PACKAGE TO DOWNLOAD: %s %s %s %s" % (package[0], package[1], package[2], package[4])
filename = "%s-%s-%s.%s.rpm" % (package[0], package[1], package[2], package[4])
print "Calling getPackages"
fd = gs.getPackage(cn, filename)
- data = open("/tmp/foobar", "w+").write(fd.read())
+ data_name = "/tmp/foobar"
+ data = open(data_name, "w+").write(fd.read())
+ print "PACKAGE DOWNLOADED AS: %s" % data_name
+
14 years, 2 months