Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Packit: Drop tests for obsoleted upgrade paths + restructuralisation #1176

Merged
merged 1 commit into from
Feb 21, 2024

Conversation

pirat89
Copy link
Member

@pirat89 pirat89 commented Feb 9, 2024

Dropping upgrade paths related to following releases: 8.6, 8.9, 9.0,
9.3. See the previous commit for more info.

During the drop of these release, I've realized the current structure
of tests is not suitable for such operations as current test/job
definitions has been chained. So e.g. tests for 8.10 -> 9.4 depended
on 8.9 -> 9.3, which depended on 8.8 -> 8.6, etc... Even going deeper,
IPU 8->9 definitions have been based on 7 -> 8 definitions.

So I updated the structure, separating tests for IPU 7 -> 8 and 8 -> 9
and also deps between all upgrade paths. Now, particular tests
can inherit one of abstract jobs definitions, so dropping or removing
tests for an upgrade path does not affect other tests.

Also fixed some incorrect definitions in tests, like a fixed label
for beaker-minimal-88to92 (orig "8.6to9.2").

Update welcome-PR bot msg to reflect changes in upgrade paths.

Jira: OAMG-10451

Copy link

Failed to load packit config file:

Cannot parse package config. ValidationError({'jobs': {3: {'trigger': ['Missing data for required field.']}, 4: {'trigger': ['Missing data for required field.']}, 5: {'trigger': ['Missing data for required field.']}, 6: {'trigger': ['Missing data for required field.']}, 9: {'trigger': ['Missing data for required field.']}, 10: {'trigger': ['Missing data for required field.']}, 12: {'trigger': ['Missing data for required field.']}, 13: {'trigger': ['Missing data for required field.']}, 14: {'trigger': ['Missing data for required field.']}, 15: {'trigger': ['Missing data for required field.']}, 16: {'trigger': ['Missing data for required field.']}, 17: {'trigger': ['Missing data for required field.']}, 18: {'trigger': ['Missing data for required field.']}, 19: {'trigger': ['Missing data for required field.']}, 20: {'trigger': ['Missing data for required field.']}, 21: {'trigger': ['Missing data for required field.']}, 22: {'trigger': ['Missing data for required field.']}, 23: {'trigger': ['Missing data for required field.']}, 24: {'trigger': ['Missing data for required field.']}}})

For more info, please check out the documentation or contact the Packit team. You can also use our CLI command validate-config or our pre-commit hooks for validation of the configuration.

2 similar comments
Copy link

Failed to load packit config file:

Cannot parse package config. ValidationError({'jobs': {3: {'trigger': ['Missing data for required field.']}, 4: {'trigger': ['Missing data for required field.']}, 5: {'trigger': ['Missing data for required field.']}, 6: {'trigger': ['Missing data for required field.']}, 9: {'trigger': ['Missing data for required field.']}, 10: {'trigger': ['Missing data for required field.']}, 12: {'trigger': ['Missing data for required field.']}, 13: {'trigger': ['Missing data for required field.']}, 14: {'trigger': ['Missing data for required field.']}, 15: {'trigger': ['Missing data for required field.']}, 16: {'trigger': ['Missing data for required field.']}, 17: {'trigger': ['Missing data for required field.']}, 18: {'trigger': ['Missing data for required field.']}, 19: {'trigger': ['Missing data for required field.']}, 20: {'trigger': ['Missing data for required field.']}, 21: {'trigger': ['Missing data for required field.']}, 22: {'trigger': ['Missing data for required field.']}, 23: {'trigger': ['Missing data for required field.']}, 24: {'trigger': ['Missing data for required field.']}}})

For more info, please check out the documentation or contact the Packit team. You can also use our CLI command validate-config or our pre-commit hooks for validation of the configuration.

Copy link

Failed to load packit config file:

Cannot parse package config. ValidationError({'jobs': {3: {'trigger': ['Missing data for required field.']}, 4: {'trigger': ['Missing data for required field.']}, 5: {'trigger': ['Missing data for required field.']}, 6: {'trigger': ['Missing data for required field.']}, 9: {'trigger': ['Missing data for required field.']}, 10: {'trigger': ['Missing data for required field.']}, 12: {'trigger': ['Missing data for required field.']}, 13: {'trigger': ['Missing data for required field.']}, 14: {'trigger': ['Missing data for required field.']}, 15: {'trigger': ['Missing data for required field.']}, 16: {'trigger': ['Missing data for required field.']}, 17: {'trigger': ['Missing data for required field.']}, 18: {'trigger': ['Missing data for required field.']}, 19: {'trigger': ['Missing data for required field.']}, 20: {'trigger': ['Missing data for required field.']}, 21: {'trigger': ['Missing data for required field.']}, 22: {'trigger': ['Missing data for required field.']}, 23: {'trigger': ['Missing data for required field.']}, 24: {'trigger': ['Missing data for required field.']}}})

For more info, please check out the documentation or contact the Packit team. You can also use our CLI command validate-config or our pre-commit hooks for validation of the configuration.

Copy link

github-actions bot commented Feb 9, 2024

Thank you for contributing to the Leapp project!

Please note that every PR needs to comply with the Leapp Guidelines and must pass all tests in order to be mergeable.
If you want to request a review or rebuild a package in copr, you can use following commands as a comment:

  • review please @oamg/developers to notify leapp developers of the review request
  • /packit copr-build to submit a public copr build using packit

Packit will automatically schedule regression tests for this PR's build and latest upstream leapp build. If you need a different version of leapp from PR#42, use /packit test oamg/leapp#42

It is possible to schedule specific on-demand tests as well. Currently 2 test sets are supported, beaker-minimal and kernel-rt, both can be used to be run on all upgrade paths or just a couple of specific ones.
To launch on-demand tests with packit:

  • /packit test --labels kernel-rt to schedule kernel-rt tests set for all upgrade paths
  • /packit test --labels beaker-minimal-8.9to9.3,kernel-rt-8.9to9.3 to schedule kernel-rt and beaker-minimal test sets for 8.9->9.3 upgrade path

[Deprecated] To launch on-demand regression testing public members of oamg organization can leave the following comment:

  • /rerun to schedule basic regression tests using this pr build and latest upstream leapp build as artifacts
  • /rerun 42 to schedule basic regression tests using this pr build and leapp*PR42* as artifacts
  • /rerun-sst to schedule sst tests using this pr build and latest upstream leapp build as artifacts
  • /rerun-sst 42 to schedule sst tests using this pr build and leapp*PR42* as artifacts

Please open ticket in case you experience technical problem with the CI. (RH internal only)

Note: In case there are problems with tests not being triggered automatically on new PR/commit or pending for a long time, please contact leapp-infra.

@pirat89
Copy link
Member Author

pirat89 commented Feb 9, 2024

@oamg/developers blocked by packit/packit#2231. Discussed with @lbarcziova, we will wait for the Packit decision around this functionality. Most likely, it will need still some changes, but waiting with them until we know whether & how this will be implemented in Packit.

@pirat89 pirat89 mentioned this pull request Feb 9, 2024
@pirat89
Copy link
Member Author

pirat89 commented Feb 13, 2024

/packit test

Copy link

Failed to load packit config file:

Cannot parse package config. ValidationError({'jobs': {3: {'trigger': ['Missing data for required field.']}, 4: {'trigger': ['Missing data for required field.']}, 5: {'trigger': ['Missing data for required field.']}, 6: {'trigger': ['Missing data for required field.']}, 9: {'trigger': ['Missing data for required field.']}, 10: {'trigger': ['Missing data for required field.']}, 12: {'trigger': ['Missing data for required field.']}, 13: {'trigger': ['Missing data for required field.']}, 14: {'trigger': ['Missing data for required field.']}, 15: {'trigger': ['Missing data for required field.']}, 16: {'trigger': ['Missing data for required field.']}, 17: {'trigger': ['Missing data for required field.']}, 18: {'trigger': ['Missing data for required field.']}, 19: {'trigger': ['Missing data for required field.']}, 20: {'trigger': ['Missing data for required field.']}, 21: {'trigger': ['Missing data for required field.']}, 22: {'trigger': ['Missing data for required field.']}, 23: {'trigger': ['Missing data for required field.']}, 24: {'trigger': ['Missing data for required field.']}}})

For more info, please check out the documentation or contact the Packit team. You can also use our CLI command validate-config or our pre-commit hooks for validation of the configuration.

2 similar comments
Copy link

Failed to load packit config file:

Cannot parse package config. ValidationError({'jobs': {3: {'trigger': ['Missing data for required field.']}, 4: {'trigger': ['Missing data for required field.']}, 5: {'trigger': ['Missing data for required field.']}, 6: {'trigger': ['Missing data for required field.']}, 9: {'trigger': ['Missing data for required field.']}, 10: {'trigger': ['Missing data for required field.']}, 12: {'trigger': ['Missing data for required field.']}, 13: {'trigger': ['Missing data for required field.']}, 14: {'trigger': ['Missing data for required field.']}, 15: {'trigger': ['Missing data for required field.']}, 16: {'trigger': ['Missing data for required field.']}, 17: {'trigger': ['Missing data for required field.']}, 18: {'trigger': ['Missing data for required field.']}, 19: {'trigger': ['Missing data for required field.']}, 20: {'trigger': ['Missing data for required field.']}, 21: {'trigger': ['Missing data for required field.']}, 22: {'trigger': ['Missing data for required field.']}, 23: {'trigger': ['Missing data for required field.']}, 24: {'trigger': ['Missing data for required field.']}}})

For more info, please check out the documentation or contact the Packit team. You can also use our CLI command validate-config or our pre-commit hooks for validation of the configuration.

Copy link

Failed to load packit config file:

Cannot parse package config. ValidationError({'jobs': {3: {'trigger': ['Missing data for required field.']}, 4: {'trigger': ['Missing data for required field.']}, 5: {'trigger': ['Missing data for required field.']}, 6: {'trigger': ['Missing data for required field.']}, 9: {'trigger': ['Missing data for required field.']}, 10: {'trigger': ['Missing data for required field.']}, 12: {'trigger': ['Missing data for required field.']}, 13: {'trigger': ['Missing data for required field.']}, 14: {'trigger': ['Missing data for required field.']}, 15: {'trigger': ['Missing data for required field.']}, 16: {'trigger': ['Missing data for required field.']}, 17: {'trigger': ['Missing data for required field.']}, 18: {'trigger': ['Missing data for required field.']}, 19: {'trigger': ['Missing data for required field.']}, 20: {'trigger': ['Missing data for required field.']}, 21: {'trigger': ['Missing data for required field.']}, 22: {'trigger': ['Missing data for required field.']}, 23: {'trigger': ['Missing data for required field.']}, 24: {'trigger': ['Missing data for required field.']}}})

For more info, please check out the documentation or contact the Packit team. You can also use our CLI command validate-config or our pre-commit hooks for validation of the configuration.

@pirat89 pirat89 force-pushed the update-packit-tests branch from 39d6465 to fad2a56 Compare February 13, 2024 16:28
@pirat89 pirat89 marked this pull request as ready for review February 13, 2024 16:37
@pirat89 pirat89 added the changelog-checked The merger/reviewer checked the changelog draft document and updated it when relevant label Feb 13, 2024
@pirat89 pirat89 requested review from fernflower and a team February 13, 2024 16:55
@pirat89
Copy link
Member Author

pirat89 commented Feb 13, 2024

@oamg/developers @fernflower works now as expected. review it please and let me know if you want some changes here.

@fernflower
Copy link
Member

/packit test --labels beaker-minimal-8.9to9.3,

@fernflower
Copy link
Member

/packit test --labels beaker-minimal-8.9to9.3

@fernflower
Copy link
Member

/packit test --labels kernel-rt-8.9to9.3

@fernflower
Copy link
Member

The on-demand scheduling of tests doesn't work anymore unfortunately.
Before the refactoring select tests would be rescheduled with "/packit test --labels kernel-rt-8.9to9.3" command. For example I ran it on #1178 and got exactly one test rerun.
image

Copy link
Member

@fernflower fernflower left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The on-demand test scheduling is broken :(
Not sure if the brand new feature of abstract job templates has to do with this but this would be my №1 suspect.

@pirat89
Copy link
Member Author

pirat89 commented Feb 19, 2024

@fernflower please read again the description of the PR. The results seems to me expected. 8.9 -> 9.3 is not a valid label nor upgrade path anymore. the #1178 PR is not rebased against up-to-date master, so there are still defined obsoleted upgrade paths (https://github.com/MichalHe/leapp-repository/blob/rhui_disable_bootstrap_on_aws/repos/system_upgrade/common/files/upgrade_paths.json)

@fernflower
Copy link
Member

/packit test --labels beaker-minimal-8.10to9.4

@fernflower
Copy link
Member

Hmm @pirat89 tried beaker-minimal-8.10to9.4 and still nothing scheduled. What am I doing wrong?

@pirat89
Copy link
Member Author

pirat89 commented Feb 19, 2024

@fernflower seems it was just a longer queue in Packit service. I see it's in progress now:

testing-farm:RHEL-8.10.0-Nightly-x86_64:sanity-8.10to9.4-beaker-minimal-ondemand In progress — Tests have been submitted ...

.packit.yaml Outdated Show resolved Hide resolved
.packit.yaml Outdated Show resolved Hide resolved
.packit.yaml Outdated Show resolved Hide resolved
.packit.yaml Show resolved Hide resolved
.packit.yaml Outdated Show resolved Hide resolved
.packit.yaml Show resolved Hide resolved
.packit.yaml Show resolved Hide resolved
.packit.yaml Show resolved Hide resolved
@fernflower
Copy link
Member

Also I see Fixed some incorrect definitions in the commit message - could you please elaborate what exactly was wrong and how it was changed?

@fernflower
Copy link
Member

/packit test --labels kernel-rt-8.10to9.4

@fernflower
Copy link
Member

fernflower commented Feb 20, 2024

Please also change the example of on-demand packit testing invocation in welcome bot https://github.com/oamg/leapp-repository/blob/master/.github/workflows/pr-welcome-msg.yml#L32

@pirat89
Copy link
Member Author

pirat89 commented Feb 20, 2024

Also I see Fixed some incorrect definitions in the commit message - could you please elaborate what exactly was wrong and how it was changed?

e.g. beaker-minimal-88to92 had label 8.6to9.2. not sure whether it was only error or whether there were other, but this one I remember well.

@pirat89
Copy link
Member Author

pirat89 commented Feb 20, 2024

Please also change the example of on-demand packit testing invocation in welcome bot https://github.com/oamg/leapp-repository/blob/master/.github/workflows/pr-welcome-msg.yml#L32

Good point! I think it's also time to drop obsoleted commands.

@pirat89 pirat89 force-pushed the update-packit-tests branch from aca6b51 to 7053d8c Compare February 20, 2024 15:32
@pirat89 pirat89 requested a review from fernflower February 20, 2024 15:58
Copy link
Member

@fernflower fernflower left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, some nits.
Please squash commits, fix spelling s/restructuralisation/restruacturalization, add details about fixed incorrect definitions (if you fixed a label - put it there clearly that you have fixed an incorrect label for beaker tests, otherwise the comment is not helping at all).
Thank you!

.github/workflows/pr-welcome-msg.yml Outdated Show resolved Hide resolved
Dropping upgrade paths related to following releases: 8.6, 8.9, 9.0,
9.3. See the previous commit for more info.

During the drop of these release, I've realized the current structure
of tests is not suitable for such operations as current test/job
definitions has been chained. So e.g. tests for 8.10 -> 9.4 depended
on 8.9 -> 9.3, which depended on 8.8 -> 8.6, etc... Even going deeper,
IPU 8->9 definitions have been based on 7 -> 8 definitions.

So I updated the structure, separating tests for IPU 7 -> 8 and 8 -> 9
and also deps between all upgrade paths. Now, particular tests
can inherit one of *abstract* jobs definitions, so dropping or removing
tests for an upgrade path does not affect other tests.

Also fixed some incorrect definitions in tests, like a fixed label
for `beaker-minimal-88to92` (orig "8.6to9.2").

Update welcome-PR bot msg to reflect changes in upgrade paths.

Jira: OAMG-10451
@pirat89 pirat89 force-pushed the update-packit-tests branch from 7053d8c to 23be222 Compare February 21, 2024 12:54
@pirat89
Copy link
Member Author

pirat89 commented Feb 21, 2024

@fernflower done :)

@pirat89 pirat89 merged commit b875ae2 into oamg:master Feb 21, 2024
13 of 23 checks passed
@pirat89 pirat89 deleted the update-packit-tests branch February 21, 2024 14:10
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
changelog-checked The merger/reviewer checked the changelog draft document and updated it when relevant
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants