History | View | Annotate | Download (14.9 kB)
gnt-cluster master-failover: Undrain queue
- Move functions for drain status (tracked via file) from jqueue to jstore- Undrain queue on master failover if necessary- Add QA test
Signed-off-by: Michael Hanselmann <hansmi@google.com>Reviewed-by: Iustin Pop <iustin@google.com>
Introducing gnt-cluster epo
This is a convenience command to do an automated EPO in the possible limits ofGaneti.
Signed-off-by: René Nussbaumer <rn@google.com>Reviewed-by: Michael Hanselmann <hansmi@google.com>
Add QA rapi test for instance reinstall
This tests at least the basic case, unfortunately there is no way tocheck all possibilities using the provided rapi client, as that will usethe new method unless the cluster doesn't support it.
Signed-off-by: Guido Trotter <ultrotter@google.com>...
Add RAPI resource for instance console
Small QA fixes: groups via RAPI, cluster OOB
Add “cluster-oob” to sample configuration file. Don't run RAPI grouptests if disabled.
Run pylint over QA code too
Right now, the QA code is not covered by pylint, and this shows atleast one low-impact bug.
This patch does the necessary changes to make QA pylint-clean, and thechanges the makefile to run pylint for it.
Notable changes:...
QA: use a persistent SSH connection to the master
The recent additions to QA (many more tests) make QA slow if themachine on which the QA runs is not very close to the tested nodes —or in general, when the SSH handhaske is costly.
We discussed before about using a persistent connection, and here is...
QA: Fix duplicated OOB tests
Patch f55312bd added the OOB tests to TestClusterVerify, which is notactually a test for cluster verify, but a runner for cluster verifythat is called multiple times, for each instance type, etc. This ledto running the OOB commands multiple times, which is painful...
Add QA tests for OpAssignGroupNodes
Signed-off-by: Adeodato Simo <dato@google.com>Reviewed-by: Michael Hanselmann <hansmi@google.com>
qa_group.py: reimplement query tests with qa_utils
Now that group queries use query2 infrastructure, update the QA tests touse the generic functions in qa_utils.py.
Signed-off-by: Adeodato Simo <dato@google.com>Reviewed-by: Iustin Pop <iustin@google.com>
ganeti-qa: Wrap lines longer than 80 chars
Merge branch 'devel-2.3'
Conflicts: lib/cmdlib.py: Trivial qa/ganeti-qa.py: Trivial...
QA: Run cluster-verify as part of all instance tests
“gnt-cluster verify” looks at some per-instance information as well, soit should be run for each instance type QA tests.
QA: Fix typo and add “not”
QA: Add some basic OOB tests
QA: Extend unittests for query operations, add tests for list-fields
Signed-off-by: Michael Hanselmann <hansmi@google.com>Reviewed-by: René Nussbaumer <rn@google.com>
More QA tests for group operations
This adds QA tests for the SetGroupParams operation, both for CLI andRAPI. Additionally, it adds tests for add/rename/remove groups via RAPI,which had not been included in a previous patch series. Finally, it alsotests setting "alloc_policy" (and, for the CLI, "ndparams") at group...
QA: Improve tests for instance/node list
- Query all known fields- Random combinations (using a PRNG with a fixed seed) of fields- Order of result names
qa: test same-name instance rename
Use the simplified command and rapi version to perform an instancerename to the same name. This is performed anytime the rename test isenabled, while the "other-name" rename is performed when also analternative name is provided....
Simplify instance rename qa test
The current instance rename qa testing function can only performback-and-forth renames, both for command line and rapi. In order to beable to perform same-name rename tests we change it to be able toperform simple renames, and then we change qa to call it to perform both...
Group operations: add QA tests for add/remove/rename
This is a single function that tests all of of the following:
- creating groups - creating groups that exist fails - renaming an empty group - renaming a group with nodes - renaming to a name that already exists fails...
Querying node groups: add QA tests
This adds QA tests for both CLI and RAPI.
Signed-off-by: Adeodato Simo <dato@google.com>Signed-off-by: Iustin Pop <iustin@google.com>Reviewed-by: Iustin Pop <iustin@google.com>
Further cleanups on QA
This is more of an RFC. The patch attempts to address two issues:
- running conditional tests is ugly right now- we don't know what tests we skipped
By using the new RunTestIf, we solve both. But a significant number oftest decisions are more complex than just “is test enabled”, so those...
Merge branch 'devel-2.2' into devel-2.3
Conflicts: lib/cmdlib.py (reverted & applied manually the change)
Signed-off-by: Iustin Pop <iustin@google.com>...
QA: add tests for gnt-cluster modify -B
Signed-off-by: Iustin Pop <iustin@google.com>Reviewed-by: Michael Hanselmann <hansmi@google.com>
QA: Run “gnt-cluster verify” while DRBD instance exists
This tests some parts of the disk information collection.
Signed-off-by: Michael Hanselmann <hansmi@google.com>Reviewed-by: Luca Bigliardi <shammash@google.com>
LUExportInstance: Accept instance already shut down
To remove the instance after an export it needs to be stopped. This canbe achived using the parameter “shutdown”, or by explicitly shuttingdown the instance before exporting. The latter would still require the...
QA: Allow job queue test to be disabled
On my machine it takes over 30 seconds, disabling it canspeed up the QA.
Fix QA mixup of node/instance tests
There are two node tests that are run from RunCommonInstanceTests, which is thebad place—it causes these node tests to be run three times instead of once.
QA: Add test for “gnt-node modify”
Brown-bag fix for leftover comment
I did forgot this in the original patch. Sorry!!!!
Signed-off-by: Iustin Pop <iustin@google.com>Reviewed-by: Guido Trotter <ultrotter@google.com>
Rework QA interaction with the watcher
The interaction with cron-launched watcher is a well-known failure mode of QA:
---- 2010-10-14 06:54:55.464839 time=0:00:56.764827 Test tools/move-instance
For the following tests it's recommended to turn off the ganeti-watcher cronjob....
Change QA log output
Currently, the logging in QA doesn't show the duration of the varioussteps, and if it is needed one has to perform log manipulation. Thispatch changes the output so that the log informatio is line based (asopposed to block-based), such that it's easy to grep for all log lines:...
Try again to fix the inter-cluster move QA test
This time, we re-establish the old pri/sec nodes corretly. Unfortunately thiswill require now a 3-node cluster at least for drbd instances, hence it'ssomewhat suboptimal, but… The other option would be to move it simply from p:s...
QA: Fix instance move tests
The instance move tests were moving the instance from node pair (A,_) to(B, A), and left it there. This patch makes sure that the first stepmoves the instance to (B,A) but the second one back to (A,B), so thatthe instance is left on the same primary node....
Add some trivial QA tests for the new OS states
Signed-off-by: Iustin Pop <iustin@google.com>Reviewed-by: Guido Trotter <ultrotter@google.com>Reviewed-by: Michael Hanselmann <hansmi@google.com>
QA: Run simple job queue test
RAPI client: Support modifying instances
gnt-backup: Don't show confusing message w/o target node
“gnt-backup export” requires the target node. Until now, the masterdaemon would complain that the “parameter'OP_BACKUP_EXPORT.target_node' fails validation”. With this patch,an additional check is done in the client program....
QA: Test renaming instance via RAPI
QA: Test instance migration via CLI and RAPI
QA: add tests for the reserved lvs feature
Signed-off-by: Iustin Pop <iustin@google.com>Reviewed-by: René Nussbaumer <rn@google.com>
Merge branch 'stable-2.1'
RAPI client: Switch to pycURL
Currently the RAPI client uses the urllib2 and httplib modules fromPython's standard library. They're used with pyOpenSSL in a very fragileway, and there are known issues when receiving large responses from a RAPIserver....
qa: shutdown instance before trying disk convert
Because we have to. :)
Signed-off-by: Guido Trotter <ultrotter@google.com>Reviewed-by: Iustin Pop <iustin@google.com>
qa_rapi: Test inter-cluster instance move script
This test moves an instance on the same cluster and, if successful,moves it back. While not testing a real move between two clusters,this is certainly better than nothing.
Signed-off-by: Michael Hanselmann <hansmi@google.com>...
Merge branch 'devel-2.1'
Conflicts: daemons/ganeti-noded lib/daemon.py lib/rapi/baserlib.py lib/rapi/rlib2.py lib/utils.py
Signed-off-by: Luca Bigliardi <shammash@google.com>Reviewed-by: Michael Hanselmann <hansmi@google.com>
QA: Test instance creation/deletion via RAPI client
Signed-off-by: Michael Hanselmann <hansmi@google.com>Reviewed-by: Guido Trotter <ultrotter@google.com>
RAPI QA: Use RAPI client
RAPI QA: Test instance creation/removal via RAPI
QA: Make the rapi credential handling less involving
Merge remote branch 'origin/devel-2.1'
Implement QA tests for disk template changes
The new test depends on the drbd type tests being enabled, and testconversion to plain and back to drbd.
Implement replacing cluster certs and keys via “gnt-cluster renew-crypto”
Recent changes to “gnt-cluster verify” made it complain on expiring SSLcertificates. While it was possible to replace the SSL certificates andother cluster secrets manually before, doing so was cumbersome. Cluster...
Adding qa tests for gnt-os modify
This adds basic qa tests for gnt-os modify
Add command line options for instance removal on export
Implement instance rename QA tests
QA: improve usability with cluster-init: False
When not initialising the cluster, consider all nodes are added, so thatmulti-node tests (e.g. export, replace) work correctly (if there arenodes, of course).
Add QA test for “gnt-node {list,modify,repair}-storage”
Revive RAPI QA tests for 2.0-style RAPI
This patch fixes the RAPI QA tests to work with today's RAPI code andalso does some other minor improvements: - QA: only create the cluster if so configured (‘create-cluster’ key), this allows running parts of the QA suite against existing clusters...
QA: Remove dry run mode
It didn't work as planned because some commands depend on the returnvalue or output of some operations.
Reviewed-by: iustinp
QA: Do not upload known_hosts file anymore
The cluster no longer keeps individual host's SSH key, but ratheraliases all of them to the cluster name.
Reviewed-by: ultrotter
Remove QA hook functionality
To my knowledge they're used nowhere and it's at least slightlyconfusing to people adding new QA checks.
Migrate RAPI QA to trunk.
Reviewed-by: imsnah
Forward-port: Fix two problems in QA scripts
- Failover back to original node in instance failure test- Exclude secondary node from list of potential nodes in replace-disks test
Forward-port: Add QA tests for “gnt-instance reboot”
Forward-port: Add QA test for “gnt-instance replace-disks”
Forward-port changes made to readd in 1.2
qa_node.py: Fix typo in messagecmdlib.py: Don't add readded node to node listganeti-qa.py: Make sure readd isn't done for master node
Add --readd option to “gnt-node add”
This allows us to readd a node after it failed and required areinstallation or replacement.
Add QA test for “gnt-instance console”
Remove the option to create md/drbd7 instances
This patch removes the options that allow to create local_raid1 orremote_raid1 instances. It also modifies the documentation and removesthese disk templates from burnin and from qa.
Implement QA tests for gnt-cluster rename
Code style updates for QA code.
Add QA tests for gnt-instance modify
This patch adds QA tests for most of the possible parameters in theinstance modify operation (exception being the MAC), and modifies thesample QA file to run this test.
It also tests the no-modification test, but that is a weak one: we only...
Various code style fixes for strings.
- When line wrapping is needed, move spaces to the next line.- Remove embedded line breaks from error messages.
Reviewed-by: schreiberal
Add basic QA tests for DRBD 8.
Fix call to TestInstanceConsecutiveFailures.
Implement hooks infrastructure.
Test tag functionality.
Merge three small cluster tests into one.
Test “gnt-cluster command”.
Also check whether file contents are correct for both “gnt-cluster command” and“gnt-cluster copyfile”.
Cleanup QA scripts.
- Split main() function into several small ones.- Current work on disk failure tests. This is not yet finished.- Fix small typo in qa_node.py.
Implement disk failure QA test.
Testing failure on the primary node is currently disabled due to drbd problems.
Do QA tests on “gnt-os“, including partially valid OSes.
Test “gnt-node evacuate” and “gnt-node failover” in QA.
Colours and warnings.
- Implement colours in qa_utils.- Print warning for cron script.
Add more QA tests.
Added tests:- “gnt-cluster getmaster”- “gnt-cluster version”- “gnt-instance list”- “gnt-instance reinstall”
Enhance QA.
- Test “gnt-backup export” and “gnt-backup import”.- Move “ResolveInstanceName” to qa_utils.py.- Fix tests for “ganeti-watcher”.- Make instance shutdown and startup configurable.
Split QA script into different modules.
Move QA script from testing/ to qa/.
Reviewed-by: iustin