Project

General

Profile

action #93600

[sle][migration][sle15sp4] Automation - set file system besides the default file system

Added by leli 4 months ago. Updated about 1 month ago.

Status:
Resolved
Priority:
Normal
Assignee:
Category:
New test
Target version:
-
Start date:
2021-06-08
Due date:
% Done:

100%

Estimated time:
20.00 h
Difficulty:

Description

This is a new test scenario, the idea is to set a different file system such as xfs,ext4 etc. besides the btrfs during the installation of base system, so this will be added on z/VM and spvm chained job.

History

#1 Updated by coolgw 3 months ago

  • Assignee set to coolgw

#2 Updated by coolgw 3 months ago

https://openqa.suse.de/tests/6416296#step/partitioning/3 failed when try using setting PARTITION_EDIT ext4_btrfs

#3 Updated by coolgw 3 months ago

  • Assignee deleted (coolgw)

#4 Updated by leli 3 months ago

  • Status changed from New to In Progress
  • Assignee set to leli
  • % Done changed from 0 to 10

Create a needle for ext4 filesystem on /.

Wait https://openqa.suse.de/tests/6491122#live to verify.

#5 Updated by leli 3 months ago

  • % Done changed from 10 to 30

Create a branch to allow user to set filesystem

Wait http://openqa.nue.suse.com/tests/6491194#live

#6 Updated by leli 3 months ago

Verify whether this works on x86_64, wait https://openqa.suse.de/tests/6505839#

#8 Updated by leli 3 months ago

  • % Done changed from 30 to 50

#9 Updated by leli 3 months ago

From the suggestion from QE-yast team, we shouldn't use the needle any more, we need add the new setup_libyui and set corresponding test_data.

#############################################################

Joaquín Rivera JERiveraMoya
3:28 PM
Hi Lemon, we don't use this test module anymore (or if we use we are getting rid off in most of the test suites). We try to avoid to use needles or new settings at all cost. So I can only recommend you to use our existing code for guided partitioning:
https://openqa.suse.de/tests/6518899#step/guided_setup/1
https://openqa.suse.de/tests/6518935#step/guided_setup/1

leli
Lemon leli
3:29 PM
Ok, I will have a look, thanks.

Joaquín Rivera JERiveraMoya
3:32 PM
don't hesitate to ask, probably you just need to configure the test suite with right schedule 'setup_libyui' and in general mimic for example what is in https://openqa.suse.de/tests/6518899/settings/schedule/yast/ext4/ext4@yast.yaml with the test data you need.

leli
Lemon leli
3:34 PM
Maybe, but the test is based on functional create_hdd job, we just follow the process.

Joaquín Rivera JERiveraMoya
3:36 PM
it is an installation from scratch, it is not like you boot the hdd, you can have exactly the same schedule except for that test module that I mentioned and the one new to change the file system and add the test data to read the right file system.
what I mean is that you don't have any dependency 🙂

leli
Lemon leli
3:40 PM
I see, this looks like a workaround or use a branch to do this. just update the yaml to set different filesystem.
we hope to make this easy, just use a setting to select it.

Joaquín Rivera JERiveraMoya
3:44 PM
settings are not making things easier, because they don't scale well, we avoid them as much as we can because it create many if/else in the code very hard to handle in future (still there is a few needed, but definitely not new ones)

leli
Lemon leli
3:46 PM
So for now if we need select a xfs then we need use a branch to set xfs and related data to run the installation?

Joaquín Rivera JERiveraMoya
3:46 PM
what do you mean by branch?
the recommended option is that you use the new test modules using libyui.

leli
Lemon leli
3:47 PM
git branch to change the yaml file

Joaquín Rivera JERiveraMoya
3:47 PM
no, you can have different schedules for your test suites, you don't need to branch them
here https://openqa.suse.de/tests/6518899#settings in Settings you can fine YAML_SCHEDULE
https://github.com/os-autoinst/os-autoinst-distri-opensuse/blob/master/declarative-schedule-doc.md

github.com
os-autoinst-distri-opensuse/declarative-schedule-doc.md at master · os-autoinst/os-autoinst-distri-opensuse
os-autoinst test cases for openSUSE. Contribute to os-autoinst/os-autoinst-distri-opensuse development by creating an account on GitHub.

leli
Lemon leli
3:49 PM
Yes, I see
So we need to add different yaml files for different filesystem.

Joaquín Rivera JERiveraMoya
3:49 PM
and the libyui framework docs here: https://github.com/os-autoinst/os-autoinst-distri-opensuse/blob/master/ui-framework-documentation.md

github.com
os-autoinst-distri-opensuse/ui-framework-documentation.md at master · os-autoinst/os-autoinst-distri-opensuse
os-autoinst test cases for openSUSE. Contribute to os-autoinst/os-autoinst-distri-opensuse development by creating an account on GitHub.
not really, it could be one yaml and then you use YAML_TEST_DATA to change the filesystem, but also two yaml if it is more clear

leli
Lemon leli
3:51 PM
Ok, I can make it in one by YAML_schedule.
Thanks.

#10 Updated by leli about 1 month ago

  • % Done changed from 50 to 30

Create a new yaml file for installation on s390x with ext4 as default filesystem, wait http://openqa.nue.suse.com/tests/7068443#live to verify.

#11 Updated by leli about 1 month ago

Talking with yast QE, I think update test code for needle is the suitable solution for us.

Lemon Li Today at 1:44 PM
Hi yast experts, I found the get_suggested_partitioning hasn't been defined in Distribution::Sle::15sp2 and 15sp0, https://openqa.nue.suse.com/tests/7069343#step/select_guided_setup/2
So what's the reason? If this is for the feature hasn't been backported, what's the suggestion for the selection for suggested filesystem? Thanks.
10 replies

Lemon Li 4 hours ago
We met this issue during the run to install SLES15SP1 on z/VM.

Joaquin Rivera 3 hours ago
Hi @Oleksandr Orlov seems that this is for SP1, where there is not libuyui, so the framework has to work with needles, do you think we should recommend to use the framework with needles (you were more involve in early stage, maybe you have better idea here) or doing a module from the scratch? wdyt?

Joaquin Rivera 3 hours ago
@Lemon Li in the meantime Alex replies back, you can try one thing, create a file /15sp1.pm and add sub_partitioner from /15sp0.pm. Also you need to fix these two lines in DistributionProvider.pm
return Distribution::Sle::15sp2->new() if is_sle('>=15-sp2');
return Distribution::Sle::15sp1->new() if is_sle('>=15-sp1');
If works out of the box would be a good signal. (edited)

Lemon Li 3 hours ago
@Joaquin Rivera If no problem, I think I can do this by needle, because we are not only do this on SLES15SP1, this action is needed for versions less SLES15SP3 I think.

Lemon Li 3 hours ago
Migration test need cover the migration from SLES15SP1/SP2/SP3 and 12SP3/12SP4/12SP5 to SLES15SP4.

Lemon Li 3 hours ago
I will try your suggestion for code of 15sp1.pm.

Joaquin Rivera 3 hours ago
Oh! 12-SP! Then I would recommend to do the module from scratch or fix some existing one, we are working in SP4, absorving slowly the maintenance part speciall SP3, but lower than that, if it is new development which is your case, our team still didn't reach that far regarding support...

Lemon Li 3 hours ago
Ok, NP, then I will consider to use needle to select expected filesystem for test on version less then 15SP3. Thanks.
New

Oleksandr Orlov 1 hour ago
Hi Lemon! Do you need some setup in guided partitioning? If you just need to use default installation, you may omit those modules and use
tests/sle/tests/installation/partitioning.pm and tests/installation/partitioning_finish.pm like here: https://openqa.suse.de/tests/6590008

Lemon Li 1 minute ago
Hi Oleksandr, in fact I just want to replace the default filesystem and select a new one such as ext4. In fact I have a branch of https://github.com/os-autoinst/os-autoinst-distri-opensuse/compare/master...lemon-suse:select_filesystem_for_test?expand=1
I think currently this is the suitable solution for us for now. Please help to have a look. Thanks.

#12 Updated by leli about 1 month ago

  • % Done changed from 30 to 40

#13 Updated by leli about 1 month ago

  • % Done changed from 40 to 50

We will use FILESYSTEM=xxx to select expected filesystem for test.

Verified for s390x:
https://openqa.nue.suse.com/tests/7097767#

Wait for the verification logs on other three Arches.

lemon@linux-hxjt:~> /usr/share/openqa/script/clone_job.pl --from http://openqa.nue.suse.com --host http://openqa.nue.suse.com 6059007 --skip-download TEST=create_hdd_SLES-15-SP3-x86_64-GM-SDK-gnome-allpatterns.qcow2 PUBLISH_HDD_1=SLES-15-SP3-x86_64-GM-SDK-gnome-allpatterns-test-FS.qcow2 ISO=SLE-15-SP3-Online-x86_64-GM-Media1.iso SCC_DEREGISTER=1 SCC_URL=https://scc.suse.com BETA=0 _GROUP=0 SCC_ADDONS=sdk PATTERNS=all EXCLUDE_PATTERNS=common-criteria HDDSIZEGB=60 FILESYSTEM=ext4
Created job #7097803: sle-15-SP3-Online-x86_64-Build187.1-create_hdd_gnome@64bit -> http://openqa.nue.suse.com/t7097803
lemon@linux-hxjt:~> /usr/share/openqa/script/clone_job.pl --from http://openqa.nue.suse.com --host http://openqa.nue.suse.com 5991382 --skip-download TEST=create_hdd_SLES-15-SP3-aarch64-GM-gnome-allpatterns.qcow2 PUBLISH_HDD_1=SLES-15-SP3-aarch64-GM-gnome-allpatterns-test-FS.qcow2 ISO=SLE-15-SP3-Online-aarch64-GM-Media1.iso SCC_DEREGISTER=1 SCC_URL=https://scc.suse.com BETA=0 _GROUP=0 HDDSIZEGB=60 PATTERNS=all EXCLUDE_PATTERNS=common-criteria FILESYSTEM=ext4
Created job #7097808: sle-15-SP3-Online-aarch64-Build187.1-create_hdd_gnome@aarch64 -> http://openqa.nue.suse.com/t7097808
lemon@linux-hxjt:~> /usr/share/openqa/script/clone_job.pl --from http://openqa.nue.suse.com --host http://openqa.nue.suse.com 5989568 --skip-download TEST=create_hdd_SLES-15-SP3-ppc64le-GM-gnome-allpatterns.qcow2 PUBLISH_HDD_1=SLES-15-SP3-ppc64le-GM-gnome-allpatterns-test-FS.qcow2 ISO=SLE-15-SP3-Online-ppc64le-GM-Media1.iso SCC_DEREGISTER=1 SCC_URL=https://scc.suse.com BETA=0 _GROUP=0 HDDSIZEGB=60 PATTERNS=all EXCLUDE_PATTERNS=common-criteria FILESYSTEM=ext4
Created job #7097811: sle-15-SP3-Online-ppc64le-Build187.1-create_hdd_gnome@ppc64le-2g -> http://openqa.nue.suse.com/t7097811

#14 Updated by leli about 1 month ago

  • Status changed from In Progress to Resolved
  • % Done changed from 50 to 100

#15 Updated by okurz about 1 month ago

leli wrote:

[…]
lemon@linux-hxjt:~> /usr/share/openqa/script/clone_job.pl --from http://openqa.nue.suse.com --host http://openqa.nue.suse.com 6059007 --skip-download …

Please use openqa-clone-job from PATH instead of /usr/share/openqa/script/clone_job.pl which we plan to deprecate in the future.

Also I suggest instead of

openqa-clone-job --from http://openqa.nue.suse.com --host http://openqa.nue.suse.com 6059007 --skip-download …

to use the shorter equivalent form

openqa-clone-job --within-instance http://openqa.nue.suse.com 6059007 …

Also available in: Atom PDF