Hello community,
here is the log from the commit of package openSUSE-release-tools for
openSUSE:Factory checked in at 2018-06-25 11:41:37
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/openSUSE-release-tools (Old)
and /work/SRC/openSUSE:Factory/.openSUSE-release-tools.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "openSUSE-release-tools"
Mon Jun 25 11:41:37 2018 rev:106 rq:618570 version:20180621.c38f9ca
Changes:
--------
---
/work/SRC/openSUSE:Factory/openSUSE-release-tools/openSUSE-release-tools.changes
2018-06-22 13:35:13.171013656 +0200
+++
/work/SRC/openSUSE:Factory/.openSUSE-release-tools.new/openSUSE-release-tools.changes
2018-06-25 11:41:44.590936952 +0200
@@ -1,0 +2,26 @@
+Thu Jun 21 16:21:52 UTC 2018 - [email protected]
+
+- Update to version 20180621.c38f9ca:
+ * metrics/access/aggregate: write zeros for empty product data.
+
+-------------------------------------------------------------------
+Thu Jun 21 15:05:19 UTC 2018 - [email protected]
+
+- Update to version 20180621.58f5c91:
+ * metrics/access/ingest: update pattern to handle most recent log format.
+ * metrics/grafana/access: add explanation about loss of custom log format.
+ * metrics/access/aggregate: change PONTIFEX base URL based on poo#36862.
+ * metrics/grafana/access: remove broken datasource templating from export.
+ * metrics/access/aggregate: remove left over sprintf() from PONTIFEX lines.
+ * metrics/access/aggregate: skip the current day since the logs are
incomplete.
+ * dist/spec: move access.json dashboard to metrics-access package.
+
+-------------------------------------------------------------------
+Thu Jun 21 05:33:27 UTC 2018 - [email protected]
+
+- Update to version 20180621.f2875ce:
+ * pkglistgen: Don't warn about locked packages not found
+ * pkglistgen: Copy away inc files too
+ * pkglistgen: Output more infos about overlap
+
+-------------------------------------------------------------------
Old:
----
openSUSE-release-tools-20180620.d4172e6.obscpio
New:
----
openSUSE-release-tools-20180621.c38f9ca.obscpio
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ openSUSE-release-tools.spec ++++++
--- /var/tmp/diff_new_pack.fYuj0k/_old 2018-06-25 11:41:45.850890442 +0200
+++ /var/tmp/diff_new_pack.fYuj0k/_new 2018-06-25 11:41:45.854890295 +0200
@@ -20,7 +20,7 @@
%define source_dir openSUSE-release-tools
%define announcer_filename factory-package-news
Name: openSUSE-release-tools
-Version: 20180620.d4172e6
+Version: 20180621.c38f9ca
Release: 0
Summary: Tools to aid in staging and release work for openSUSE/SUSE
License: GPL-2.0-or-later AND MIT
@@ -493,6 +493,7 @@
%{_bindir}/osrt-metrics
%{_datadir}/%{source_dir}/metrics
%exclude %{_datadir}/%{source_dir}/metrics/access
+%exclude %{_datadir}/%{source_dir}/metrics/grafana/access.json
%{_datadir}/%{source_dir}/metrics.py
%{_datadir}/%{source_dir}/metrics_release.py
# To avoid adding grafana as BuildRequires since it does not live in same repo.
@@ -512,6 +513,7 @@
%{_bindir}/osrt-metrics-access-aggregate
%{_bindir}/osrt-metrics-access-ingest
%{_datadir}/%{source_dir}/metrics/access
+%{_datadir}/%{source_dir}/metrics/grafana/access.json
%{_unitdir}/osrt-metrics-access.service
%{_unitdir}/osrt-metrics-access.timer
++++++ _servicedata ++++++
--- /var/tmp/diff_new_pack.fYuj0k/_old 2018-06-25 11:41:45.894888818 +0200
+++ /var/tmp/diff_new_pack.fYuj0k/_new 2018-06-25 11:41:45.894888818 +0200
@@ -1,6 +1,6 @@
<servicedata>
<service name="tar_scm">
<param
name="url">https://github.com/openSUSE/openSUSE-release-tools.git</param>
- <param
name="changesrevision">a909b40461c5619016bc1c8a1ecdb28a20962a29</param>
+ <param
name="changesrevision">d91ce3f2b282c6bf9ffca5cc6a8b13b683e8506c</param>
</service>
</servicedata>
++++++ openSUSE-release-tools-20180620.d4172e6.obscpio ->
openSUSE-release-tools-20180621.c38f9ca.obscpio ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/openSUSE-release-tools-20180620.d4172e6/dist/package/openSUSE-release-tools.spec
new/openSUSE-release-tools-20180621.c38f9ca/dist/package/openSUSE-release-tools.spec
---
old/openSUSE-release-tools-20180620.d4172e6/dist/package/openSUSE-release-tools.spec
2018-06-20 22:42:36.000000000 +0200
+++
new/openSUSE-release-tools-20180621.c38f9ca/dist/package/openSUSE-release-tools.spec
2018-06-21 18:13:51.000000000 +0200
@@ -493,6 +493,7 @@
%{_bindir}/osrt-metrics
%{_datadir}/%{source_dir}/metrics
%exclude %{_datadir}/%{source_dir}/metrics/access
+%exclude %{_datadir}/%{source_dir}/metrics/grafana/access.json
%{_datadir}/%{source_dir}/metrics.py
%{_datadir}/%{source_dir}/metrics_release.py
# To avoid adding grafana as BuildRequires since it does not live in same repo.
@@ -512,6 +513,7 @@
%{_bindir}/osrt-metrics-access-aggregate
%{_bindir}/osrt-metrics-access-ingest
%{_datadir}/%{source_dir}/metrics/access
+%{_datadir}/%{source_dir}/metrics/grafana/access.json
%{_unitdir}/osrt-metrics-access.service
%{_unitdir}/osrt-metrics-access.timer
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/openSUSE-release-tools-20180620.d4172e6/metrics/access/aggregate.php
new/openSUSE-release-tools-20180621.c38f9ca/metrics/access/aggregate.php
--- old/openSUSE-release-tools-20180620.d4172e6/metrics/access/aggregate.php
2018-06-20 22:42:36.000000000 +0200
+++ new/openSUSE-release-tools-20180621.c38f9ca/metrics/access/aggregate.php
2018-06-21 18:13:51.000000000 +0200
@@ -6,7 +6,7 @@
$CACHE_DIR = $_SERVER['HOME'] . '/.cache/openSUSE-release-tools-access';
const PROTOCOLS = ['ipv4', 'ipv6'];
-const PONTIFEX = 'http://downloadlogs.infra.opensuse.org';
+const PONTIFEX = 'http://pontifex.infra.opensuse.org/logs';
const LANGLEY = 'http://langley.suse.de/pub/pontifex%s-opensuse.suse.de';
const VHOST = 'download.opensuse.org';
const FILENAME = 'download.opensuse.org-%s-access_log.xz';
@@ -14,19 +14,21 @@
const PRODUCT_PATTERN =
'/^(10\.[2-3]|11\.[0-4]|12\.[1-3]|13\.[1-2]|42\.[1-3]|15\.[0]|tumbleweed)$/';
$begin = new DateTime();
+// Skip the current day since the logs are incomplete and not compressed yet.
+$begin->sub(date_interval_create_from_date_string('1 day'));
$source_map = [
'ipv4' => [
'2010-01-03' => false,
'2014-04-14' => sprintf(LANGLEY, 2) . '/' . VHOST,
'2017-12-04' => sprintf(LANGLEY, 3) . '/' . VHOST,
// 2017-12-05 has bad permissions on langley and is still on origin.
- $begin->format('Y-m-d') => sprintf(PONTIFEX) . '/' . VHOST,
+ $begin->format('Y-m-d') => PONTIFEX . '/' . VHOST,
'filename' => FILENAME,
],
'ipv6' => [
'2012-12-31' => false,
'2017-12-04' => sprintf(LANGLEY, 3) . '/' . IPV6_PREFIX . VHOST,
- $begin->format('Y-m-d') => sprintf(PONTIFEX) . '/' . IPV6_PREFIX . VHOST,
+ $begin->format('Y-m-d') => PONTIFEX . '/' . IPV6_PREFIX . VHOST,
'filename' => IPV6_PREFIX . FILENAME,
],
];
@@ -39,7 +41,7 @@
cache_init();
ingest_all($period_reversed, $source_map);
-aggregate_all($period_reversed);
+aggregate_all(array_reverse($period_reversed));
function cache_init()
@@ -147,14 +149,14 @@
return substr_count(shell_exec('pgrep -g ' . getmypid()), "\n") - 1;
}
-function aggregate_all($period_reversed)
+function aggregate_all($period)
{
global $CACHE_DIR;
$intervals = ['day' => 'Y-m-d', 'week' => 'Y-W', 'month' => 'Y-m'];
$merged = [];
$merged_protocol = [];
$date_previous = null;
- foreach ($period_reversed as $date) {
+ foreach ($period as $date) {
$date_string = $date->format('Y-m-d');
$data = null;
@@ -196,7 +198,7 @@
// Write out any remaining data by simulating a date beyond all intervals.
error_log('write remaining data');
$date = clone $date;
- $date->sub(date_interval_create_from_date_string('1 year'));
+ $date->add(date_interval_create_from_date_string('1 year'));
foreach (PROTOCOLS as $protocol) {
aggregate($intervals, $merged_protocol[$protocol], $date, $date_previous,
null,
@@ -264,6 +266,8 @@
function summarize($data)
{
+ static $products = [];
+
$summary = [];
$summary['-'] = [
@@ -288,8 +292,28 @@
// A UUID should be unique to a product, as such this should provide an
// accurate count of total unique across all products.
$summary['-']['unique'] += $summary_product['unique'];
+ } else {
+ $summary_product += [
+ 'unique' => 0,
+ 'unqiue_average' => (float) 0,
+ 'unqiue_max' => 0,
+ ];
}
$summary[$product] = $summary_product;
+
+ // Keep track of which products have been included in previous summary.
+ if (!isset($products[$product])) $products[$product] = true;
+ }
+
+ // Fill empty data with zeros to achieve appropriate result in graph.
+ $missing = array_diff(array_keys($products), array_keys($summary));
+ foreach ($missing as $product) {
+ $summary[$product] = [
+ 'total' => 0,
+ 'unique' => 0,
+ 'unqiue_average' => (float) 0,
+ 'unqiue_max' => 0,
+ ];
}
return $summary;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/openSUSE-release-tools-20180620.d4172e6/metrics/access/ingest.php
new/openSUSE-release-tools-20180621.c38f9ca/metrics/access/ingest.php
--- old/openSUSE-release-tools-20180620.d4172e6/metrics/access/ingest.php
2018-06-20 22:42:36.000000000 +0200
+++ new/openSUSE-release-tools-20180621.c38f9ca/metrics/access/ingest.php
2018-06-21 18:13:51.000000000 +0200
@@ -1,7 +1,7 @@
#!/usr/bin/php
<?php
-const REGEX_LINE = '/\S+ \S+ \S+ \[([^:]+:\d+:\d+:\d+ [^\]]+)\] "(\S+)(?:
(\S+) \S+)?" (\S+) (\S+) "[^"]*" "[^"]*" .* size:(\S+) \S+(?:
"?(\S+-\S+-\S+-\S+-\S+|-)"? "?(dvd|ftp|-)"?)?/';
+const REGEX_LINE = '/\S+ \S+ \S+ \[([^:]+:\d+:\d+:\d+ [^\]]+)\] "(\S+)(?:
(\S+) \S+)?" (\S+) (\S+) "[^"]*" "[^"]*" .* size:(\S+) \S+(?:
+"?(\S+-\S+-\S+-\S+-[^\s"]+|-)"? "?(dvd|ftp|-)"?)?/';
const REGEX_PRODUCT =
'#/(?:(tumbleweed)|distribution/(?:leap/)?(\d+\.\d+)|openSUSE(?:_|:/)(?:leap(?:_|:/))?(factory|tumbleweed|\d+\.\d+))#i';
$total = 0;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/openSUSE-release-tools-20180620.d4172e6/metrics/grafana/access.json
new/openSUSE-release-tools-20180621.c38f9ca/metrics/grafana/access.json
--- old/openSUSE-release-tools-20180620.d4172e6/metrics/grafana/access.json
2018-06-20 22:42:36.000000000 +0200
+++ new/openSUSE-release-tools-20180621.c38f9ca/metrics/grafana/access.json
2018-06-21 18:13:51.000000000 +0200
@@ -1,7 +1,7 @@
{
"__inputs": [
{
- "name": "DS_OSRT_ACCESS",
+ "name": "osrt_access",
"label": "osrt_access",
"description": "",
"type": "datasource",
@@ -9,7 +9,7 @@
"pluginName": "InfluxDB"
},
{
- "name": "DS_OPENSUSE:LEAP:42.2",
+ "name": "openSUSE:Leap:42.2",
"label": "openSUSE:Leap:42.2",
"description": "",
"type": "datasource",
@@ -17,7 +17,7 @@
"pluginName": "InfluxDB"
},
{
- "name": "DS_OPENSUSE:LEAP:42.3",
+ "name": "openSUSE:Leap:42.3",
"label": "openSUSE:Leap:42.3",
"description": "",
"type": "datasource",
@@ -25,7 +25,7 @@
"pluginName": "InfluxDB"
},
{
- "name": "DS_OPENSUSE:LEAP:15.0",
+ "name": "openSUSE:Leap:15.0",
"label": "openSUSE:Leap:15.0",
"description": "",
"type": "datasource",
@@ -79,7 +79,7 @@
"type": "dashboard"
},
{
- "datasource": "${DS_OPENSUSE:LEAP:42.2}",
+ "datasource": "openSUSE:Leap:42.2",
"enable": false,
"hide": false,
"iconColor": "rgba(255, 96, 96, 1)",
@@ -91,7 +91,7 @@
"type": "tags"
},
{
- "datasource": "${DS_OPENSUSE:LEAP:42.3}",
+ "datasource": "openSUSE:Leap:42.3",
"enable": false,
"hide": false,
"iconColor": "rgba(255, 96, 96, 1)",
@@ -103,7 +103,7 @@
"type": "tags"
},
{
- "datasource": "${DS_OPENSUSE:LEAP:15.0}",
+ "datasource": "openSUSE:Leap:15.0",
"enable": false,
"hide": false,
"iconColor": "rgba(255, 96, 96, 1)",
@@ -125,9 +125,9 @@
"links": [],
"panels": [
{
- "content": "These metrics were generated by parsing the Apache access
logs of [download.opensuse.org](http://download.opensuse.org/).\n\n- A unique
identifier (UUID) is included in logs when zypper includes it in the request.
Multiple requests by the same UUID within the given aggregation frequency are
counted as a single unique user.\n- The target product is determined by looking
for specially formatted path elements representing build repositories for a
particular product and the main repositories for that product.",
+ "content": "These metrics were generated by parsing the Apache access
logs of [download.opensuse.org](http://download.opensuse.org/).\n\n- A unique
identifier (UUID) is included in logs when zypper includes it in the request.
Multiple requests by the same UUID within the given aggregation frequency are
counted as a single unique user.\n- The target product is determined by looking
for specially formatted path elements representing build repositories for a
particular product and the main repositories for that product.\n\n__The logs
are entirely invalid, due to a config mistake, from _2017-12-07_ to
_2018-03-08_ and the custom log format, which includes the UUID from zypper,
was not present from _2018-03-08_ until _2018-05-29_ which is the cause of the
large \"hole\" in the graphs.__",
"gridPos": {
- "h": 3,
+ "h": 4,
"w": 24,
"x": 0,
"y": 0
@@ -144,7 +144,7 @@
"h": 1,
"w": 24,
"x": 0,
- "y": 3
+ "y": 4
},
"id": 26,
"panels": [],
@@ -156,13 +156,13 @@
"bars": false,
"dashLength": 10,
"dashes": false,
- "datasource": "${DS_OSRT_ACCESS}",
+ "datasource": "osrt_access",
"fill": 1,
"gridPos": {
"h": 10,
"w": 24,
"x": 0,
- "y": 4
+ "y": 5
},
"id": 10,
"legend": {
@@ -266,13 +266,13 @@
"bars": false,
"dashLength": 10,
"dashes": false,
- "datasource": "${DS_OSRT_ACCESS}",
+ "datasource": "osrt_access",
"fill": 1,
"gridPos": {
"h": 10,
"w": 24,
"x": 0,
- "y": 14
+ "y": 15
},
"id": 12,
"legend": {
@@ -376,13 +376,13 @@
"bars": true,
"dashLength": 10,
"dashes": false,
- "datasource": "${DS_OSRT_ACCESS}",
+ "datasource": "osrt_access",
"fill": 1,
"gridPos": {
"h": 10,
"w": 24,
"x": 0,
- "y": 24
+ "y": 25
},
"id": 17,
"legend": {
@@ -483,13 +483,13 @@
},
{
"columns": [],
- "datasource": "${DS_OSRT_ACCESS}",
+ "datasource": "osrt_access",
"fontSize": "100%",
"gridPos": {
"h": 10,
"w": 5,
"x": 0,
- "y": 34
+ "y": 35
},
"id": 15,
"links": [],
@@ -571,13 +571,13 @@
"bars": true,
"dashLength": 10,
"dashes": false,
- "datasource": "${DS_OSRT_ACCESS}",
+ "datasource": "osrt_access",
"fill": 1,
"gridPos": {
"h": 10,
"w": 19,
"x": 5,
- "y": 34
+ "y": 35
},
"id": 13,
"legend": {
@@ -689,7 +689,7 @@
"h": 1,
"w": 24,
"x": 0,
- "y": 44
+ "y": 45
},
"id": 28,
"panels": [
@@ -1049,7 +1049,7 @@
"h": 1,
"w": 24,
"x": 0,
- "y": 45
+ "y": 46
},
"id": 30,
"panels": [
@@ -1474,7 +1474,7 @@
"h": 1,
"w": 24,
"x": 0,
- "y": 46
+ "y": 47
},
"id": 32,
"panels": [
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/openSUSE-release-tools-20180620.d4172e6/pkglistgen.py
new/openSUSE-release-tools-20180621.c38f9ca/pkglistgen.py
--- old/openSUSE-release-tools-20180620.d4172e6/pkglistgen.py 2018-06-20
22:42:36.000000000 +0200
+++ new/openSUSE-release-tools-20180621.c38f9ca/pkglistgen.py 2018-06-21
18:13:51.000000000 +0200
@@ -207,10 +207,8 @@
locked = self.locked | self.pkglist.unwanted
for l in locked:
sel = pool.select(str(l), solv.Selection.SELECTION_NAME)
- if sel.isempty():
- # if we can't find it, it probably is not as important
- logger.debug('{}.{}: locked package {} not
found'.format(self.name, arch, l))
- else:
+ # if we can't find it, it probably is not as important
+ if not sel.isempty():
jobs += sel.jobs(solv.Job.SOLVER_LOCK)
for s in self.silents:
@@ -311,9 +309,14 @@
for arch in self.architectures:
mp.update(m.solved_packages[arch])
if len(packages & mp):
- overlap.comment += '\n overlapping between ' + self.name + '
and ' + m.name
+ overlap.comment += '\n overlapping between ' + self.name + '
and ' + m.name + "\n"
for p in sorted(packages & mp):
- overlap.comment += '\n - ' + p
+ for arch in m.solved_packages.keys():
+ if m.solved_packages[arch].get(p, None):
+ overlap.comment += " # " + m.name + "." + arch +
': ' + m.solved_packages[arch][p] + "\n"
+ if self.solved_packages[arch].get(p, None):
+ overlap.comment += " # " + self.name + "." + arch
+ ': ' + self.solved_packages[arch][p] + "\n"
+ overlap.comment += ' - ' + p + "\n"
overlap._add_to_packages(p)
def collect_devel_packages(self):
@@ -1368,6 +1371,8 @@
self.unlink_list(None, spec_files)
else:
self.move_list(spec_files, release_dir)
+ inc_files = glob.glob(os.path.join(group_dir, '*.inc'))
+ self.move_list(inc_files, release_dir)
self.multibuild_from_glob(product_dir, '*.kiwi')
self.build_stub(product_dir, 'kiwi')
++++++ openSUSE-release-tools.obsinfo ++++++
--- /var/tmp/diff_new_pack.fYuj0k/_old 2018-06-25 11:41:46.594862979 +0200
+++ /var/tmp/diff_new_pack.fYuj0k/_new 2018-06-25 11:41:46.594862979 +0200
@@ -1,5 +1,5 @@
name: openSUSE-release-tools
-version: 20180620.d4172e6
-mtime: 1529527356
-commit: d4172e6aa799838e10d3e5eb04760d5126f8e35a
+version: 20180621.c38f9ca
+mtime: 1529597631
+commit: c38f9ca0e53780247104626148a88538fc2cba09