Project

General

Profile

Actions

action #128087

closed

coordination #127031: [saga][epic] openQA for SUSE customers

coordination #127028: [epic] openQA on SLE+packagehub

Regular cleanup of OBS project devel:openQA:* size:M

Added by tinita over 1 year ago. Updated about 1 year ago.

Status:
Resolved
Priority:
Normal
Assignee:
Category:
Feature requests
Target version:
Start date:
Due date:
% Done:

0%

Estimated time:

Description

Motivation

See #127883

Acceptance Criteria

  • AC1: Projects in devel:openQA:* are in a known, clean state
  • AC2: For each package (link) in in devel:openQA:Leap:* we can understand why we have it there and what needs to be done to not need to maintain that package link anymore
  • AC3: We are notified if there's a package with a link without a reason

Suggestions

  • Use the comment feature to add information to every linked package why we need it, which version we need and possibly a related ticket.
  • Drop links which we don't have a reason to keep
  • Drop links considered obsolete
  • Automatically scan packages for comments to check that we're not missing any, e.g.
    • Check out https://api.opensuse.org/apidocs/index#/Comments/get_comments_package__project_name___package_name_
    • curl on the API to list all packages in each Leap:* repo, for each grep comments for "Reason for linking", fail if not found
    • We could use osc or read-only API, first script solution: for pkg in $(osc list devel:openQA:Leap:15.5); do osc comment list package devel:openQA:Leap:15.4 $pkg | grep -q 'Reason for linking' && continue; echo "package $pkg is missing reason for linking" && false; done
    • osc api /source/devel:openQA:Leap:15.5/perl-Perl-Tidy/_meta
    • osc api /source/devel:openQA:Leap:15.5/
    • Ask in #help-obs

Related issues 2 (0 open2 closed)

Related to openQA Infrastructure - action #156049: [alert] Scripts CI pipeline failing with No reason for devel:openQA:Leap:15.6/local-npm-registryResolvedjbaier_cz

Actions
Copied from openQA Project - action #127883: Cleanup OBS project devel:openQA:Leap:15.4Resolvedtinita2023-04-18

Actions
Actions #1

Updated by tinita over 1 year ago

  • Copied from action #127883: Cleanup OBS project devel:openQA:Leap:15.4 added
Actions #2

Updated by okurz over 1 year ago

  • Description updated (diff)
Actions #3

Updated by okurz about 1 year ago

  • Due date deleted (2023-10-06)
  • Target version changed from future to Tools - Next
Actions #4

Updated by tinita about 1 year ago

  • Description updated (diff)
Actions #5

Updated by okurz about 1 year ago

  • Target version changed from Tools - Next to Ready
Actions #6

Updated by livdywan about 1 year ago

  • Subject changed from Regular cleanup of OBS project devel:openQA:Leap:15.4 to Regular cleanup of OBS project devel:openQA:* size:M
  • Description updated (diff)
  • Status changed from New to Workable
Actions #7

Updated by jbaier_cz about 1 year ago

  • Assignee set to jbaier_cz
Actions #8

Updated by jbaier_cz about 1 year ago

  • Description updated (diff)
  • Status changed from Workable to In Progress

For AC3, I created a simple script to check all package comments and to look for "Reason for linking". The script outputs the problematic packages or return 0 on success, so it can be easily used in some CI checks.

PR: https://github.com/os-autoinst/scripts/pull/269

Actions #9

Updated by openqa_review about 1 year ago

  • Due date set to 2023-11-07

Setting due date based on mean cycle time of SUSE QE Tools

Actions #10

Updated by jbaier_cz about 1 year ago

We discussed briefly and decided to deploy the script inside Gitlab pipeline. There was a question if we can do that without involving containers (as we had some issues with the OBS container repository recently). Unfortunately, there is no longer a shared runner with Leap (or Tumbleweed) anymore and even the rest of the available runners are deployed via containers IBS.

Actions #11

Updated by jbaier_cz about 1 year ago

I created a new project in Gitlab with some basic settings (CI enabled, e-mail notification upon failure). Inside my first PR https://gitlab.suse.de/openqa/scripts/-/merge_requests/1, there is basic template for running a scheduled job (the schedule is created but not yet enabled). With this, we should be able to run arbitrary script from that repository. The pipeline is running inside Tumbleweed container with preinstalled os-autoinst-scripts-deps.

Actions #12

Updated by livdywan about 1 year ago

jbaier_cz wrote in #note-11:

I created a new project in Gitlab with some basic settings (CI enabled, e-mail notification upon failure). Inside my first PR https://gitlab.suse.de/openqa/scripts/-/merge_requests/1, there is basic template for running a scheduled job (the schedule is created but not yet enabled). With this, we should be able to run arbitrary script from that repository. The pipeline is running inside Tumbleweed container with preinstalled os-autoinst-scripts-deps.

Is it too late to rename it? We already have two repos called scripts that are easy to mix up...

Actions #13

Updated by jbaier_cz about 1 year ago

livdywan wrote in #note-12:

Is it too late to rename it? We already have two repos called scripts that are easy to mix up...

It is never late to rename a repo if we have a better name... What is the other scripts repo though? Or do you mean os-autoinst/scripts? I choose the same name on purpose as it basically just runs scripts from that repo.

Actions #14

Updated by okurz about 1 year ago

How about scripts-ci to tell that we don't maintain the scripts in there

Actions #15

Updated by jbaier_cz about 1 year ago

I like that, so the new repository is now located at https://gitlab.suse.de/openqa/scripts-ci

Actions #16

Updated by jbaier_cz about 1 year ago

I reused information from #128651 to prune the package list a little bit. If there are no objections, on Monday I will do osc deleterequest on the following:

  • perl-Cpanel-JSON-XS
  • perl-Inline-Python
  • perl-MCE
  • perl-Mojo-IOLoop-ReadWriteProcess
  • perl-YAML-LibYAML-API
  • tesseract-ocr

I am also tempted to delete perl-Selenium-Remote-Driver as the Leap version and Factory version are identical.

All other packages are commented with a reason which should conclude AC2.

Actions #17

Updated by jbaier_cz about 1 year ago

I created a bunch of delete request. A few days ago, some of our python dependencies was updated so I could even delete them as well.

Actions #18

Updated by jbaier_cz about 1 year ago

  • Due date deleted (2023-11-07)
  • Status changed from In Progress to Resolved

MR merged, pipeline schedule activated. The first run is green. With that, I assume all ACs are met.

Actions #19

Updated by okurz about 1 year ago

  • Status changed from Resolved to Workable
Actions #20

Updated by jbaier_cz about 1 year ago

okurz wrote in #note-19:

Two more things please:

Good idea, will do.

Actions #21

Updated by jbaier_cz about 1 year ago

  • Status changed from Workable to In Progress
Actions #23

Updated by jbaier_cz 9 months ago

  • Related to action #156049: [alert] Scripts CI pipeline failing with No reason for devel:openQA:Leap:15.6/local-npm-registry added
Actions

Also available in: Atom PDF