[MDBF-30] Package installation/upgrade tests Created: 2020-04-30 Updated: 2022-02-04 Due: 2020-06-15 Resolved: 2022-02-04 |
|
| Status: | Closed |
| Project: | MariaDB Foundation Development |
| Component/s: | None |
| Affects Version/s: | None |
| Fix Version/s: | N/A |
| Type: | Task | Priority: | Major |
| Reporter: | Kaj Arnö | Assignee: | Vlad Bogolin |
| Resolution: | Fixed | Votes: | 0 |
| Labels: | buildbot, foundation | ||
| Remaining Estimate: | 0d | ||
| Time Spent: | 16d | ||
| Original Estimate: | 15d | ||
| Issue Links: |
|
||||||||||||||||||||||||||||||||||||
| Description |
|
Time consuming, as 10.000 lines of code need to be moved to New Buildbot Expectations outlined by @elenst. If they turn out to be wrong, @elenst would like to hear what exactly is different. The terminology is from the old buildbot.
Additional things:
|
| Comments |
| Comment by Michael Widenius [ 2020-07-22 ] |
|
Things to fix:
|
| Comment by Elena Stepanova [ 2020-07-22 ] |
|
To summarize once again which of installation/upgrade tests from the old buildbot are expected to be in the new buildbot from the beginning. Notes: Special tricks may be needed to work around existing problems. See old buildbot tests for the hints. Some tests aren't run by the old buildbot on early development releases. "deb-based platforms" are all versions of Ubuntu and Debian for which MariaDB provides packages to the public. The list is MariaDB-version-specific and dynamic (new Ubuntu releases happen often). Installation tests on all platforms ("install" step in old buildbot) The test installs all packages, and makes sure the server is functioning. The test is performed on a clean image, without any specific non-default packages pre-installed. Only standard distro repos, Galera repository and the repository pointing at the packages under test (for debs) are configured. Galera repo of the corresponding version is needed in this test because while MariaDB public repositories have the galera library, package sets under test don't. Alternatively the test can download the galera package and install it from the local file. Major upgrade tests on rpm-based platforms ("major-upgrade-server" step in kvm-rpm* builders in the old buildbot) The test is performed on a clean image, without any specific non-default packages pre-installed. The test shouldn't fail if it can't find any previously released version in the repos, as it can happen naturally. On historical reasons, the test isn't run for zyp-based systems. While adding it to new buildbot, there is no point to make this distinction, the test should run there as well. Major upgrade tests on deb-based platforms ("upgrade1" and "upgrade2" steps in kvm-deb* builders in the old buildbot) In the old buildbot, major upgrade tests on deb-based platforms are performed from fixed pre-defined versions of MySQL and MariaDB. The test starts a VM with a pre-installed server, creates some data, configures Galera library, runs new package installation and checks that the server is upgraded and the data is accessible. The tests can be replicated in the new buildbot if it's simpler for the start, but in future they should better be converted to the same approach as other upgrade tests take, installing a previous version dynamically. The pre-defined upgrade can still have a value if on some reason we want to test upgrade from a specific server version rather than the latest one, but it's an extension. Minor upgrade tests on deb-based, rpm-based and zyp-based platforms ("minor-upgrade-*" steps in the old buildbot) The test is performed on a clean image, without any specific non-default packages pre-installed. The test shouldn't fail if it can't find any previously released version in the repos, as it can happen naturally. There are several types of minor upgrade tests in the old buildbot:
An additional category of tests which is currently performed as an extra step after installation on deb-based platforms is SST tests. I don't insist on adding them as they are to the new buildbot. It would be better to communicate with the Galera team and maybe re-implement the tests the way they want. |