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

QE: Multiple test framework refactors #9181

Merged
merged 21 commits into from
Sep 12, 2024
Merged

QE: Multiple test framework refactors #9181

merged 21 commits into from
Sep 12, 2024

Conversation

nodeg
Copy link
Member

@nodeg nodeg commented Aug 20, 2024

⚠️ ⚠️ ⚠️
Please don't squash commits. This is a special branch that combine multiple refactors, so we prefer to keep a commit per PR merged into this branch, to facilitate navigating over the reasons for each change.
⚠️ ⚠️ ⚠️

Prerequisites before merging this

What does this PR change?

TODOs

  • include fixes for the GitHub Actions PR tests for using Ruby 3
  • ...

GUI diff

No difference.

  • DONE

Documentation

  • No documentation needed: only internal and user invisible changes
  • DONE

Test coverage

  • Cucumber tests were edited
  • DONE

Links

Issue(s): #
Ports(s): #

  • DONE

Changelogs

Make sure the changelogs entries you are adding are compliant with https://github.com/uyuni-project/uyuni/wiki/Contributing#changelogs and https://github.com/uyuni-project/uyuni/wiki/Contributing#uyuni-projectuyuni-repository

If you don't need a changelog check, please mark this checkbox:

  • No changelog needed

If you uncheck the checkbox after the PR is created, you will need to re-run changelog_test (see below)

Re-run a test

If you need to re-run a test, please mark the related checkbox, it will be unchecked automatically once it has re-run:

  • Re-run test "changelog_test"
  • Re-run test "backend_unittests_pgsql"
  • Re-run test "java_lint_checkstyle"
  • Re-run test "java_pgsql_tests"
  • Re-run test "schema_migration_test_pgsql"
  • Re-run test "susemanager_unittests"
  • Re-run test "javascript_lint"
  • Re-run test "spacecmd_unittests"

Before you merge

Check How to branch and merge properly!

Copy link
Contributor

👋 Hello! Thanks for contributing to our project.
Acceptance tests will take some time (aprox. 1h), please be patient ☕
You can see the progress at the end of this page and at https://github.com/uyuni-project/uyuni/pull/9181/checks
Once tests finish, if they fail, you can check 👀 the cucumber report. See the link at the output of the action.
You can also check the artifacts section, which contains the logs at https://github.com/uyuni-project/uyuni/pull/9181/checks.

If you are unsure the failing tests are related to your code, you can check the "reference jobs". These are jobs that run on a scheduled time with code from master. If they fail for the same reason as your build, it means the tests or the infrastructure are broken. If they do not fail, but yours do, it means it is related to your code.

Reference tests:

KNOWN ISSUES

Sometimes the build can fail when pulling new jar files from download.opensuse.org . This is a known limitation. Given this happens rarely, when it does, all you need to do is rerun the test. Sorry for the inconvenience.

For more tips on troubleshooting, see the troubleshooting guide.

Happy hacking!
⚠️ You should not merge if acceptance tests fail to pass. ⚠️

vandabarata
vandabarata previously approved these changes Aug 20, 2024
Copy link
Contributor

@vandabarata vandabarata left a comment

Choose a reason for hiding this comment

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

Thank you so much for all this work

@srbarrios srbarrios marked this pull request as draft August 20, 2024 10:22
@srbarrios
Copy link
Member

⚠️
Please let's keep it as draft, until master is unlock.
As this PR will contain the combination of multiple PRs merged into qe-develop branch.

@nodeg
Copy link
Member Author

nodeg commented Aug 20, 2024

GitHub PR acceptance tests:

Run ./testsuite/podman_runner/05_install_gems_in_controller.sh
+ sudo -i podman exec controller bash -c 'export GEM_PATH="/usr/lib64/ruby/gems/3.3.0"'
+ sudo -i podman exec controller bash -c 'cd /testsuite && bundle.ruby3.3 install --gemfile Gemfile --verbose'
bash: bundle.ruby3.3: command not found

For this to work, we need to update the controller container. However, this is not possible in this PR and would also affect the all other PRs. So for now, we cannot rely on the PR tests here.
I did run them in my fork, where

image

@nodeg
Copy link
Member Author

nodeg commented Aug 20, 2024

Ok, so with the changes as of now, we have one error:
image
image

image

I will force push again so that the controller container will get updated only under certain conditions and not for every push to this PR like it is now.

@nodeg
Copy link
Member Author

nodeg commented Aug 22, 2024

Rebase done.

@nodeg
Copy link
Member Author

nodeg commented Aug 22, 2024

Another rebase to include mcs test suite fixes.

@nodeg nodeg force-pushed the qe-develop branch 3 times, most recently from f8a8955 to 797fbd9 Compare September 9, 2024 11:54
@srbarrios srbarrios marked this pull request as ready for review September 12, 2024 09:08
nodeg and others added 21 commits September 12, 2024 12:34
Fixes SUSE/spacewalk#17431

Signed-off-by: Dominik Gedon <dominik.gedon@suse.com>
…ary_parallelizable.yml in CI (#5743)

* Using a new user per feature

* Removing refactors made to enable parallel tests, moved to this branch qe-refactor-enabling-parallel-tests

* Updating the Copyright year
Signed-off-by: Dominik Gedon <dominik.gedon@suse.com>
Signed-off-by: Dominik Gedon <dominik.gedon@suse.com>
… libraries (#9160)

* Refactor the communication with external machines using Ruby built-in libraries

* Fix small issues in RemoteNode

* Remove Twopence from GH Tests controller image

* Remaining issues moving to RemoteNode

* Update rubocop rules

* Fix issues in RemoteNode
Signed-off-by: Dominik Gedon <dominik.gedon@suse.com>
`net-ssh` does not support Ruby > 3.1, yet.

Signed-off-by: Dominik Gedon <dominik.gedon@suse.com>
…ommand (#9224)

* Handling a reboot of a remote node through net-ssh

* Fix scp method
* Force API protocol through a new environment variable

* Fix how we handle exit code from a ssh call

* Remove not used steps

* Refactor some missing Twopence method calls

* Prevent a nil exception
Signed-off-by: Dominik Gedon <dominik.gedon@suse.com>
@srbarrios srbarrios added the merge-candidate Meaning it needs to be considered for merging when the master branch is frozen label Sep 12, 2024
@deneb-alpha deneb-alpha merged commit d3c3f78 into master Sep 12, 2024
17 checks passed
@deneb-alpha deneb-alpha deleted the qe-develop branch September 12, 2024 13:05
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants