[med-svn] [Git][med-team/community/helper-scripts][master] Print "everything" that's wrong with testing and migration issues

Andreas Tille gitlab at salsa.debian.org
Sun Apr 19 11:36:35 BST 2020



Andreas Tille pushed to branch master at Debian Med / community / helper-scripts


Commits:
9d2f759e by Andreas Tille at 2020-04-19T12:36:07+02:00
Print "everything" that's wrong with testing and migration issues

- - - - -


1 changed file:

- seek_outdated_med-packages


Changes:

=====================================
seek_outdated_med-packages
=====================================
@@ -34,7 +34,7 @@ EOT
 
 echo >> $OUTFILE
 
-psql --host=public-udd-mirror.xvm.mit.edu --username=public-udd-mirror udd >> $OUTFILE <<EOT
+psql --port=5432 --host=public-udd-mirror.xvm.mit.edu --username=public-udd-mirror udd >> $OUTFILE <<EOT
   SELECT b.source AS "source                       ", id, -- status,
          severity, title FROM bugs b
   JOIN (SELECT source, maintainer_email FROM (
@@ -43,3 +43,96 @@ psql --host=public-udd-mirror.xvm.mit.edu --username=public-udd-mirror udd >> $O
   WHERE maintainer_email = 'debian-med-packaging at lists.alioth.debian.org' AND status != 'done'
   ORDER BY b.source, id;
 EOT
+
+echo >> $OUTFILE
+
+psql --port=5432 --host=public-udd-mirror.xvm.mit.edu --username=public-udd-mirror udd >> $OUTFILE <<EOT
+CREATE TEMPORARY VIEW autopkgtest_fail ( source, suite_arch, messages ) AS
+  SELECT source, suite_arch, messages FROM (
+    SELECT source, string_agg(suite_arch, ', ') AS suite_arch , array_agg(message) AS messages
+     FROM (
+       SELECT source, string_agg(suite || '_' || architecture, ', ') AS suite_arch , message
+         FROM autopkgtest
+         WHERE status = 'fail'
+         GROUP BY source, message
+     ) tmp1 GROUP BY source
+  ) tmp2
+  WHERE suite_arch LIKE '%testing%' OR suite_arch LIKE '%unstable%' ; -- Make sure not only neutral test in stable will raise a singnal here
+
+CREATE TEMPORARY VIEW autopkgtest_neutral ( source, suite_arch, messages ) AS
+  SELECT source, suite_arch, messages FROM (
+    SELECT source, string_agg(suite_arch, ', ') AS suite_arch , array_agg(message) AS messages
+     FROM (
+       SELECT source, string_agg(suite || '_' || architecture, ', ') AS suite_arch , message
+         FROM autopkgtest
+         WHERE status = 'neutral'
+         GROUP BY source, message
+     ) tmp1 GROUP BY source
+  ) tmp2
+  WHERE suite_arch LIKE '%testing%' OR suite_arch LIKE '%unstable%' ; -- Make sure not only neutral test in stable will raise a singnal here
+
+      SELECT DISTINCT p.source,
+             ci.status_agg,
+             CASE WHEN ts.testsuite IS NULL THEN 'missing' ELSE ts.testsuite END AS testsuite,
+             failci.suite_arch AS failed_suites_arch,
+             failci.messages   AS failed_messages,
+             neutralci.suite_arch AS neutral_suites_arch,
+             neutralci.messages   AS neutral_messages,
+             ar.version AS autoremoval_version, ar.bugs,
+             CAST (to_timestamp(ar.first_seen::numeric) AS date) AS first_seen,
+             CAST (to_timestamp(ar.last_checked::numeric) AS date) AS last_checked,
+             CAST (to_timestamp(ar.removal_time::numeric) AS date) AS removal,
+             rdeps AS autoremoval_rdeps, buggy_deps, bugs_deps, rdeps_popcon,
+             in_testing, testing_version, in_unstable, unstable_version, in_unstable-in_testing as days_to_migrate,
+             -- excuses
+             me.migration_policy_verdict,
+             me.old_version AS excuses_old_version, me.new_version AS excuses_new_version, me.is_candidate AS excuses_is_candidate,
+             me.reason, me.dependencies AS excuses_dependencies, me.invalidated_by_other_package,
+             -- piuparts
+             piu.piuparts_fail, piu.version AS piuparts_version
+        FROM packages p
+        -- begin tests
+        LEFT OUTER JOIN (SELECT source, array_agg(status) AS status_agg FROM (
+                            SELECT DISTINCT source, status FROM autopkgtest WHERE status != 'pass' AND suite IN ('testing', 'unstable')
+                        ) tmp GROUP BY source) ci ON p.source = ci.source
+        LEFT OUTER JOIN autopkgtest_fail failci ON p.source = failci.source
+        LEFT OUTER JOIN autopkgtest_neutral neutralci ON p.source = neutralci.source
+        LEFT OUTER JOIN (SELECT DISTINCT source, testsuite FROM sources WHERE release='sid') ts ON p.source = ts.source
+        LEFT OUTER JOIN (SELECT source, gui FROM (
+                            SELECT source, gui, row_number() OVER (PARTITION BY source ORDER BY gui DESC) FROM (
+                                SELECT DISTINCT p.package, p.source, gui FROM packages p LEFT JOIN (
+                                    SELECT package, 'gui' AS gui FROM debtags WHERE tag LIKE 'uitoolkit::%' OR tag LIKE '%x11%' GROUP BY package
+                                ) t ON p.package = t.package WHERE release ='sid' ) dt ) st WHERE row_number = 1) tags ON p.source = tags.source
+        -- end tests
+        LEFT OUTER JOIN testing_autoremovals ar ON p.source = ar.source
+        LEFT OUTER JOIN migrations m ON p.source = m.source
+        LEFT OUTER JOIN migration_excuses me ON p.source = me.source
+        LEFT OUTER JOIN (SELECT source, piuparts_fail, version FROM
+                          (SELECT array_agg(section) AS piuparts_fail, source, version, row_number() OVER (PARTITION BY source ORDER BY version DESC)
+                           FROM piuparts_status WHERE status = 'fail' GROUP BY version, source) tmp1 WHERE row_number = 1) piu ON p.source = piu.source
+        LEFT OUTER JOIN (SELECT package, array_agg(task) AS tasks FROM blends_dependencies WHERE blend = 'debian-med' GROUP BY package) t ON p.package = t.package
+        WHERE p.package IN (
+          SELECT package FROM blends_dependencies WHERE blend = 'debian-med'
+        )
+        AND 
+          ( removal_time IS NOT NULL
+            OR
+            testing_version != unstable_version
+            OR
+            (me.item_name != ''
+             AND
+             me.migration_policy_verdict not in ('PASS', 'REJECTED_TEMPORARILY')
+             AND
+             p.release = 'sid'
+            )
+            OR
+            piu.piuparts_fail IS NOT NULL
+            OR
+            ((ci.status_agg IS NOT NULL OR ts.testsuite IS NULL)
+              AND tags.gui IS NULL
+            )
+          )
+        AND p.release = 'sid'
+  ;
+EOT
+



View it on GitLab: https://salsa.debian.org/med-team/community/helper-scripts/-/commit/9d2f759ee4ab2a0b94998961198b3e5b965be976

-- 
View it on GitLab: https://salsa.debian.org/med-team/community/helper-scripts/-/commit/9d2f759ee4ab2a0b94998961198b3e5b965be976
You're receiving this email because of your account on salsa.debian.org.


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://alioth-lists.debian.net/pipermail/debian-med-commit/attachments/20200419/520ac399/attachment-0001.html>


More information about the debian-med-commit mailing list