Import python-carbon-1.1.10
This commit is contained in:
commit
6c40e1584f
1
.gitignore
vendored
Normal file
1
.gitignore
vendored
Normal file
@ -0,0 +1 @@
|
||||
SOURCES/python-carbon-1.1.10.tar.gz
|
1
.python-carbon.metadata
Normal file
1
.python-carbon.metadata
Normal file
@ -0,0 +1 @@
|
||||
ea38f4e5ad9070c90dc9b68a4804164c9d4a3092 SOURCES/python-carbon-1.1.10.tar.gz
|
56
SOURCES/carbon-aggregator.1
Normal file
56
SOURCES/carbon-aggregator.1
Normal file
@ -0,0 +1,56 @@
|
||||
.TH CARBON-AGGREGATOR 1
|
||||
.SH NAME
|
||||
carbon-aggregator \- buffer metrics over time before reporting to carbon-cache
|
||||
.SH SYNOPSYS
|
||||
.nf
|
||||
.fam C
|
||||
\fbcarbon-aggregator\fP [options] start
|
||||
.fam T
|
||||
.fi
|
||||
.SH DESCRIPTION
|
||||
carbon-aggregator can be run in front of carbon-cache to buffer metrics over
|
||||
time before reporting them into whisper.
|
||||
.PP
|
||||
The options are described below.
|
||||
.SH OPTIONS
|
||||
.TP
|
||||
.B
|
||||
\-h, \-\-help
|
||||
Show the embedded help.
|
||||
.TP
|
||||
.B
|
||||
\-\-debug
|
||||
Run in the foreground, log to stdout
|
||||
.TP
|
||||
.B
|
||||
\-\-profile=PROFILE
|
||||
Record performance profile data to the given file
|
||||
.TP
|
||||
.B
|
||||
\-\-pidfile=PIDFILE
|
||||
Write pid to the given file
|
||||
.TP
|
||||
.B
|
||||
\-\-config=CONFIG
|
||||
Use the given config file
|
||||
.TP
|
||||
.B
|
||||
\-\-logdir=LOGDIR
|
||||
Write logs in the given directory
|
||||
.TP
|
||||
.B
|
||||
\-\-instance=INSTANCE
|
||||
Manage a specific carbon instance
|
||||
.TP
|
||||
.B
|
||||
\-\-rules=RULES
|
||||
Use the given aggregation rules file.
|
||||
.TP
|
||||
.B
|
||||
\-\-rewrite-rules=REWRITE_RULES
|
||||
Use the given rewrite rules file.
|
||||
.SH AUTHOR
|
||||
\fBcarbon-aggregator\fP, created by Chris Davis.
|
||||
.PP
|
||||
This manual page was written by Jonas Genannt <jonas.genannt@capi2name.de, for
|
||||
the Debian project (but may be used by others).
|
14
SOURCES/carbon-aggregator.service
Normal file
14
SOURCES/carbon-aggregator.service
Normal file
@ -0,0 +1,14 @@
|
||||
[Unit]
|
||||
Description=Graphite Carbon Aggregator
|
||||
After=network.target
|
||||
|
||||
[Service]
|
||||
Type=forking
|
||||
StandardOutput=syslog
|
||||
StandardError=syslog
|
||||
ExecStart=/usr/bin/carbon-aggregator --config=/etc/carbon/carbon.conf --pidfile=/var/run/carbon-aggregator.pid start
|
||||
ExecReload=/bin/kill -USR1 $MAINPID
|
||||
PIDFile=/var/run/carbon-aggregator.pid
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
15
SOURCES/carbon-aggregator@.service
Normal file
15
SOURCES/carbon-aggregator@.service
Normal file
@ -0,0 +1,15 @@
|
||||
[Unit]
|
||||
Description=Graphite Carbon Aggregator Instance %I
|
||||
After=network.target
|
||||
|
||||
[Service]
|
||||
Type=forking
|
||||
StandardOutput=syslog
|
||||
StandardError=syslog
|
||||
ExecStart=/usr/bin/carbon-aggregator --config=/etc/carbon/carbon.conf --pidfile=/var/run/carbon-aggregator-%i.pid --instance=%i start
|
||||
ExecReload=/bin/kill -USR1 $MAINPID
|
||||
PIDFile=/var/run/carbon-aggregator-%i.pid
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
DefaultInstance=a
|
50
SOURCES/carbon-cache.1
Normal file
50
SOURCES/carbon-cache.1
Normal file
@ -0,0 +1,50 @@
|
||||
.TH CARBON-CACHE 1
|
||||
.SH NAME
|
||||
carbon-cache \- accepts metrics over various protocols and writes them to disk
|
||||
.SH SYNOPSYS
|
||||
.nf
|
||||
.fam C
|
||||
\fbcarbon-cache\fP [options] start
|
||||
.fam T
|
||||
.fi
|
||||
.SH DESCRIPTION
|
||||
carbon-cache accepts metrics over various protocols and writes them to disk as
|
||||
efficiently as possible. This requires caching metric values in RAM as they are
|
||||
received, and flushing them to disk on an interval using the underlying
|
||||
whisper library.
|
||||
.PP
|
||||
The options are described below.
|
||||
.SH OPTIONS
|
||||
.TP
|
||||
.B
|
||||
\-h, \-\-help
|
||||
Show the embedded help.
|
||||
.TP
|
||||
.B
|
||||
\-\-debug
|
||||
Run in the foreground, log to stdout
|
||||
.TP
|
||||
.B
|
||||
\-\-profile=PROFILE
|
||||
Record performance profile data to the given file
|
||||
.TP
|
||||
.B
|
||||
\-\-pidfile=PIDFILE
|
||||
Write pid to the given file
|
||||
.TP
|
||||
.B
|
||||
\-\-config=CONFIG
|
||||
Use the given config file
|
||||
.TP
|
||||
.B
|
||||
\-\-logdir=LOGDIR
|
||||
Write logs in the given directory
|
||||
.TP
|
||||
.B
|
||||
\-\-instance=INSTANCE
|
||||
Manage a specific carbon instance
|
||||
.SH AUTHOR
|
||||
\fBcarbon-cache\fP, created by Chris Davis.
|
||||
.PP
|
||||
This manual page was written by Jonas Genannt <jonas.genannt@capi2name.de, for
|
||||
the Debian project (but may be used by others).
|
14
SOURCES/carbon-cache.service
Normal file
14
SOURCES/carbon-cache.service
Normal file
@ -0,0 +1,14 @@
|
||||
[Unit]
|
||||
Description=Graphite Carbon Cache
|
||||
After=network.target
|
||||
|
||||
[Service]
|
||||
Type=forking
|
||||
StandardOutput=syslog
|
||||
StandardError=syslog
|
||||
ExecStart=/usr/bin/carbon-cache --config=/etc/carbon/carbon.conf --pidfile=/var/run/carbon-cache.pid start
|
||||
ExecReload=/bin/kill -USR1 $MAINPID
|
||||
PIDFile=/var/run/carbon-cache.pid
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
15
SOURCES/carbon-cache@.service
Normal file
15
SOURCES/carbon-cache@.service
Normal file
@ -0,0 +1,15 @@
|
||||
[Unit]
|
||||
Description=Graphite Carbon Cache Instance %I
|
||||
After=network.target
|
||||
|
||||
[Service]
|
||||
Type=forking
|
||||
StandardOutput=syslog
|
||||
StandardError=syslog
|
||||
ExecStart=/usr/bin/carbon-cache --config=/etc/carbon/carbon.conf --pidfile=/var/run/carbon-cache-%i.pid --instance=%i start
|
||||
ExecReload=/bin/kill -USR1 $MAINPID
|
||||
PIDFile=/var/run/carbon-cache-%i.pid
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
DefaultInstance=a
|
51
SOURCES/carbon-relay.1
Normal file
51
SOURCES/carbon-relay.1
Normal file
@ -0,0 +1,51 @@
|
||||
.TH CARBON-RELAY 1
|
||||
.SH NAME
|
||||
carbon-relay \- replication and sharding data
|
||||
.SH SYNOPSYS
|
||||
.nf
|
||||
.fam C
|
||||
\fbcarbon-relay\fP [options] start
|
||||
.fam T
|
||||
.fi
|
||||
.SH DESCRIPTION
|
||||
carbon-relay serves two distinct purposes: replication and sharding.
|
||||
.PP
|
||||
The options are described below.
|
||||
.SH OPTIONS
|
||||
.TP
|
||||
.B
|
||||
\-h, \-\-help
|
||||
Show the embedded help.
|
||||
.TP
|
||||
.B
|
||||
\-\-debug
|
||||
Run in the foreground, log to stdout
|
||||
.TP
|
||||
.B
|
||||
\-\-profile=PROFILE
|
||||
Record performance profile data to the given file
|
||||
.TP
|
||||
.B
|
||||
\-\-pidfile=PIDFILE
|
||||
Write pid to the given file
|
||||
.TP
|
||||
.B
|
||||
\-\-config=CONFIG
|
||||
Use the given config file
|
||||
.TP
|
||||
.B
|
||||
\-\-logdir=LOGDIR
|
||||
Write logs in the given directory
|
||||
.TP
|
||||
.B
|
||||
\-\-instance=INSTANCE
|
||||
Manage a specific carbon instance
|
||||
.TP
|
||||
.B
|
||||
\-\-rules=RULES
|
||||
se the given relay rules file.
|
||||
.SH AUTHOR
|
||||
\fBcarbon-relay\fP, created by Chris Davis.
|
||||
.PP
|
||||
This manual page was written by Jonas Genannt <jonas.genannt@capi2name.de, for
|
||||
the Debian project (but may be used by others).
|
14
SOURCES/carbon-relay.service
Normal file
14
SOURCES/carbon-relay.service
Normal file
@ -0,0 +1,14 @@
|
||||
[Unit]
|
||||
Description=Graphite Carbon Relay
|
||||
After=network.target
|
||||
|
||||
[Service]
|
||||
Type=forking
|
||||
StandardOutput=syslog
|
||||
StandardError=syslog
|
||||
ExecStart=/usr/bin/carbon-relay --config=/etc/carbon/carbon.conf --pidfile=/var/run/carbon-relay.pid start
|
||||
ExecReload=/bin/kill -USR1 $MAINPID
|
||||
PIDFile=/var/run/carbon-relay.pid
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
15
SOURCES/carbon-relay@.service
Normal file
15
SOURCES/carbon-relay@.service
Normal file
@ -0,0 +1,15 @@
|
||||
[Unit]
|
||||
Description=Graphite Carbon Relay Instance %I
|
||||
After=network.target
|
||||
|
||||
[Service]
|
||||
Type=forking
|
||||
StandardOutput=syslog
|
||||
StandardError=syslog
|
||||
ExecStart=/usr/bin/carbon-relay --config=/etc/carbon/carbon.conf --pidfile=/var/run/carbon-relay-%i.pid --instance=%i start
|
||||
ExecReload=/bin/kill -USR1 $MAINPID
|
||||
PIDFile=/var/run/carbon-relay-%i.pid
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
DefaultInstance=a
|
25
SOURCES/python-carbon-0.10.0-Set-sane-defaults.patch
Normal file
25
SOURCES/python-carbon-0.10.0-Set-sane-defaults.patch
Normal file
@ -0,0 +1,25 @@
|
||||
--- carbon-6a016c2533716d7bf6f44f4459c43976421bf650.orig/conf/carbon.conf.example 2016-09-13 22:44:40.000000000 +0200
|
||||
+++ carbon-6a016c2533716d7bf6f44f4459c43976421bf650/conf/carbon.conf.example 2016-09-18 22:11:02.358319492 +0200
|
||||
@@ -30,6 +30,13 @@
|
||||
#
|
||||
#LOCAL_DATA_DIR = /opt/graphite/storage/whisper/
|
||||
|
||||
+STORAGE_DIR = /var/lib/carbon/
|
||||
+LOCAL_DATA_DIR = /var/lib/carbon/whisper/
|
||||
+WHITELISTS_DIR = /var/lib/carbon/lists/
|
||||
+CONF_DIR = /etc/carbon/
|
||||
+LOG_DIR = /var/log/carbon/
|
||||
+PID_DIR = /var/run/
|
||||
+
|
||||
# Specify the database library used to store metric data on disk. Each database
|
||||
# may have configurable options to change the behaviour of how it writes to
|
||||
# persistent storage.
|
||||
@@ -41,7 +48,7 @@
|
||||
# Specify the user to drop privileges to
|
||||
# If this is blank carbon-cache runs as the user that invokes it
|
||||
# This user must have write access to the local data directory
|
||||
-USER =
|
||||
+USER = carbon
|
||||
|
||||
# Limit the size of the cache to avoid swapping or becoming CPU bound.
|
||||
# Sorts and serving cache queries gets more expensive as the cache grows.
|
@ -0,0 +1,25 @@
|
||||
From c0f5af17e7e789166af627175f03739b0cf7cce1 Mon Sep 17 00:00:00 2001
|
||||
From: Jamie Nguyen <j@jamielinux.com>
|
||||
Date: Sun, 28 Sep 2014 12:51:12 +0100
|
||||
Subject: [PATCH] Fix path to storage-schemas.conf
|
||||
|
||||
---
|
||||
bin/validate-storage-schemas.py | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/bin/validate-storage-schemas.py b/bin/validate-storage-schemas.py
|
||||
index 51a1108..5797593 100755
|
||||
--- a/bin/validate-storage-schemas.py
|
||||
+++ b/bin/validate-storage-schemas.py
|
||||
@@ -22,7 +22,7 @@ if len(sys.argv) == 2:
|
||||
SCHEMAS_FILE = sys.argv[1]
|
||||
print("Loading storage-schemas configuration from: '%s'" % SCHEMAS_FILE)
|
||||
else:
|
||||
- SCHEMAS_FILE = realpath(join(dirname(__file__), '..', 'conf', 'storage-schemas.conf'))
|
||||
+ SCHEMAS_FILE = '/etc/carbon/storage-schemas.conf'
|
||||
print("Loading storage-schemas configuration from default location at: '%s'" % SCHEMAS_FILE)
|
||||
|
||||
config_parser = ConfigParser()
|
||||
--
|
||||
1.9.3
|
||||
|
258
SOURCES/python-carbon-1.1.10-Py3.12-support.patch
Normal file
258
SOURCES/python-carbon-1.1.10-Py3.12-support.patch
Normal file
@ -0,0 +1,258 @@
|
||||
diff -up carbon-1.1.10/lib/carbon/routers.py.orig carbon-1.1.10/lib/carbon/routers.py
|
||||
--- carbon-1.1.10/lib/carbon/routers.py.orig 2022-05-22 11:58:01.000000000 -0600
|
||||
+++ carbon-1.1.10/lib/carbon/routers.py 2023-08-02 19:34:36.065846924 -0600
|
||||
@@ -1,4 +1,3 @@
|
||||
-import imp
|
||||
from carbon.hashing import ConsistentHashRing, carbonHash
|
||||
from carbon.util import PluginRegistrar
|
||||
from six import with_metaclass
|
||||
@@ -125,17 +124,6 @@ class ConsistentHashingRouter(DatapointR
|
||||
def getKey(self, metric):
|
||||
return metric
|
||||
|
||||
- def setKeyFunction(self, func):
|
||||
- self.getKey = func
|
||||
-
|
||||
- def setKeyFunctionFromModule(self, keyfunc_spec):
|
||||
- module_path, func_name = keyfunc_spec.rsplit(':', 1)
|
||||
- module_file = open(module_path, 'U')
|
||||
- description = ('.py', 'U', imp.PY_SOURCE)
|
||||
- module = imp.load_module('keyfunc_module', module_file, module_path, description)
|
||||
- keyfunc = getattr(module, func_name)
|
||||
- self.setKeyFunction(keyfunc)
|
||||
-
|
||||
|
||||
class AggregatedConsistentHashingRouter(DatapointRouter):
|
||||
plugin_name = 'aggregated-consistent-hashing'
|
||||
diff -up carbon-1.1.10/lib/carbon/tests/test_log.py.orig carbon-1.1.10/lib/carbon/tests/test_log.py
|
||||
--- carbon-1.1.10/lib/carbon/tests/test_log.py.orig 2022-05-22 11:58:01.000000000 -0600
|
||||
+++ carbon-1.1.10/lib/carbon/tests/test_log.py 2023-08-02 19:33:17.940175832 -0600
|
||||
@@ -23,4 +23,4 @@ class CarbonLogFileTest(TestCase):
|
||||
|
||||
with open(path.join(tmpdir, 'creates.log')) as logfile:
|
||||
read_line = logfile.readline()
|
||||
- self.assertRegexpMatches(read_line, '.*😀😀😀😀 test !!!!')
|
||||
+ self.assertRegex(read_line, '.*😀😀😀😀 test !!!!')
|
||||
diff -up carbon-1.1.10/lib/carbon/tests/test_protocols.py.orig carbon-1.1.10/lib/carbon/tests/test_protocols.py
|
||||
--- carbon-1.1.10/lib/carbon/tests/test_protocols.py.orig 2022-05-22 11:58:01.000000000 -0600
|
||||
+++ carbon-1.1.10/lib/carbon/tests/test_protocols.py 2023-08-02 19:33:17.941175827 -0600
|
||||
@@ -34,7 +34,7 @@ class TestMetricReceiversHandler(TestCas
|
||||
|
||||
expected_plugins = sorted(expected_plugins)
|
||||
plugins = sorted(MetricReceiver.plugins.keys())
|
||||
- self.assertEquals(expected_plugins, plugins)
|
||||
+ self.assertEqual(expected_plugins, plugins)
|
||||
|
||||
class _FakeService(object):
|
||||
def addService(_, __):
|
||||
@@ -244,19 +244,19 @@ class TestMetricPickleReceiver(TestCase)
|
||||
self.receiver.stringReceived(b"i")
|
||||
# ImportError
|
||||
self.receiver.stringReceived(b"iii")
|
||||
- MetricReceiver.metricReceived.not_called()
|
||||
+ MetricReceiver.metricReceived.assert_not_called()
|
||||
|
||||
def test_decode_pickle(self):
|
||||
""" Missing timestamp/value should not call metricReceived """
|
||||
metrics = [('foo.bar', 1)]
|
||||
self.receiver.stringReceived(pickle.dumps(metrics))
|
||||
- MetricReceiver.metricReceived.not_called()
|
||||
+ MetricReceiver.metricReceived.assert_not_called()
|
||||
|
||||
def test_invalid_types(self):
|
||||
""" Timestamp/value in wrong type should not call metricReceived """
|
||||
metrics = [('foo.bar', ('a', 'b'))]
|
||||
self.receiver.stringReceived(pickle.dumps(metrics))
|
||||
- MetricReceiver.metricReceived.not_called()
|
||||
+ MetricReceiver.metricReceived.assert_not_called()
|
||||
|
||||
def test_py2_unicode_to_string_conversion(self):
|
||||
""" Metricname in python2 unicode type should be transformed to str """
|
||||
@@ -339,7 +339,7 @@ class TestCacheManagementHandler(TestCas
|
||||
|
||||
def test_cache_query_returns_empty_if_no_match(self):
|
||||
self.send_request('cache-query', metric='carbon.foo')
|
||||
- self.assertEquals({'datapoints': []}, self.response)
|
||||
+ self.assertEqual({'datapoints': []}, self.response)
|
||||
|
||||
def test_cache_query_returns_cached_datapoints_if_matches(self):
|
||||
self.cache.store('carbon.foo', (600, 1.0))
|
||||
@@ -356,7 +356,7 @@ class TestCacheManagementHandler(TestCas
|
||||
|
||||
def test_cache_bulk_query_response_returns_empty_if_no_match(self):
|
||||
self.send_request('cache-query-bulk', metrics=[])
|
||||
- self.assertEquals({'datapointsByMetric': {}}, self.response)
|
||||
+ self.assertEqual({'datapointsByMetric': {}}, self.response)
|
||||
|
||||
def test_cache_bulk_query_response(self):
|
||||
self.cache.store('carbon.foo', (600, 1.0))
|
||||
@@ -364,4 +364,4 @@ class TestCacheManagementHandler(TestCas
|
||||
|
||||
expected_response = {'carbon.foo': [(600, 1.0)], 'carbon.bar': [(600, 2.0)]}
|
||||
self.send_request('cache-query-bulk', metrics=['carbon.foo', 'carbon.bar'])
|
||||
- self.assertEquals({'datapointsByMetric': expected_response}, self.response)
|
||||
+ self.assertEqual({'datapointsByMetric': expected_response}, self.response)
|
||||
diff -up carbon-1.1.10/lib/carbon/tests/test_routers.py.orig carbon-1.1.10/lib/carbon/tests/test_routers.py
|
||||
--- carbon-1.1.10/lib/carbon/tests/test_routers.py.orig 2022-05-22 11:58:01.000000000 -0600
|
||||
+++ carbon-1.1.10/lib/carbon/tests/test_routers.py 2023-08-02 19:33:17.941175827 -0600
|
||||
@@ -36,7 +36,7 @@ class TestRelayRulesRouter(unittest.Test
|
||||
router = routers.RelayRulesRouter(createSettings())
|
||||
for destination in DESTINATIONS:
|
||||
router.addDestination(parseDestination(destination))
|
||||
- self.assertEquals(len(list(router.getDestinations('foo.bar'))), 1)
|
||||
+ self.assertEqual(len(list(router.getDestinations('foo.bar'))), 1)
|
||||
|
||||
|
||||
class TestOtherRouters(unittest.TestCase):
|
||||
@@ -48,9 +48,9 @@ class TestOtherRouters(unittest.TestCase
|
||||
continue
|
||||
|
||||
router = routers.DatapointRouter.plugins[plugin](settings)
|
||||
- self.assertEquals(len(list(router.getDestinations('foo.bar'))), 0)
|
||||
+ self.assertEqual(len(list(router.getDestinations('foo.bar'))), 0)
|
||||
|
||||
for destination in DESTINATIONS:
|
||||
router.addDestination(parseDestination(destination))
|
||||
- self.assertEquals(len(list(router.getDestinations('foo.bar'))),
|
||||
+ self.assertEqual(len(list(router.getDestinations('foo.bar'))),
|
||||
settings['REPLICATION_FACTOR'])
|
||||
diff -up carbon-1.1.10/lib/carbon/tests/test_storage.py.orig carbon-1.1.10/lib/carbon/tests/test_storage.py
|
||||
--- carbon-1.1.10/lib/carbon/tests/test_storage.py.orig 2022-05-22 11:58:01.000000000 -0600
|
||||
+++ carbon-1.1.10/lib/carbon/tests/test_storage.py 2023-08-02 19:33:17.941175827 -0600
|
||||
@@ -21,9 +21,9 @@ from carbon.database import WhisperDatab
|
||||
# def test_loadAggregationSchemas_load_default_schema(self):
|
||||
# from carbon.storage import loadAggregationSchemas, defaultAggregation
|
||||
# schema_list = loadAggregationSchemas()
|
||||
-# self.assertEquals(len(schema_list), 1)
|
||||
+# self.assertEqual(len(schema_list), 1)
|
||||
# schema = schema_list[0]
|
||||
-# self.assertEquals(schema, defaultAggregation)
|
||||
+# self.assertEqual(schema, defaultAggregation)
|
||||
|
||||
# def test_loadStorageSchemas_raise_CarbonConfigException(self):
|
||||
# from carbon.storage import loadStorageSchemas
|
||||
@@ -51,28 +51,28 @@ class ExistingConfigSchemaLoadingTest(Te
|
||||
def test_loadStorageSchemas_return_schemas(self):
|
||||
from carbon.storage import loadStorageSchemas, PatternSchema, Archive
|
||||
schema_list = loadStorageSchemas()
|
||||
- self.assertEquals(len(schema_list), 3)
|
||||
+ self.assertEqual(len(schema_list), 3)
|
||||
expected = [
|
||||
PatternSchema('carbon', r'^carbon\.', [Archive.fromString('60:90d')]),
|
||||
PatternSchema('default_1min_for_1day', '.*', [Archive.fromString('60s:1d')])
|
||||
]
|
||||
for schema, expected_schema in zip(schema_list[:-1], expected):
|
||||
- self.assertEquals(schema.name, expected_schema.name)
|
||||
- self.assertEquals(schema.pattern, expected_schema.pattern)
|
||||
+ self.assertEqual(schema.name, expected_schema.name)
|
||||
+ self.assertEqual(schema.pattern, expected_schema.pattern)
|
||||
for (archive, expected_archive) in zip(schema.archives, expected_schema.archives):
|
||||
- self.assertEquals(archive.getTuple(), expected_archive.getTuple())
|
||||
+ self.assertEqual(archive.getTuple(), expected_archive.getTuple())
|
||||
|
||||
def test_loadStorageSchemas_return_the_default_schema_last(self):
|
||||
from carbon.storage import loadStorageSchemas, defaultSchema
|
||||
schema_list = loadStorageSchemas()
|
||||
last_schema = schema_list[-1]
|
||||
- self.assertEquals(last_schema.name, defaultSchema.name)
|
||||
- self.assertEquals(last_schema.archives, defaultSchema.archives)
|
||||
+ self.assertEqual(last_schema.name, defaultSchema.name)
|
||||
+ self.assertEqual(last_schema.archives, defaultSchema.archives)
|
||||
|
||||
def test_loadAggregationSchemas_return_schemas(self):
|
||||
from carbon.storage import loadAggregationSchemas, PatternSchema
|
||||
schema_list = loadAggregationSchemas()
|
||||
- self.assertEquals(len(schema_list), 5)
|
||||
+ self.assertEqual(len(schema_list), 5)
|
||||
expected = [
|
||||
PatternSchema('min', r'\.min$', (0.1, 'min')),
|
||||
PatternSchema('max', r'\.max$', (0.1, 'max')),
|
||||
@@ -80,12 +80,12 @@ class ExistingConfigSchemaLoadingTest(Te
|
||||
PatternSchema('default_average', '.*', (0.5, 'average'))
|
||||
]
|
||||
for schema, expected_schema in zip(schema_list[:-1], expected):
|
||||
- self.assertEquals(schema.name, expected_schema.name)
|
||||
- self.assertEquals(schema.pattern, expected_schema.pattern)
|
||||
- self.assertEquals(schema.archives, expected_schema.archives)
|
||||
+ self.assertEqual(schema.name, expected_schema.name)
|
||||
+ self.assertEqual(schema.pattern, expected_schema.pattern)
|
||||
+ self.assertEqual(schema.archives, expected_schema.archives)
|
||||
|
||||
def test_loadAggregationSchema_return_the_default_schema_last(self):
|
||||
from carbon.storage import loadAggregationSchemas, defaultAggregation
|
||||
schema_list = loadAggregationSchemas()
|
||||
last_schema = schema_list[-1]
|
||||
- self.assertEquals(last_schema, defaultAggregation)
|
||||
+ self.assertEqual(last_schema, defaultAggregation)
|
||||
diff -up carbon-1.1.10/lib/carbon/tests/test_util.py.orig carbon-1.1.10/lib/carbon/tests/test_util.py
|
||||
--- carbon-1.1.10/lib/carbon/tests/test_util.py.orig 2022-05-22 11:58:01.000000000 -0600
|
||||
+++ carbon-1.1.10/lib/carbon/tests/test_util.py 2023-08-02 19:33:17.942175823 -0600
|
||||
@@ -21,7 +21,7 @@ class UtilTest(unittest.TestCase):
|
||||
s.setsockopt(socket.SOL_TCP, socket.SO_KEEPALIVE, value)
|
||||
|
||||
enableTcpKeepAlive(_Transport(), True, None)
|
||||
- self.assertEquals(s.getsockopt(socket.SOL_TCP, socket.SO_KEEPALIVE), 1)
|
||||
+ self.assertEqual(s.getsockopt(socket.SOL_TCP, socket.SO_KEEPALIVE), 1)
|
||||
|
||||
def test_sanitizing_name_as_tag_value(self):
|
||||
test_cases = [
|
||||
@@ -61,7 +61,7 @@ class UtilTest(unittest.TestCase):
|
||||
)
|
||||
else:
|
||||
result = TaggedSeries.sanitize_name_as_tag_value(test_case['original'])
|
||||
- self.assertEquals(result, test_case['expected'])
|
||||
+ self.assertEqual(result, test_case['expected'])
|
||||
|
||||
def test_validate_tag_key_and_value(self):
|
||||
# assert that it raises exception when sanitized name is still not valid
|
||||
@@ -114,10 +114,10 @@ class ParseDestinationsTest(unittest.Tes
|
||||
]
|
||||
|
||||
actual = parseDestinations(dests)
|
||||
- self.assertEquals(len(expected), len(actual))
|
||||
+ self.assertEqual(len(expected), len(actual))
|
||||
|
||||
for exp, act in zip(expected, actual):
|
||||
- self.assertEquals(exp, act)
|
||||
+ self.assertEqual(exp, act)
|
||||
|
||||
def test_valid_dest_bracketed(self):
|
||||
# Tests valid destinations in the bracketed form of <host>.
|
||||
@@ -136,10 +136,10 @@ class ParseDestinationsTest(unittest.Tes
|
||||
]
|
||||
|
||||
actual = parseDestinations(dests)
|
||||
- self.assertEquals(len(expected), len(actual))
|
||||
+ self.assertEqual(len(expected), len(actual))
|
||||
|
||||
for exp, act in zip(expected, actual):
|
||||
- self.assertEquals(exp, act)
|
||||
+ self.assertEqual(exp, act)
|
||||
|
||||
def test_valid_dest_without_instance(self):
|
||||
# Tests destinations without instance specified.
|
||||
@@ -160,10 +160,10 @@ class ParseDestinationsTest(unittest.Tes
|
||||
]
|
||||
|
||||
actual = parseDestinations(dests)
|
||||
- self.assertEquals(len(expected), len(actual))
|
||||
+ self.assertEqual(len(expected), len(actual))
|
||||
|
||||
for exp, act in zip(expected, actual):
|
||||
- self.assertEquals(exp, act)
|
||||
+ self.assertEqual(exp, act)
|
||||
|
||||
def test_wrong_dest(self):
|
||||
# Some cases of invalid input, e.g. invalid/missing port.
|
||||
diff -up carbon-1.1.10/setup.py.orig carbon-1.1.10/setup.py
|
||||
--- carbon-1.1.10/setup.py.orig 2022-05-22 11:58:01.000000000 -0600
|
||||
+++ carbon-1.1.10/setup.py 2023-08-02 19:33:17.942175823 -0600
|
||||
@@ -24,7 +24,7 @@ cf = ConfigParser()
|
||||
with open('setup.cfg', 'r') as f:
|
||||
orig_setup_cfg = f.read()
|
||||
f.seek(0)
|
||||
- cf.readfp(f, 'setup.cfg')
|
||||
+ cf.read_file(f, 'setup.cfg')
|
||||
|
||||
if os.environ.get('GRAPHITE_NO_PREFIX'):
|
||||
cf.remove_section('install')
|
10
SOURCES/python-carbon.logrotate
Normal file
10
SOURCES/python-carbon.logrotate
Normal file
@ -0,0 +1,10 @@
|
||||
/var/log/carbon/*.log {
|
||||
weekly
|
||||
missingok
|
||||
rotate 7
|
||||
compress
|
||||
delaycompress
|
||||
notifempty
|
||||
sharedscripts
|
||||
nocreate
|
||||
}
|
4
SOURCES/python-carbon.sysconfig
Normal file
4
SOURCES/python-carbon.sysconfig
Normal file
@ -0,0 +1,4 @@
|
||||
# Configuration file for carbon
|
||||
|
||||
# CONFIG=/etc/carbon/carbon.conf
|
||||
# LOG_DIR=/var/log/carbon
|
17
SOURCES/validate-storage-schemas.1
Normal file
17
SOURCES/validate-storage-schemas.1
Normal file
@ -0,0 +1,17 @@
|
||||
.TH VALIDATE-STORAGE-SCHEMAS 1
|
||||
.SH NAME
|
||||
validate-storage-schemas \- validates the storage schemas
|
||||
.SH SYNOPSYS
|
||||
.nf
|
||||
.fam C
|
||||
\fbvalidate-storage-schemas\fP
|
||||
.fam T
|
||||
.fi
|
||||
.SH DESCRIPTION
|
||||
validates the storage schemas from the configuration
|
||||
file /etc/carbon/storage-schemas.conf.
|
||||
.SH AUTHOR
|
||||
\fBvalidate-storage-schemas\fP, created by Chris Davis.
|
||||
.PP
|
||||
This manual page was written by Jonas Genannt <jonas.genannt@capi2name.de, for
|
||||
the Debian project (but may be used by others).
|
437
SPECS/python-carbon.spec
Normal file
437
SPECS/python-carbon.spec
Normal file
@ -0,0 +1,437 @@
|
||||
%global srcname carbon
|
||||
|
||||
%global desc %{expand: \
|
||||
Carbon is one of the components of Graphite, and is responsible for
|
||||
receiving metrics over the network and writing them down to disk using
|
||||
a storage back-end.}
|
||||
|
||||
Name: python-%{srcname}
|
||||
Version: 1.1.10
|
||||
Release: 5%{?dist}
|
||||
|
||||
Summary: Back-end data caching and persistence daemon for Graphite
|
||||
License: ASL 2.0
|
||||
URL: https://github.com/graphite-project/carbon
|
||||
|
||||
Source0: %{url}/archive/%{version}/%{name}-%{version}.tar.gz
|
||||
|
||||
Source10: carbon-aggregator.1
|
||||
Source11: carbon-cache.1
|
||||
Source13: carbon-relay.1
|
||||
Source14: validate-storage-schemas.1
|
||||
Source20: %{name}.logrotate
|
||||
|
||||
Source30: carbon-aggregator.service
|
||||
Source31: carbon-cache.service
|
||||
Source32: carbon-relay.service
|
||||
Source33: carbon-aggregator@.service
|
||||
Source34: carbon-cache@.service
|
||||
Source35: carbon-relay@.service
|
||||
|
||||
Source43: %{name}.sysconfig
|
||||
|
||||
# Set sane default filesystem paths.
|
||||
Patch1: %{name}-0.10.0-Set-sane-defaults.patch
|
||||
# Fix path to storage-schemas.conf.
|
||||
Patch2: %{name}-0.9.13-Fix-path-to-storage-schemas.conf.patch
|
||||
# Python 3.12 support https://github.com/graphite-project/carbon/issues/946
|
||||
Patch3: %{name}-1.1.10-Py3.12-support.patch
|
||||
|
||||
BuildArch: noarch
|
||||
|
||||
BuildRequires: python3-cachetools
|
||||
BuildRequires: python3-twisted
|
||||
BuildRequires: python3-urllib3
|
||||
BuildRequires: python3-cachetools
|
||||
BuildRequires: python3-twisted
|
||||
BuildRequires: python3-urllib3
|
||||
BuildRequires: python3-devel
|
||||
BuildRequires: python3-pytest
|
||||
BuildRequires: python3-protobuf
|
||||
BuildRequires: python3-whisper
|
||||
BuildRequires: pyproject-rpm-macros
|
||||
BuildRequires: systemd
|
||||
%py_provides python3-%{pypi_name}
|
||||
|
||||
%description
|
||||
%{desc}
|
||||
|
||||
%package -n python3-%{srcname}
|
||||
Summary: %{summary}
|
||||
Requires: logrotate
|
||||
Requires(pre): shadow-utils
|
||||
Requires(post): systemd
|
||||
Requires(preun): systemd
|
||||
Requires(postun): systemd
|
||||
%{?python_provide:%python_provide python3-%{srcname}}
|
||||
|
||||
%description -n python3-%{srcname}
|
||||
%{desc}
|
||||
|
||||
|
||||
%prep
|
||||
%autosetup -p1 -n %{srcname}-%{version}
|
||||
|
||||
# ugly prefix hack..
|
||||
export GRAPHITE_NO_PREFIX=True
|
||||
sed -i -e '/data_files=install_files,/d' setup.py
|
||||
cat << EOF >> setup.cfg
|
||||
[install]
|
||||
install-lib=
|
||||
EOF
|
||||
|
||||
# txAMQP is orphaned in 2020
|
||||
sed -i "s/, 'txAMQP'//" setup.py
|
||||
sed -i '/txAMQP/d' requirements.txt
|
||||
# shebangs shebang..
|
||||
sed -i '1s|^#!/usr/bin/env python|#!/usr/bin/python3|' lib/carbon/amqp_listener.py
|
||||
sed -i '1s|^#!/usr/bin/env python|#!/usr/bin/python3|' lib/carbon/amqp_publisher.py
|
||||
# disable tests which use mmh3 hash
|
||||
sed -i "s|plugin == 'rules'|plugin == 'rules' or plugin.startswith('fast-')|" lib/carbon/tests/test_routers.py
|
||||
# Disable internal log rotation.
|
||||
sed -i -e 's/ENABLE_LOGROTATION.*/ENABLE_LOGROTATION = False/g' conf/carbon.conf.example
|
||||
# Skip Ceres database test, not actively maintained
|
||||
rm lib/carbon/tests/test_database.py
|
||||
|
||||
# Use the standard library instead of a backport
|
||||
sed -i -e 's/^import mock/from unittest import mock/' \
|
||||
-e 's/^from mock import /from unittest.mock import /' \
|
||||
lib/carbon/tests/*.py
|
||||
|
||||
%generate_buildrequires
|
||||
%pyproject_buildrequires -r
|
||||
|
||||
|
||||
%build
|
||||
%py3_build
|
||||
|
||||
|
||||
%install
|
||||
%{py3_install -- \
|
||||
--install-data=%{_localstatedir}/lib/carbon \
|
||||
--install-lib=%{python3_sitelib} \
|
||||
--install-scripts=%{_bindir}}
|
||||
|
||||
rm -rf %{buildroot}%{_localstatedir}/lib/carbon/*
|
||||
mkdir -p %{buildroot}%{_localstatedir}/lib/carbon/lists
|
||||
mkdir -p %{buildroot}%{_localstatedir}/lib/carbon/rrd
|
||||
mkdir -p %{buildroot}%{_localstatedir}/lib/carbon/whisper
|
||||
|
||||
# default config
|
||||
mkdir -p %{buildroot}%{_sysconfdir}/carbon
|
||||
install -D -p -m0644 conf/carbon.conf.example \
|
||||
%{buildroot}%{_sysconfdir}/carbon/carbon.conf
|
||||
install -D -p -m0644 conf/storage-aggregation.conf.example \
|
||||
%{buildroot}%{_sysconfdir}/carbon/storage-aggregation.conf
|
||||
install -D -p -m0644 conf/storage-schemas.conf.example \
|
||||
%{buildroot}%{_sysconfdir}/carbon/storage-schemas.conf
|
||||
|
||||
# man pages
|
||||
mkdir -p %{buildroot}%{_mandir}/man1
|
||||
install -D -p -m0644 %{SOURCE10} %{buildroot}%{_mandir}/man1
|
||||
install -D -p -m0644 %{SOURCE11} %{buildroot}%{_mandir}/man1
|
||||
install -D -p -m0644 %{SOURCE13} %{buildroot}%{_mandir}/man1
|
||||
install -D -p -m0644 %{SOURCE14} %{buildroot}%{_mandir}/man1
|
||||
|
||||
# log files
|
||||
mkdir -p %{buildroot}%{_localstatedir}/log/carbon
|
||||
install -D -p -m0644 %{SOURCE20} \
|
||||
%{buildroot}%{_sysconfdir}/logrotate.d/python3-%{srcname}
|
||||
|
||||
# init scripts
|
||||
install -D -p -m0644 %{SOURCE30} \
|
||||
%{buildroot}%{_unitdir}/carbon-aggregator.service
|
||||
install -D -p -m0644 %{SOURCE31} \
|
||||
%{buildroot}%{_unitdir}/carbon-cache.service
|
||||
install -D -p -m0644 %{SOURCE32} \
|
||||
%{buildroot}%{_unitdir}/carbon-relay.service
|
||||
install -D -p -m0644 %{SOURCE33} \
|
||||
%{buildroot}%{_unitdir}/carbon-aggregator@.service
|
||||
install -D -p -m0644 %{SOURCE34} \
|
||||
%{buildroot}%{_unitdir}/carbon-cache@.service
|
||||
install -D -p -m0644 %{SOURCE35} \
|
||||
%{buildroot}%{_unitdir}/carbon-relay@.service
|
||||
|
||||
# remove .py suffix
|
||||
for i in %{buildroot}%{_bindir}/*.py; do
|
||||
mv ${i} ${i%%.py}
|
||||
done
|
||||
|
||||
# fix permissions
|
||||
chmod 755 %{buildroot}%{python3_sitelib}/carbon/amqp_listener.py
|
||||
chmod 755 %{buildroot}%{python3_sitelib}/carbon/amqp_publisher.py
|
||||
|
||||
|
||||
%pre -n python3-%{srcname}
|
||||
getent group carbon >/dev/null || groupadd -r carbon
|
||||
getent passwd carbon >/dev/null || \
|
||||
useradd -r -g carbon -d %{_localstatedir}/lib/carbon \
|
||||
-s /sbin/nologin -c "Carbon cache daemon" carbon
|
||||
|
||||
|
||||
%post -n python3-%{srcname}
|
||||
%systemd_post carbon-aggregator.service
|
||||
%systemd_post carbon-cache.service
|
||||
%systemd_post carbon-relay.service
|
||||
|
||||
|
||||
%preun -n python3-%{srcname}
|
||||
%systemd_preun carbon-aggregator.service
|
||||
%systemd_preun carbon-cache.service
|
||||
%systemd_preun carbon-relay.service
|
||||
|
||||
|
||||
%postun -n python3-%{srcname}
|
||||
%systemd_postun_with_restart carbon-aggregator.service
|
||||
%systemd_postun_with_restart carbon-cache.service
|
||||
%systemd_postun_with_restart carbon-relay.service
|
||||
|
||||
|
||||
%check
|
||||
%pytest -v
|
||||
|
||||
|
||||
%files -n python3-%{srcname}
|
||||
%doc README.md
|
||||
%doc conf/ examples/ distro/redhat/init.d/
|
||||
|
||||
%{python3_sitelib}/carbon
|
||||
%{python3_sitelib}/carbon-*-py%{python3_version}.egg-info
|
||||
%{python3_sitelib}/twisted/plugins/*
|
||||
|
||||
%dir %{_sysconfdir}/carbon
|
||||
%config(noreplace) %{_sysconfdir}/carbon/carbon.conf
|
||||
%config(noreplace) %{_sysconfdir}/carbon/storage-aggregation.conf
|
||||
%config(noreplace) %{_sysconfdir}/carbon/storage-schemas.conf
|
||||
|
||||
%config(noreplace) %{_sysconfdir}/logrotate.d/python3-%{srcname}
|
||||
|
||||
%attr(0755,carbon,carbon) %dir %{_localstatedir}/lib/carbon
|
||||
%attr(0755,carbon,carbon) %dir %{_localstatedir}/lib/carbon/lists
|
||||
%attr(0755,carbon,carbon) %dir %{_localstatedir}/lib/carbon/rrd
|
||||
%attr(0755,carbon,carbon) %dir %{_localstatedir}/lib/carbon/whisper
|
||||
%attr(0755,carbon,carbon) %dir %{_localstatedir}/log/carbon
|
||||
|
||||
%{_bindir}/carbon-aggregator
|
||||
%{_bindir}/carbon-aggregator-cache
|
||||
%{_bindir}/carbon-cache
|
||||
%{_bindir}/carbon-relay
|
||||
%{_bindir}/validate-storage-schemas
|
||||
|
||||
%{_mandir}/man1/carbon-aggregator.1*
|
||||
%{_mandir}/man1/carbon-cache.1*
|
||||
%{_mandir}/man1/carbon-relay.1*
|
||||
%{_mandir}/man1/validate-storage-schemas.1*
|
||||
|
||||
%{_unitdir}/carbon-aggregator.service
|
||||
%{_unitdir}/carbon-cache.service
|
||||
%{_unitdir}/carbon-relay.service
|
||||
%{_unitdir}/carbon-aggregator@.service
|
||||
%{_unitdir}/carbon-cache@.service
|
||||
%{_unitdir}/carbon-relay@.service
|
||||
|
||||
|
||||
%changelog
|
||||
|
||||
* Fri Aug 25 2023 Sofia Boldyreva <sboldyreva@almalinux.org> - 1.1.10-5
|
||||
- Added to BuildRequires: python3-cachetools, python3-twisted, python3-urllib3 to be able to build on AlmaLinux
|
||||
- Replaced %pyproject_wheel with %py3_build in %build to be able to build on AlmaLinux
|
||||
- Replaced %pyproject_install, %pyproject_save_files %{srcname} twisted with py3_install lines
|
||||
- Removed -f %{pyproject_files} in %files to be able to build on AlmaLinux
|
||||
- Added %{python3_sitelib}/carbon, %{python3_sitelib}/carbon-*-py%{python3_version}.egg-info, %{python3_sitelib}/twisted/plugins/* in %files to be able to build on AlmaLinux
|
||||
|
||||
* Fri Aug 04 2023 Jonathan Steffan <jsteffan@fedoraproject.org> - 1.1.10-5
|
||||
- Patch for Python 3.12 (RHBZ#2226168)
|
||||
|
||||
* Fri Jul 21 2023 Fedora Release Engineering <releng@fedoraproject.org> - 1.1.10-4
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
|
||||
|
||||
* Wed Jun 28 2023 Python Maint <python-maint@redhat.com> - 1.1.10-3
|
||||
- Rebuilt for Python 3.12
|
||||
|
||||
* Fri Jan 20 2023 Fedora Release Engineering <releng@fedoraproject.org> - 1.1.10-2
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
|
||||
|
||||
* Mon Jul 25 2022 Ali Erdinc Koroglu <aekoroglu@fedoraproject.org> - 1.1.10-1
|
||||
- Update to 1.1.10 (RHBZ #2056668 and #2101243)
|
||||
|
||||
* Tue Jun 14 2022 Python Maint <python-maint@redhat.com> - 1.1.6-11
|
||||
- Rebuilt for Python 3.11
|
||||
|
||||
* Fri Jan 21 2022 Fedora Release Engineering <releng@fedoraproject.org> - 1.1.6-10
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
|
||||
|
||||
* Wed Jan 12 2022 Miro Hrončok <mhroncok@redhat.com> - 1.1.6-9
|
||||
- Fix tests for mock 4+
|
||||
|
||||
* Fri Jul 23 2021 Fedora Release Engineering <releng@fedoraproject.org> - 1.1.6-8
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
|
||||
|
||||
* Fri Jun 04 2021 Python Maint <python-maint@redhat.com> - 1.1.6-7
|
||||
- Rebuilt for Python 3.10
|
||||
|
||||
* Tue Mar 02 2021 Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> - 1.1.6-6
|
||||
- Rebuilt for updated systemd-rpm-macros
|
||||
See https://pagure.io/fesco/issue/2583.
|
||||
|
||||
* Wed Jan 27 2021 Fedora Release Engineering <releng@fedoraproject.org> - 1.1.6-5
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
|
||||
|
||||
* Wed Jul 29 2020 Fedora Release Engineering <releng@fedoraproject.org> - 1.1.6-4
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
|
||||
|
||||
* Tue May 26 2020 Miro Hrončok <mhroncok@redhat.com> - 1.1.6-3
|
||||
- Rebuilt for Python 3.9
|
||||
|
||||
* Thu Jan 30 2020 Fedora Release Engineering <releng@fedoraproject.org> - 1.1.6-2
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
|
||||
|
||||
* Sat Jan 18 2020 Piotr Popieluch <piotr1212@gmail.com> - 1.1.6-1
|
||||
- Update to 1.1.6
|
||||
- -- adds options to py3_install after \ #1792050
|
||||
|
||||
* Thu Oct 03 2019 Miro Hrončok <mhroncok@redhat.com> - 1.1.5-6
|
||||
- Rebuilt for Python 3.8.0rc1 (#1748018)
|
||||
|
||||
* Mon Aug 19 2019 Miro Hrončok <mhroncok@redhat.com> - 1.1.5-5
|
||||
- Rebuilt for Python 3.8
|
||||
|
||||
* Fri Jul 26 2019 Fedora Release Engineering <releng@fedoraproject.org> - 1.1.5-4
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
|
||||
|
||||
* Mon Feb 11 2019 Piotr Popieluch <piotr1212@gmail.com> - 1.1.5-3
|
||||
- Remove requires on configparser
|
||||
|
||||
* Sat Feb 02 2019 Fedora Release Engineering <releng@fedoraproject.org> - 1.1.5-2
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
|
||||
|
||||
* Mon Jan 14 2019 Piotr Popieluch <piotr1212@gmail.com> - 1.1.5-1
|
||||
- Update to 1.1.5
|
||||
|
||||
* Thu Sep 27 2018 Piotr Popieluch <piotr1212@gmail.com> - 1.1.4-2
|
||||
- Remove Python 2 Subpackage
|
||||
|
||||
* Sat Sep 15 2018 Piotr Popieluch <piotr1212@gmail.com> - 1.1.4-1
|
||||
- Update to 1.1.4
|
||||
|
||||
* Fri Jul 13 2018 Fedora Release Engineering <releng@fedoraproject.org> - 1.1.3-3
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
|
||||
|
||||
* Mon Apr 09 2018 Piotr Popieluch <piotr1212@gmail.com> - 1.1.3-2
|
||||
- Switch to Python 3 by default
|
||||
- Remove sys-v init
|
||||
|
||||
* Mon Apr 09 2018 Piotr Popieluch <piotr1212@gmail.com> - 1.1.3-1
|
||||
- Update to 1.1.3
|
||||
|
||||
* Wed Feb 28 2018 Piotr Popieluch <piotr1212@gmail.com> - 1.1.2-1
|
||||
- Update to 1.1.2
|
||||
- Build python3-carbon
|
||||
|
||||
* Wed Feb 21 2018 Iryna Shcherbina <ishcherb@redhat.com> - 1.1.1-4
|
||||
- Update Python 2 dependency declarations to new packaging standards
|
||||
(See https://fedoraproject.org/wiki/FinalizingFedoraSwitchtoPython3)
|
||||
|
||||
* Fri Feb 09 2018 Fedora Release Engineering <releng@fedoraproject.org> - 1.1.1-3
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
|
||||
|
||||
* Wed Dec 27 2017 Piotr Popieluch <piotr1212@gmail.com> - 1.1.1-2
|
||||
- Add tests
|
||||
- Add missing Requires
|
||||
|
||||
* Tue Dec 26 2017 Piotr Popieluch <piotr1212@gmail.com> - 1.1.1-1
|
||||
- Update to 1.1.1
|
||||
|
||||
* Thu Jul 27 2017 Fedora Release Engineering <releng@fedoraproject.org> - 0.10.0-0.4.rc1
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
|
||||
|
||||
* Sat Feb 11 2017 Fedora Release Engineering <releng@fedoraproject.org> - 0.10.0-0.3.rc1
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
|
||||
|
||||
* Wed Jan 25 2017 piotr1212@gmail.com - 0.10.0-0.2.rc1
|
||||
- Fix requires
|
||||
- Fix logrotate name
|
||||
|
||||
* Thu Sep 22 2016 Piotr Popieluch <piotr1212@gmail.com> - 0.10.0-0.1.rc1
|
||||
- Update to 0.10.0-rc1
|
||||
|
||||
* Sun Sep 18 2016 Piotr Popieluch <piotr1212@gmail.com> - - 0.9.15-6
|
||||
- Set correct interpreter for amqp listener and publiser
|
||||
|
||||
* Sun Sep 18 2016 Piotr Popieluch <piotr1212@gmail.com> - 0.9.15-5
|
||||
- Add example init script to upstream, rhbz#1360469
|
||||
- Enable logrotate by default, fixes rhbz#1285727
|
||||
- Add storage-aggregation.conf, fixes rhbz#1285725
|
||||
- Update to newer package guidelines
|
||||
- Remove el5 support
|
||||
- Remove obsoleted macros
|
||||
- Update URL
|
||||
|
||||
* Wed Aug 03 2016 Piotr Popieluch <piotr1212@gmail.com> - 0.9.15-4
|
||||
- Add systemd unit files with instances
|
||||
|
||||
* Tue Jul 19 2016 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.9.15-3
|
||||
- https://fedoraproject.org/wiki/Changes/Automatic_Provides_for_Python_RPM_Packages
|
||||
|
||||
* Thu Feb 04 2016 Fedora Release Engineering <releng@fedoraproject.org> - 0.9.15-2
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
|
||||
|
||||
* Sat Nov 28 2015 Piotr Popieluch <piotr1212@gmail.com> - 0.9.15-1
|
||||
- Update to new version
|
||||
|
||||
* Sun Nov 08 2015 Piotr Popieluch <piotr1212@gmail.com> - 0.9.14-1
|
||||
- Update to new version
|
||||
|
||||
* Thu Jun 18 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.9.13-0.2.pre1
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
|
||||
|
||||
* Mon Jan 19 2015 Piotr Popieluch <piotr1212@gmail.com> - 0.9.13-0.1.pre1
|
||||
- update to 0.9.13-pre1
|
||||
|
||||
* Mon Nov 24 2014 Jamie Nguyen <jamielinux@fedoraproject.org> - 0.9.12-7
|
||||
- patch setup.py to prevent installation of upstream init scripts
|
||||
|
||||
* Fri Nov 14 2014 Jamie Nguyen <jamielinux@fedoraproject.org> - 0.9.12-6
|
||||
- conditionally define macros for EPEL 6 and below
|
||||
|
||||
* Wed Oct 01 2014 Jamie Nguyen <jamielinux@fedoraproject.org> - 0.9.12-5
|
||||
- update URL
|
||||
- improve description
|
||||
- use commit hash for Source URL
|
||||
- use loop to rename files
|
||||
- include README.md and examples/
|
||||
- amend patch for filesystem default paths
|
||||
- fix path to storage-schemas.conf
|
||||
- add man pages from Debian
|
||||
- disable internal log rotation and include logrotate configuration
|
||||
for Fedora >= 21 and EPEL >= 7
|
||||
- be more explicit in %%files
|
||||
- include python egg
|
||||
- migrate to systemd on Fedora >= 21 and EPEL >= 7
|
||||
|
||||
* Sat Jun 07 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.9.12-4
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
|
||||
|
||||
* Mon Sep 30 2013 Jonathan Steffan <jsteffan@fedoraproject.org> - 0.9.12-3
|
||||
- Update default runtime user to carbon for carbon-aggregator and
|
||||
carbon-relay (RHBZ#1013813)
|
||||
|
||||
* Tue Sep 24 2013 Jonathan Steffan <jsteffan@fedoraproject.org> - 0.9.12-2
|
||||
- Add strict python-whisper Requires (RHBZ#1010432)
|
||||
- Don't cleanup user and user data on package remove (RHBZ#1010430)
|
||||
|
||||
* Mon Sep 02 2013 Jonathan Steffan <jsteffan@fedoraproject.org> - 0.9.12-1
|
||||
- Update to 0.9.12
|
||||
|
||||
* Sun Aug 04 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.9.10-4
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild
|
||||
|
||||
* Thu Feb 14 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.9.10-3
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild
|
||||
|
||||
* Sat Nov 24 2012 Jonathan Steffan <jsteffan@fedoraproject.org> - 0.9.10-2
|
||||
- Update spec to build on el5
|
||||
- Fix python_sitelib definition
|
||||
|
||||
* Wed May 30 2012 Jonathan Steffan <jsteffan@fedoraproject.org> - 0.9.10-1
|
||||
- Initial Package
|
Loading…
Reference in New Issue
Block a user