Project

General

Profile

Actions

coordination #96596

open

[qe-core][CI] CI/CD and Coding style improvements

Added by szarate over 2 years ago. Updated about 2 months ago.

Status:
Blocked
Priority:
Normal
Assignee:
Category:
Infrastructure
Target version:
Start date:
2021-08-09
Due date:
% Done:

52%

Estimated time:
(Total: 0.00 h)
Difficulty:
Sprint:
QE-Core: October Sprint 23 (Oct 11 - Nov 08)

Description

Story

As a code reviewer I would like the CI to do menial checks so that I can focus on bigger details and be more effective with my work.

Background

Often when doing the reviews on GH, reviewers tend to mention when:

  • File header not being updated
  • File without summary and mantainer field
    • Create a mantainer list and only allow a person to be mantainer in a module, if they're in such MANTAINERS
  • Syntax checkers for coding style
    • Things like if check_var('ARCH') instead of is_aarch64 being wildly used, When there is Utils::Architectures::is_aarch64. When finding the check_var syntax, propose the aforementioned function
    • Things like if check_var('BACKEND', 'qemu') instead of is_qemu being wildly used, When there are Utils::Backends::is_qemu. When finding the check_var syntax, propose the aforementioned function.
    • Mix between my $self = shift and my ($self) = @_, the proposal would be to stick to my ($self) = @_
  • Failures in the tidy checks that are often hard to find (Meaning, can we get comments on the offending lines?), which can be maybe generic enough to help with other parts of automated review.
  • Know which jobs would be possibly affected by certain code changes
    • Adding openqa-module-mapper in the current state, display last 20 jobs that are related to the changes in the PR.

AC's for feach item

  • AC1: Each subtask is proposed as an RFC in the os-autoinst-distri-opensuse repo.
  • AC2: There's a corresponding entry in the contributing document.

For syntax checking (check_var, get_var, script.*zypper... etc)

  • Create a hash table in yaml, json, xml, CORBA, toml, $MARKUPLANGUAGE to check with a regex for a syntax that when matching, would propose a suggestion.
  • Use etherpad.nue.suse.com/qe-core-proposed-syntax-checks to add the proposals.

Subtasks 24 (11 open13 closed)

action #96675: [qe-core] Add CI check preventing obsolete use of `check_var('VAR')Resolveddvenkatachala2021-08-09

Actions
action #96716: [qe-core][CI] Add CI check for module header not being updatedResolvedpunkioudi2021-08-10

Actions
action #97097: [qe-core][CI] Add syntax checkers to the CI to verify the parameter parsing (move away from my $self = shift)New2021-08-18

Actions
action #115343: [qe-core] os-autoinst-distri-opensuse checks for record_soft_failure without valid reference is ineffectiveResolvedrfan12022-10-11

Actions
action #117835: [qe-core] add some exceptions for `record_soft_fail` to check effective reference ticketsResolvedrfan12022-10-11

Actions
action #117118: [qe-core] CI/CD and Coding style improvements - Forbid usage of fgrep and egrepResolvedVANASTASIADIS2022-09-23

Actions
action #118582: [qe-core][CI][timeboxed:24h] Provide automated feedback on PR's when one or more checks failRejectedVANASTASIADIS2022-10-13

Actions
action #118588: [qe-core][CI] Anotate output when there are code violations on github's PR.Resolvedpdostal2022-10-13

Actions
action #121432: [qe-core][opensuse-jobgroups] CI does not support 'deleting a yaml file'.ResolvedVANASTASIADIS2022-12-05

Actions
action #122923: [qe-core][CI] Hide passing check messages from the CI logsResolvedrfan12022-10-13

Actions
action #124688: [qe-core] Reduce execution of compile testsBlockedrfan12023-02-16

Actions
action #126518: [qe-core] Metadata check does not show up on GH like tidy (for instance) doesNew2023-03-23

Actions
action #137489: [qe-core] Perl Tidy updates should announce when package is available on FactoryBlocked2023-10-05

Actions
openQA Project - action #138416: Unify GitHub Actions for QA Projects size:MResolvedybonatakis2023-10-24

Actions
action #138521: [qe-core] Add line number to perlpod so its easier to parse the outputNew2023-10-25

Actions
action #138539: [qe-core] Explore codeowners feature and automated merging of PR once team approvesNew2023-10-25

Actions
action #138542: [qe-core] Automate checks to avoid security concernsNew2023-10-25

Actions
openQA Project - action #138674: Reusable github workflow in openQA is causing a problem for os-autoinst-bot dependency PRResolvedtinita2023-10-24

Actions
action #151675: [qe-core] CI/CD gitlab forks should not deploy to OSD Resolvedamanzini2023-11-29

Actions
action #153805: [qe-core] Implement checks so that tests that don't use assert_screen, use use serial console insteadIn Progresscvidot2024-01-17

Actions
openQA Project - action #155062: Unify GitHub Actions for QA Projects - perltidy in os-autoinst size:MResolvedtinita2023-10-24

Actions
openQA Project - action #155065: Unify GitHub Actions for QA Projects - use as many common static checks within all os-autoinst repos as possibleNew

Actions
openQA Project - action #155188: Unify GitHub Actions for QA Projects - perltidy&perlcritic in openQANew2023-10-24

Actions
openQA Project - action #155191: Unify GitHub Actions for QA Projects - perlcritic in os-autoinstNew2023-10-24

Actions

Related issues 3 (2 open1 closed)

Related to openQA Tests - action #51230: [qe-core][functional] Unify all usages of systemctlBlocked2019-05-07

Actions
Related to openQA Tests - action #116599: [qe-core] SCC regcodes leaking mitigation - wheels fail in CI Compile checks when enabledResolveddheidler2022-09-15

Actions
Related to openQA Tests - action #95161: [qe-core][epic] Implement automated checks to help code reviewers know when the test case summary should be updatedNewszarate2021-08-09

Actions
Actions

Also available in: Atom PDF