commit 22c666aafa4b802dcf21c662439e5f444e86a73a Author: Dan Callaghan <dcallagh@redhat.com> Date: Tue Nov 25 11:02:07 2014 +1000 Automatic commit of release 19.0 commit 8be3c20ffe65e72089fd50d1b5b29603916764d1 Author: Dan Callaghan <dcallagh@redhat.com> Date: Tue Nov 25 11:01:57 2014 +1000 update release notes for 19.0 with some last minute bugs commit 5436a5fbc1e324b699bf0747a357ad4779e61221 Author: Dan Callaghan <dcallagh@redhat.com> Date: Thu Nov 13 11:52:52 2014 +1000 combine db migration 1c10e575800c into 3fc28d7eb6d3 ... to avoid two sets of ALTER TABLE statements on the log_* tables. Bug: 1163540 Change-Id: Ieec8014ab397206c649eef12271ecbdc4b2f2385 commit 58bd2fd47b75f9a2a3aeb62a65df0803d772b304 Author: Amit Saha <asaha@redhat.com> Date: Wed Nov 19 14:47:26 2014 +1000 Fix for arch specific netboot configuration In a0635104d537ec539bf2fcf69f24f4f1c3ce3cd0, netboot configuration routine, configure_all() was fixed to be called with the distro tree arch and not the system supported archs. Bug: 1165489 Change-Id: I3d399485288b3e03fc9a1a1d67d37eb5fc761336 commit ccd2a580465b2edd42d05de11aea9a94d978954f Author: Dan Callaghan <dcallagh@redhat.com> Date: Tue Nov 11 16:36:17 2014 +1000 Automatic commit of release 19.0rc2 commit 5a644befdb432598891c5598767a7a6c46d0177e Author: Dan Callaghan <dcallagh@redhat.com> Date: Tue Nov 11 16:21:50 2014 +1000 Misc/rpmbuild.sh: match all tags, not just beaker-0* The beaker-0* pattern was needed to avoid matching task tags (such as beaker-distribution-install-1_11-11 etc). Now that we have dropped the leading zero from Beaker versions that pattern is no longer suitable. Since we are not keeping tasks in Beaker's git repo anymore we can just remove the pattern entirely and match all tags. Change-Id: I7579e83b710727e27ad12d988eb536a70f89e2fd commit eacac2c0682b5bff79beca735778a546c11085f4 Author: Dan Callaghan <dcallagh@redhat.com> Date: Tue Nov 11 16:05:57 2014 +1000 Automatic commit of release 19.0rc1 commit 3bd40a886290938b0bc3500eed65a6c8deb80805 Author: Dan Callaghan <dcallagh@redhat.com> Date: Mon Nov 10 21:03:21 2014 +1000 release notes for 19 Change-Id: I93c39b8b394cbf361badae1d963043249e89deb2 commit f077ad63cc0482a13bd1954c017b1c18b53dfff9 Author: Dan Callaghan <dcallagh@redhat.com> Date: Mon Nov 10 20:49:30 2014 +1000 tests: fix timing issue in test_group_edit Occasionally the browser.get() will fetch back the groups list before the deletion has finished. To avoid that, we wait for the flash message indicating deletion before moving on. Traceback (most recent call last): File "/usr/lib/python2.6/site-packages/bkr/inttest/server/selenium/test_group_edit.py", line 394, in test_remove_self_admin_group check_group_search_results(b, absent=[Group.by_name(u'admin')]) File "/usr/lib/python2.6/site-packages/bkr/inttest/server/webdriver_utils.py", line 125, in check_group_search_results 'not(.//td[1]/a/text()="%s")]' % group.group_name) File "/usr/lib64/python2.6/site-packages/selenium/webdriver/remote/webdriver.py", line 230, in find_element_by_xpath return self.find_element(by=By.XPATH, value=xpath) File "/usr/lib64/python2.6/site-packages/selenium/webdriver/remote/webdriver.py", line 662, in find_element {'using': by, 'value': value})['value'] File "/usr/lib64/python2.6/site-packages/selenium/webdriver/remote/webdriver.py", line 173, in execute self.error_handler.check_response(response) File "/usr/lib64/python2.6/site-packages/selenium/webdriver/remote/errorhandler.py", line 166, in check_response raise exception_class(message, screen, stacktrace) NoSuchElementException: Message: Unable to locate element: {"method":"xpath","selector":"//table[@id=\"widget\" and not(.//td[1]/a/text()=\"admin\")]"} Change-Id: I45647031f56ee45bb1bd330c98c9289c36c93f91 commit 6195332fdc1ee6ae6481c5e0942a72d9238e1d0b Author: Dan Callaghan <dcallagh@redhat.com> Date: Mon Nov 10 13:37:16 2014 +1000 avoid issuing lots of SELECTs when deleting lab controllers Bug: 802641 Change-Id: I35ca17a496eab7c536286318dfa864cc74e68ba3 commit 26611368bf135f95bc962d27479885c5653554cb Author: Dan Callaghan <dcallagh@redhat.com> Date: Mon Oct 13 16:07:56 2014 +1000 only show scary warning on Provision tab if a recipe is running Instead of always showing a big fat "Caution", which just causes extra visual noise, we show a shorter and less obtrusive message only when the system is running a recipe. That is the only case where the behaviour in Beaker 19 will be different than earlier versions (previously it would implicitly schedule a job instead of provisioning) and it's also the only time where provisioning is probably not what the user wants to do. Also updated the confirmation box to match the wording from the power confirmation box, in case the system is reserved by someone else. Change-Id: I5aa4812da0118716f1c4f72a7248593e9927b445 commit a0635104d537ec539bf2fcf69f24f4f1c3ce3cd0 Author: Amit Saha <asaha@redhat.com> Date: Mon Nov 10 10:11:36 2014 +1000 Use the distro tree architecture and not the system archs when configuring netboot Change-Id: Id6e43ae430bce63122abdbf82725571e3d070965 commit be11a101401a7f2e80d2a2ada69e4f363d1caf3e Author: Amit Saha <asaha@redhat.com> Date: Fri Nov 7 11:24:42 2014 +1000 Allow creating test systems with multiple supported architectures Change-Id: I2403eaf3d1084c74bc705439c3dfde9e24aca509 commit 8669f59c0165261980da4c549fbdbf92f370674c Author: Dan Callaghan <dcallagh@redhat.com> Date: Wed Nov 5 17:25:07 2014 +1000 release notes for new system page Change-Id: I1915b9aeb84b7e2da77cd0f1ddc9a42e9bb738e2 commit 1aebdf43e89891bb33ab7a2d7d69412e1ce0edb3 Author: Dan Callaghan <dcallagh@redhat.com> Date: Thu Oct 16 14:24:55 2014 +1000 fix reservesys notification for OpenStack instances Currently Beaker is sending out a link to /view/<fqdn> which is not correct for OpenStack instances. Converted to use a Jinja template since we now have some logic in there. Also updated the tests to use more known values so that we have less of the original template logic repeated in the tests. Change-Id: Idf5028df410db689f641c33c6c448986af38f0ae commit 3083abb627f9a146b7867f633e6daab5f6a61b35 Author: Dan Callaghan <dcallagh@redhat.com> Date: Wed Nov 5 13:16:22 2014 +1000 fix population of command grid when submitting a new command Because the System#command_queue attribute is actually a PageableCollection running in server mode, it could be currently storing any page -- possibly with a sort or filter applied. So we can't just always insert the new command at the top and assume that is the right place. The easiest approach is to just refresh the command queue grid from the server after we have finished enqueuing our new command(s). This patch also updates the 'reboot' logic so that it first saves 'off' and then only saves 'on' after that has succeeded, to ensure they are ordered correctly. Bug: 1144193 Change-Id: Ied0e3744ebc30be94e7741bcaedb80169876f45d commit 39d4999d2a4460f9a8a55ad85ad780c5aef0c679 Author: Dan Callaghan <dcallagh@redhat.com> Date: Wed Nov 5 13:21:24 2014 +1000 some tweaks to the appearance of system page widgets This based on recommendations from the HSS UX team, see the bug for full details. Bug: 1144190 Change-Id: I8d9ee7ecb0c770211ef866938d839e047896a549 commit 6c779e33f2b6f4cb00d0d1fff35f58d7122e1846 Author: Dan Callaghan <dcallagh@redhat.com> Date: Wed Nov 5 14:28:02 2014 +1000 bkr system-modify --condition Bug: 804479 Change-Id: Ie80ffb29c9635989be82dfa9ad33fd04fa25ba01 commit d53794d42e3554822ebf5bf7ac25337c1093ccf9 Author: Dan Callaghan <dcallagh@redhat.com> Date: Wed Nov 5 14:55:06 2014 +1000 access policy widget: handle policies with no rules We need the AccessPolicy#rules attribute to always be a Collection object, even if it contains no actual rules. Bug: 1160513 Change-Id: I7629510cb3fe1a2f112f132c36ea586dbe00f3e3 commit f94074407f991dca608a7a365ffee00c6ddef23c Author: mjia <mjia@redhat.com> Date: Fri Oct 31 15:57:31 2014 +1000 refresh the commands grid in the Power tab after submitting a provision on the system page Bug: 1144195 Change-Id: Icbf0d4dc139f2b12ff60d5d7831c0e3f8974ad80 commit 69006b77c5bced6a34a88e9802cb0e273deb3bb6 Author: Amit Saha <asaha@redhat.com> Date: Wed Nov 5 11:27:36 2014 +1000 Remove build dep on python-setuptools-devel Ref: http://fedoraproject.org/wiki/Changes/Remove_Python-setuptools-devel commit 23131dda1d44b89aab31c559b4c992b0c6d386df Author: Amit Saha <asaha@redhat.com> Date: Thu Sep 25 17:21:43 2014 +1000 Fix modal behavior upon HTTP error Bug: 1144203 Change-Id: I1425f0ed7ece2fbb86dcab60a58259af4b331058 commit a6d30eda1286e658779a1fd6c296e4df4130d770 Author: Dan Callaghan <dcallagh@redhat.com> Date: Tue Nov 4 12:42:06 2014 +1000 prevent bash syntax errors if snippets are empty Bug: 1160091 Change-Id: Id81a0e1476e30ccf01fa9c1c4830c65fe95e0834 commit 2571c4bb1e7bfeae93e51efdc1e52965b2806b39 Author: Dan Callaghan <dcallagh@redhat.com> Date: Fri Oct 31 09:38:27 2014 +1000 fix tofu for FontAwesome icons in Backgrids This was a mistake in commit 8d5ae86c (upgrade to FontAwesome 4.2.1). The .fa-icon() class is needed so that we have the right font-family and other properties set. I never noticed the problem because I had FontAwesome installed systemwide and so my browser was finding the glyphs there. Change-Id: I02ab234c8c6db6a0ca3bdc3605dd91b8f9f313da commit 5caef3a82a093967a453af0e76931f18e48e7925 Author: Dan Callaghan <dcallagh@redhat.com> Date: Mon Oct 13 14:35:43 2014 +1000 'control_system' permission does not imply permission to provision We need an extra permission checking method to cover provisioning (that is, the 'configure_netboot' command) particularly, rather than just checking that power commands can be executed. This basically matches the historical (pre-19) behaviour where "direct" provisioning was only offered if you had reserved the system. Bug: 1144196 Change-Id: I85c708be56b7d2188ef27527c3f3188ba1bb602b commit cac30d26e2a0a00e012f9b8a664aedd1182c7595 Author: Dan Callaghan <dcallagh@redhat.com> Date: Tue Oct 28 16:04:09 2014 +1000 fix some SAWarnings Change-Id: I1777320eb676d2440f1502529a2d24f3393a5b92 commit 27d20fd6766e58e5841baee104e7423447f70f64 Author: Dan Callaghan <dcallagh@redhat.com> Date: Thu Oct 30 15:56:36 2014 +1000 set no_clock_sync for guests and OpenStack VMs Change-Id: I21665de28f8186f618249844328a09b964f9f6a4 commit 582fffc56318976f81adb5b59cb52e047eb757a5 Author: Dan Callaghan <dcallagh@redhat.com> Date: Thu Oct 30 08:55:19 2014 +1000 test_group_edit: fix timing issue with is_text_present We've really got to stop using that function. FAIL: bkr.inttest.server.selenium.test_group_edit:TestGroupsWD.test_remove_self_admin_group /usr/bin/vim +394 src/bkr/inttest/server/selenium/test_group_edit.py # test_remove_self_admin_group self.assertTrue(not is_text_present(b, 'admin')) AssertionError: False is not True Change-Id: I8b370576c3cfca784080d61911c39eea0bb11fa4 commit aeb2195b9f4b551a9b2e4f9a43d09801c1816ed2 Author: Dan Callaghan <dcallagh@redhat.com> Date: Wed Oct 29 20:26:23 2014 +1000 tidy up usages of /tmp in tests Removed all hardcoded /tmp paths. There are a few things (like basepath.harness) which we can't put in a dynamically created /tmp directory, so they are moved to ./ when running tests from a git checkout (with a corresponding .gitignore rule). Also ensured that all temp files and directories are cleaned up. The only gotcha is that the cleanup does not always happen if nose is interrupted during a run. The end result is that for a fully passing test run, nothing will be left behind in /tmp. Change-Id: Iff060ea5b45ca028af128fce98ac4e3b4b40782e commit 7e9054740dfac3b58915ae50ad2b391d3315b3e7 Author: Dan Callaghan <dcallagh@redhat.com> Date: Wed Oct 29 19:02:33 2014 +1000 consolidate basepath defaults into app.cfg This way we will always get the proper default value, even if a config file doesn't specify the paths explicitly (for example in tests). Change-Id: Iaac02de38d680514a9978bd51917a13101753881 commit 3eda08ffecc1b985c998b76b3436e675be84ceec Author: Dan Callaghan <dcallagh@redhat.com> Date: Wed Oct 29 21:11:46 2014 +1000 tests: call session.close() after every test case This is an attempt at reducing the overall memory consumption of the test process when running the full test suite. Change-Id: I0fc5f3f7116cb1f85a685399fe8b804808be805d commit efb273df9959ace76b26d6497c46ddec19e57988 Author: Dan Callaghan <dcallagh@redhat.com> Date: Wed Oct 29 14:20:08 2014 +1000 avoid hardcoded /tmp paths in unit tests The hardcoded paths are causing concurrent Jenkins builds to interfere with each other. Change-Id: Ic8e87207f967bf06f10b1769bb71b4f5501fb020 commit 1be64bfc5419b3fa3c8057ed3c94300c434457bd Author: Dan Callaghan <dcallagh@redhat.com> Date: Wed Oct 29 10:40:47 2014 +1000 fix timing issues with logout/login Newer Firefox+Selenium revealed a timing issue with the logout() function. It does not wait for the page load to finish after logging out, so a test may send another request straight away which could be processed before the logout was actually handled. The particular case I saw this was with logout() immediately followed by login(). Since login() re-loads / it may see a page that is still logged in from before. I also removed the extra step of loading / at the start of login(), to avoid some unnecessary roundtrips, although in some cases we still need to do it because the test is calling login() before it loads any page at all. Change-Id: Ib730387662493eaf0aea22ffe371f083a5b81000 commit d68e9262ef40d1d130dde79670811fcfb0477971 Author: Dan Callaghan <dcallagh@redhat.com> Date: Tue Oct 28 16:05:04 2014 +1000 pass -noreset to Xvfb This option tells Xvfb not to "reset" itself after the last client disconnects (which happens every time Firefox is killed, since it is the only client). While Xvfb is resetting there is apparently a window during which it is not accepting connections. This is the cause of intermittent "cannot open display" errors from Firefox, if it starts up while Xvfb is in the middle of a reset. Many thanks to Peter Hutterer for pointing this out! Change-Id: I6ea1e8a82f90130a2414e17679201422f7b29aee commit 39c63a07e7d7cf8c2885a795aa706f51d71fdcde Author: Amit Saha <asaha@redhat.com> Date: Tue Oct 21 08:04:35 2014 +1000 Allow reserving manual systems via reserve workflow Bug: 1093226 Change-Id: If9de2d3c0bc4a527ff448fa91dac6b4bba8acfb7 commit be209e41ca92953c05a71a80a7e6ce772a2e0a6b Author: Amit Saha <asaha@redhat.com> Date: Tue Oct 21 10:40:07 2014 +1000 Preserve distro selection when system search is used in Reserve Workflow Bug: 1154887 commit af3c0cbc6c3ef29b71fd9919de897c2217842726 Author: Dan Callaghan <dcallagh@redhat.com> Date: Thu Oct 16 12:20:44 2014 +1000 require non-empty power address Every power script requires at least a power address, it doesn't make sense not to have one. The power.power_address column is non-NULLable for that reason. So we should also enforce that it's not the empty string. Bug: 1152887 Change-Id: Ia978ea74502ade2537d2c1175e28cfbeef4900ed commit 225ed3e71a052158221dbee2e7ab5782686ba6ff Author: Dan Callaghan <dcallagh@redhat.com> Date: Thu Oct 16 14:01:57 2014 +1000 fix db downgrade issues with production snapshots Updated the 0.17 downgrades to deal with the two possible unique constraint names, uc_user_id or user_id. Removed the test for 20140109 entirely because that snapshot was a mixture of 0.14 and 0.15, due to the postponed 0.15 upgrade. It's not worth making our automatic migrations handle that mess. Change-Id: I4706c231d8ae7c9efb4a0817d2efc12ce48f61f8 commit fdacc117ddb25f327ec0258296b5af8d372ba4e1 Author: Amit Saha <asaha@redhat.com> Date: Fri Oct 24 10:32:22 2014 +1000 Release note for 0.18.4 commit 9c5c5c802f404a4c834d36f2ef6d3577d0f17ffd Author: Dan Callaghan <dcallagh@redhat.com> Date: Tue Oct 14 16:56:17 2014 +1000 upgrade to Bootbox 4.3.0 Bug: 1145864 Change-Id: I848da51273fffa6c512dc0b79c912374c3d62c97 commit 362f6dccf621d8481e876ddb29f2334a2c53df10 Author: Dan Callaghan <dcallagh@redhat.com> Date: Tue Oct 14 15:52:42 2014 +1000 docs: downgrade instructions, with a list of database versions Bug: 682030 Change-Id: I39bb4fcd7dbc7bab0fec800eec0fae51c7576eaf commit d19a1afc66887207ba0385df031ec3bcd730ee16 Author: Dan Callaghan <dcallagh@redhat.com> Date: Mon Oct 13 11:18:20 2014 +1000 fix cloning of reserve workflow jobs with a LC requirement The bug was just that the XML being stored in recipe.host_requires did not have an enclosing <hostRequires/> element, which is expected by the cloning process. Bug: 1144205 Change-Id: Ieb824970857850e959d599b410e6427c74ece024 commit dc8667141c866dcd9ffbdaafef4a8d04416903ed Author: Dan Callaghan <dcallagh@redhat.com> Date: Mon Oct 13 10:54:46 2014 +1000 reserve workflow: tell the user if their recipe matches no systems Bug: 1062086 Change-Id: I2c1876fb81e4163009b6423bbda8863fa55cac10 commit a9fa29a3c09deb5fc45876692201197e91a34efe Author: Dan Callaghan <dcallagh@redhat.com> Date: Fri Oct 10 17:23:12 2014 +1000 beaker-init: need to stamp revision after determining it This was a mistake in commit 2df6c707, the patch for determining the schema version for an unstamped database. The version determination worked properly but the version was never actually stamped, so the upgrade would proceed but alembic_version would be left empty. Re-running the upgrade again would see an unstamped database which would then repeat the post-0.18 upgrades, which would then fail. Bug: 682030 Change-Id: Ic3bc8acd7c1772e2d195b7a54a0d404fdb8acb13 commit 5a4139f6fefc86fd1c7b3650777d5f03d44a6abe Author: Dan Callaghan <dcallagh@redhat.com> Date: Fri Oct 10 17:16:35 2014 +1000 --debug option for beaker-init Change-Id: I6d7217c8989d11ea42ba78d58b1639941b79adbf commit 70ea8e326c4ecda9680fb9822615a859356a8fe7 Author: Dan Callaghan <dcallagh@redhat.com> Date: Fri Oct 10 16:01:43 2014 +1000 also test migration on real production schemas These tests shook out a lot of bugs in older upgrades, which are fixed/worked around by prior patches in the series leading up to this one. Change-Id: Iae7eeb7aa76ddb13ce9d1d1898a450dcf2a34b64 commit bf72044c53bdcee09712b117ace1bbaf807f1a1f Author: Dan Callaghan <dcallagh@redhat.com> Date: Fri Oct 10 15:58:05 2014 +1000 remove database-side defaults See the bug report for complete discussion/rationale. Some other previous database-side defaults are removed as a side effect of the upgrades in commit 5cf89f53. Bug: 1069438 Change-Id: Ic26ec9bbbb848cb5917a36115fb2a847c73c7121 commit f3480403ff8fcef4706d92c63884e80db78402dc Author: Dan Callaghan <dcallagh@redhat.com> Date: Fri Oct 10 14:40:59 2014 +1000 fix type of task.owner column in old databases This was a mistake in the 0.7.1 upgrade notes, added in commit d63ca585 for bug 617274. Change-Id: Ibf0a59d86b7d3c3fe9b76f485465e4db2c317cbf commit 27fa9d68ab5194e99add7546ffb94fb646803a43 Author: Dan Callaghan <dcallagh@redhat.com> Date: Fri Oct 10 14:33:48 2014 +1000 device_class_id should be included in device unique constraint This was a typo in commit e419b4e0 for bug 816553. Change-Id: I5c04050a9e35947d62ea11d577e842ebbf0a9bc4 commit d5cb4d3fd0f2edb5c4e8cdeb203fbee5b76bc77a Author: Dan Callaghan <dcallagh@redhat.com> Date: Fri Oct 10 13:53:28 2014 +1000 add missing unique constraint on beaker_tag This was an oversight in commit 1b96af86 for bug 691745. Change-Id: Ic44e777aaa153b0ad86f2e305d380c271a6ad20b commit f7711862b8bac3f911b13d54feb3cf2afd17f710 Author: Dan Callaghan <dcallagh@redhat.com> Date: Fri Oct 10 13:45:05 2014 +1000 drop some duplicate indexes on job and recipe_set These exist in our production database, but I have no idea why. Most likely some old upgrade instructions that went a bit awry. Change-Id: I5528e0f593f50624fea0320494c46afacb5c4d24 commit 155180eb54cc9836ef8ee49e23a6b5437dab26c2 Author: Dan Callaghan <dcallagh@redhat.com> Date: Fri Oct 10 13:28:24 2014 +1000 fix wrong type of job.product_id column Bug: 1061955 Change-Id: Iec7e2706f98815c9760edf127d80c2b5e6a56196 commit ad04a49b28e6221db7a705086cb7def617db38d6 Author: Dan Callaghan <dcallagh@redhat.com> Date: Fri Oct 10 13:05:28 2014 +1000 system_activity.system_id should not be NULLable This was a typo in commit d8cbbb0a2 for bug 654304. Change-Id: Ia52a25d162bac193a275d67bce0b24748d55d1a3 commit 6cc39c92ca393a8a52bbfbe85e5dd92180264bd6 Author: Dan Callaghan <dcallagh@redhat.com> Date: Fri Oct 10 13:00:25 2014 +1000 explicitly index osversion.osmajor_id As of commit a1260a5a this table has a unique constraint covering osmajor_id, which means MySQL doesn't implicitly create an index for that column. However older database schemas will have the implicit index left over. We might as well add it explicitly. This is similar to commit cefa9e0a. Change-Id: I758d290337249c39f0767c7b9da0bad2c9c3050c commit 724b4adff3ee2a3c7f656808efd6ccf9596fb31d Author: Dan Callaghan <dcallagh@redhat.com> Date: Fri Oct 10 12:53:41 2014 +1000 add missing foreign key constraints These foreign key constraints may be missing in very old databases. I believe these all date back to the time when Beaker was accidentally creating new tables in MyISAM instead of InnoDB, and so MySQL was silently discarding foreign key constraints we had defined. Change-Id: I6d12f0f06144fcb0d11b0ab9df125e35639f8cdf commit a8df1476bfe5054d19aab4749490a521848cb8f8 Author: Dan Callaghan <dcallagh@redhat.com> Date: Fri Oct 10 12:51:46 2014 +1000 index recipe.start_time We have this index in our production database. I can't figure out why. But it seems quite useful, since we reference the recipe.start_time column in a number of queries. Change-Id: Ib5ea0f491f21d4e6c87d04df545f9dd615421b04 commit 57eed3b0b05587f87af1964ce18153e001da1458 Author: Dan Callaghan <dcallagh@redhat.com> Date: Fri Oct 10 12:50:59 2014 +1000 fix NULLability on a number of old columns Change-Id: I5762fa7d4165dcd132ede32afbbb0bb9474477a5 commit c086c794f1f4f9a0358bcd16c56f88302cbb5cca Author: Dan Callaghan <dcallagh@redhat.com> Date: Fri Oct 10 12:46:36 2014 +1000 explicitly index map tables' first columns In old databases, the various association tables will have an index on their first column. It is a left-over implicit index created by MySQL because they had no primary key. In newly created databases this is absent because MySQL uses the PK instead of an implicit index. This is a side-effect of commit ca7c56e6 for bug 642834. We can just make the indexes explicit, and add them on newer databases where they are not already present, because why not. Change-Id: Ib7794141b94fadcdbfa4844a2f4c280bf8f2f272 commit 7e91abb86fb5be9dd6f66aad8cb87f15944b8663 Author: Amit Saha <asaha@redhat.com> Date: Fri Oct 10 16:10:14 2014 +1000 Fix for saving power settings for a new system Bug: 1145867 Change-Id: I6803aa612c6467e8e927cb106cb45cf170a4e470 commit 8d5ae86c1e965bdbf43039ad3d732385869c936e Author: Dan Callaghan <dcallagh@redhat.com> Date: Sun Oct 12 19:39:05 2014 +1000 upgrade to FontAwesome 4.2.0 https://github.com/FortAwesome/Font-Awesome/wiki/Upgrading-from-3.2.1-to-4 Change-Id: I2d89a7deda268fdc4492c03689dcf7db58aec77d commit 35f31be3640f6e377b818f442f871aec5ced86ff Author: Amit Saha <asaha@redhat.com> Date: Fri Oct 3 09:12:34 2014 +1000 Add a man page for beaker-import Also document beaker-import 's "naked tree" import mode Bug: 1032881 Change-Id: Ie877812fb88a7e9dd438b0e2733254d447337290 commit 2df6c707bea293dca91a2067e7407c8dcc9036e5 Author: Dan Callaghan <dcallagh@redhat.com> Date: Fri Oct 10 09:45:57 2014 +1000 automatically determine existing schema version when upgrading Bug: 682030 Change-Id: I37594b0fcd451245270ad36b8769fb76fac242ef commit e885a8b94d238ac14a7894d32e957ca6b5417da0 Author: Dan Callaghan <dcallagh@redhat.com> Date: Thu Oct 9 14:53:28 2014 +1000 fix mistake in 0.13 upgrade: is_owner should be non-NULLable Change-Id: I96667cf7066b1537706a89fab06448f108bae4d5 commit 99bfd882cce9ede60716b18edf35d8942bb5ece6 Author: Dan Callaghan <dcallagh@redhat.com> Date: Thu Oct 9 14:45:24 2014 +1000 fix mistake in 0.15 upgrade: group_name should be non-NULLable Change-Id: Ibda887cb4717141087fba2ba99b662f34e3329f0 commit 3178a634f076f5ccc87494cd7c0d70b6e26e9ac3 Author: Dan Callaghan <dcallagh@redhat.com> Date: Thu Oct 9 14:19:53 2014 +1000 back-populated db migrations back to 0.12 Bug: 682030 Change-Id: I6667b2444f684af2a1fc06f2e8ac0c3d75e6aa01 commit c057ad2d74ace372a822717cccada2252bb8bd39 Author: Dan Callaghan <dcallagh@redhat.com> Date: Tue Oct 7 14:34:21 2014 +1000 test automated schema migrations Bug: 682030 Change-Id: Ic70cbcc2f63d99db011f43bd999163331582ccbb commit 0998f7f0775296ca147d683a65327d7191c0b6db Author: Dan Callaghan <dcallagh@redhat.com> Date: Fri Oct 3 17:40:32 2014 +1000 port pending SQL upgrades to Alembic Change-Id: I8527f309a467fa9e8be75f77a43ea64ae23334de commit b2f93b978d99cffd5ca157c9fd854f961fab9e24 Author: Dan Callaghan <dcallagh@redhat.com> Date: Tue Oct 7 16:34:29 2014 +1000 index tg_user.email_address The 0.17 schema upgrade notes (unintentionally) added this index, but it's useful to have so we might as we add it properly. Change-Id: Ib4c946724a46b909e3f83658de9fa7f63ac61bec commit 56d6020254434d25dca775dc0589bc773f63cb01 Author: Dan Callaghan <dcallagh@redhat.com> Date: Tue Oct 7 14:53:38 2014 +1000 avoid duplicate indexes on lab_controller.user_id Change-Id: I4302bc6efede6001f9b98f6e1271577dd6f4a43e commit 5cf89f53a5966ffab222ea0be03290c5eba2589d Author: Dan Callaghan <dcallagh@redhat.com> Date: Tue Oct 7 15:40:51 2014 +1000 fix mistake in 0.17 upgrade: task status should be non-NULLable Change-Id: I286e4a2625b95d0e7cb4c49018cff48ac3ef9e2d commit 4f6710c9a6151112c0ebad0c0a880b2b9a18fcb3 Author: Amit Saha <asaha@redhat.com> Date: Wed Oct 1 07:07:57 2014 +1000 Experimental support for provisioning rpm-ostree based distros This patch adds support for provisioning "rpm-ostree" based Project Atomic distributions. The feature variable "has_rpmostree" should be used to identify such a distribution. On such distros, the test harness will be run in a Docker container rather than on the host system itself. Change-Id: Ia4eb796b603ed2f1e9a4b60b773a0e82af6522e8 Bug: 1148673 commit 2c3d9b6fa349bc31fb94cc3d1a52f5fea757fca5 Author: Dan Callaghan <dcallagh@redhat.com> Date: Tue Sep 30 16:43:31 2014 +1000 disable systemd-readahead-collect Bug: 1147807 Change-Id: I73800fc2307bb80754e4894e820d91857a1c6599 commit 1c6b15816a9984c293e4c77c7a9922114a12c277 Author: Dan Callaghan <dcallagh@redhat.com> Date: Wed Oct 1 11:40:05 2014 +1000 remove STABLE tag from default distro filter criteria in workflow commands Bug: 891827 Change-Id: I1591dbafb3f9a7c8937da681e0ded1cfdbceddb5 commit f84eded855fa140745fbc61bc44595ddf2eb85b0 Author: Amit Saha <asaha@redhat.com> Date: Tue Jul 1 17:04:38 2014 +1000 Initial support for running the test harness in a Docker container Using the "contained_harness" ksmeta variable, one can run the tests in a Docker container instead of the real test system. Bug: 1131388 Change-Id: Ib1bd525e07b32c2c788ef68021cfb5576d0dcf63 commit cbb8ecd2c24086bde7ede40e2a7e613a1c4b93e6 Author: Dan Callaghan <dcallagh@redhat.com> Date: Wed Sep 24 20:43:44 2014 +1000 remove all usages of System.activity Once a system has been in Beaker for a few years, it will accumulate many thousands of activity entries. Loading all of them is expensive, but we never actually need to do that: when we display the system's activity, we use .dyn_activity with limit+offset, and when we insert a new activity entry we don't actually need to load the entire history first. This patch adjusts ActivityMixin.record_activity to avoid touching the System.activity relationship. Then all parts of the code which insert new system activity entries are updated to use .record_activity instead of touching .activity directly. Usages of .activity in test code are left as is, because it's not really worth the effort of changing those. Change-Id: I5fecc094ec61790453c43c832c0ce0ab36ba3551 commit 60f2fe30e60b543e8a8041c8dabfbdc767666a0e Author: Amit Saha <asaha@redhat.com> Date: Mon Sep 29 13:23:04 2014 +1000 Fix SQL downgrade instruction for view_power commit ba9b5dc6b4e75046c78b817ea413baf2254bd89d Author: Matt Jia <mjia@redhat.com> Date: Thu Jul 17 16:15:59 2014 +1000 automated DB schema upgrade/downgrade Bug: 682030 Change-Id: Ic90e460c9739c0723abd2e6f876683d9a49ecdae commit cd373468aec30a72d2fee0b7a6ed04df7456803c Author: Dan Callaghan <dcallagh@redhat.com> Date: Mon Sep 29 11:40:30 2014 +1000 preserve backwards compatibility in /systems/<FQDN>/status API I also realised we need to revert the client to use the old API for now, otherwise the client will break when talking to older servers. Bug: 1145479 Change-Id: Id9769e789921c2cceb436c137925baff5d47c934 commit bee29c22bdef951ef769dc2eaeb14cbc7e8d6409 Author: Dan Callaghan <dcallagh@redhat.com> Date: Fri Sep 26 16:48:43 2014 +1000 docs for /distribution/virt/image-install Change-Id: I73e54cb38e4aed4a85373d1db93db5e4af377a0f commit 15b4710aeec13564be4f4803a5a265b78017af05 Author: Dan Callaghan <dcallagh@redhat.com> Date: Wed Sep 24 19:44:59 2014 +1000 validate length of condition reports Bug: 980352 Change-Id: Iaa0ced62a3c46f3e9634cc6fc13c8669c008e72a commit d70fdcd6ddf9f5a6016fe91a0604efccaa5b1430 Author: Dan Callaghan <dcallagh@redhat.com> Date: Wed Sep 24 19:28:32 2014 +1000 expand system.status_reason to 4000 There's no reason to restrict the length of this field (it's not indexed) and longer values may be useful in some cases. Change-Id: I45608bb4b91792178d52da170db9f4c0b9fdbd4b commit 6d290fe43b99e0f2a4f6f8dfd16d2170485e8f0a Author: Dan Callaghan <dcallagh@redhat.com> Date: Wed Sep 24 16:08:47 2014 +1000 check 'view_power' permission instead of 'edit_system' for CSV power export Bug: 1012174 Change-Id: I00a1c99873ae212e5560ddabd5d3d8182278087b commit bc8e005b53b180ea13107f8327fab61232ad9945 Author: Dan Callaghan <dcallagh@redhat.com> Date: Wed Sep 24 15:56:01 2014 +1000 don't submit a 'reboot' command This was actually just a mistake in commit b4923f03, the else branch should have been there to begin with. The tests don't pick this up because it's *also* passing 'off' and 'on' so it does actually work correctly, it just triggers an extra error message about the unrecognised 'reboot' command. Change-Id: I31602975822f8c888628f4bde6bce06d38c1d272 commit 4e2d63566a270e14254f6f8071417077c2cb6e61 Author: Dan Callaghan <dcallagh@redhat.com> Date: Wed Sep 24 18:24:19 2014 +1000 don't record activity if power fields change from NULL to '' Bug: 1059535 Change-Id: Ief22437c774b67fd355d6f9aca9dbb1e907d31e6 commit 3d78744282cea443984f4a05590fb517546f51b9 Author: Amit Saha <asaha@redhat.com> Date: Fri Aug 15 12:29:15 2014 +1000 New client command: system-modify This command will allow modifying various attributes of a system. This patch implements support for changing the system owner using the '--owner' option. Bug: 1118884 Change-Id: I291708696bb8e8e6263a99b25a9015045d91e2dc commit 0ccc661ff60195f5d00b1a60aba6aab79e333a9d Author: Dan Callaghan <dcallagh@redhat.com> Date: Fri Sep 19 12:51:22 2014 +1000 bkr job-submit: read from stdin when no args are given Bug: 1142714 Change-Id: I7c6096a4c79781750f2772e226bc13566d54ed15 commit 1cc7b84a9e530de6cafbb8813daa431bef7ce4ef Author: Dan Callaghan <dcallagh@redhat.com> Date: Fri Sep 19 16:54:56 2014 +1000 require sqlalchemy 0.8 We are relying on SQLAlchemy 0.8 features now. Right now it's just the new sqlalchemy.sql.expression.{true,false} functions, but we will also be merging Alembic support soon and that requires 0.8 as well. Change-Id: I76c1f7ab43fb7a6aeecad2322f9eea2d4bd2b7f6 commit fbfe14424eabc5e4d60b04689027121c4697e1dc Author: Dan Callaghan <dcallagh@redhat.com> Date: Thu Sep 18 12:39:23 2014 +1000 fix handling of non-ASCII exception messages Non-ASCII characters can happen in exception messages when, for example, a non-ASCII FQDN is given for a system and it fails validation: Traceback (most recent call last): File "/usr/lib/python2.6/site-packages/flask/app.py", line 1817, in wsgi_app response = self.full_dispatch_request() [...] File "/usr/lib/python2.6/site-packages/bkr/server/flask_util.py", line 133, in wrapper return f(*args, **kwds) File "/usr/lib/python2.6/site-packages/bkr/server/systems.py", line 554, in update_system system.date_modified = datetime.datetime.utcnow() File "/usr/lib64/python2.6/contextlib.py", line 34, in __exit__ self.gen.throw(type, value, traceback) File "/usr/lib/python2.6/site-packages/bkr/server/flask_util.py", line 125, in convert_internal_errors raise BadRequest400(str(exc)) UnicodeEncodeError: 'ascii' codec can't encode characters in position 26-29: ordinal not in range(128) There is a test which covers this situation but it missed the actual exception because it was only checking the client-side HTML5 validation error. I just happened to notice this on the server side by coincidence. Flask already handles this properly so long as we just pass the unicode straight through. For proper handling on the client side we also need to set the MIME charset in error responses. Change-Id: I5f80e703f7e3cc9c5abc8070bcade02de0771d31 commit 340d526bc01df3a651000f0bd1484ae16fafa23b Author: Dan Callaghan <dcallagh@redhat.com> Date: Fri Sep 19 08:23:37 2014 +1000 uncomment whats-new/next for develop Also dropped the old commented-out section about 1.0 since we kind of skipped past that... commit 0b6b3c0ee93e60f4439e395974c5de662c31ae81 Author: Dan Callaghan <dcallagh@redhat.com> Date: Mon Sep 15 17:17:28 2014 +1000 datepicker for datetime fields in query builder Change-Id: Ib9ff419a2302abf09b3e1c0f9551886f3899da39 commit e806b1f575bca4e60ff64475403e6c9cca0e1f9d Author: Dan Callaghan <dcallagh@redhat.com> Date: Mon Sep 15 14:02:22 2014 +1000 query builder UI for Backgrid filters Change-Id: I2baf77a4914ae82e6393739cbbf61ac42b93270b commit 407406d029f7a8df5cba0e019aa1b0cd76ef32ea Author: Dan Callaghan <dcallagh@redhat.com> Date: Mon Sep 15 17:30:09 2014 +1000 support for exclusive range queries Change-Id: I0b4d243aecaac7298b6771a58f6059c4a61136e1 commit 064600aa6bc7a17b465a0d202bc40dba9aa30ed9 Author: Dan Callaghan <dcallagh@redhat.com> Date: Mon Sep 8 19:31:17 2014 +1000 filter for Backgrids Supports a subset of Lucene query parser syntax, which is also used by Solr and Elasticsearch in case we ever upgrade to those for real. The search syntax currently supports everything that the traditional grid searchbar supports, but currently there is no "advanced search" UI for building queries. Bug: 1014438 Change-Id: Ib34aaff866702c04b188bdabacc8cc52e7135dc4 commit dc1ce4a9f526ea3767916abc53707c8d117a51cf Author: Dan Callaghan <dcallagh@redhat.com> Date: Tue Sep 16 17:47:01 2014 +1000 show loading and error indicators for Backgrids Change-Id: I5770abb7e87935ebdb5fc15f0cd7393737dbb143 commit ed0fc2703115cc5e09e5ae24be80b93d9c9a1096 Author: Dan Callaghan <dcallagh@redhat.com> Date: Wed Sep 17 17:18:57 2014 +1000 upgrade to backbone 1.1.2 Change-Id: If4036f3e9f3660f45613f4a3c79d52f72f11d698 commit 57fa1bb26b42230007a8c200e561c78e1ae5d61d Author: Dan Callaghan <dcallagh@redhat.com> Date: Mon Sep 8 20:27:49 2014 +1000 fix trailing whitespace in "X ago" <time/> elements Change-Id: I0e3baca7502459cb62b7d228f05dbdf4367efaa4 commit 45fbb59976aad41f3ff85b6186f091d33e7382fb Author: Dan Callaghan <dcallagh@redhat.com> Date: Mon Sep 8 20:24:22 2014 +1000 fix wrong width of Reboot check box on Provision tab Change-Id: Iacfd8be683bbc117b21c0ca28034e1088bb6a19a commit 4c26a9f33249aeb1aa566fc6de7334e81ce30c6f Author: Dan Callaghan <dcallagh@redhat.com> Date: Tue Sep 9 12:36:34 2014 +1000 remove duplicate style.less import This was accidentally brought in during a merge. Change-Id: Ie488402916fbae150df7047f94cd207b5ab3dbe0 commit c9aa9a295f7bf1921f25b5b80959facd84690582 Author: Dan Callaghan <dcallagh@redhat.com> Date: Thu Apr 17 09:37:23 2014 +1000 remove unused bkr.server.search module Change-Id: I3911753d96e9b3a7c45bcbacd429f7d7cf95b33e commit 1ab2dd6f4a24353898f93bef147c6ab7acb1b9c0 Author: Dan Callaghan <dcallagh@redhat.com> Date: Wed Sep 17 15:43:46 2014 +1000 tests: fix timing issue with access policy row removal As of commit be4da184 group names in the access policy widget are actually links, so [text()=""] no longer works. Unfortunately since it was a negative XPath using not() the fact that [text()] was no longer matching did not immediately cause a test failure, so I totally missed it when merging. It just meant that the test would fail if your browser is fast enough, because it moves on to refresh the page before the AJAX request to save the policy has finished. Change-Id: I690c7d9e9adc3e03ebd7b51c12248b1e1bfa7233 commit 2c10e224e2bcfa0179612a71cea534823c7b01cf Author: Dan Callaghan <dcallagh@redhat.com> Date: Wed Sep 10 16:26:25 2014 +1000 refactor install_options methods to reduce duplication a little With this patch, the various install_options methods are now generators, which yield zero or more InstallOptions instances which should be combined. The reason for this awkwardness is that we cannot pre-combine InstallOptions inside these methods and return the combined result, because InstallOptions.combine_with() is not an associative operation. Then all the different parts of code which need to produce the final combined install options will collect them from various places and then call InstallOptions.reduce() to combine the entire sequence in one go. Change-Id: I3a86dced9d904a159dc8061c9d66b4eb0a92b4ce commit 445ef048a70d39cedc5240d1eafa507aa6ded0a7 Author: Dan Callaghan <dcallagh@redhat.com> Date: Mon Sep 1 11:44:36 2014 +1000 new view_power permission, to grant access to see power settings Bug: 1012174 Change-Id: Ifce25e8565e0b65ce53ccacb98bfcd875c67f228 commit 91319cabb328d0f7d4c2de30f3e0ecc9e4ecb9e6 Author: Dan Callaghan <dcallagh@redhat.com> Date: Mon Aug 25 16:49:11 2014 +1000 tests: ported remaining Selenium tests to WebDriver Change-Id: I1a9be201d58d4f1518903eb1cea0a1541c9df23a commit b99eb7547536ea485b11a887ca475071d9637f67 Author: Dan Callaghan <dcallagh@redhat.com> Date: Thu May 29 13:01:25 2014 +1000 need to include 'bootstrap-select.css' in assets depends It should have been added to the depends list back when the file was first added, however the fact that it was missing never really mattered before. However now that we are building assets at runtime, and relying on the webassets environment to find all our source files, the depends list must be accurate otherwise files will not be copied into the RPM (which is the problem here). Change-Id: I3698c6a741a468a734cd92b9a300be12d4724262 commit 4e2af677fc57f2a92cde7b116d20344c81edb1f1 Author: Dan Callaghan <dcallagh@redhat.com> Date: Thu May 29 09:01:49 2014 +1000 fix errors found by newly-merged pylint checking Change-Id: Ice61d44f7232df31a1837d052d8ba348ddcae98e commit 71bedf21f4a4410fc9fb470785e15d91f45302bd Author: Dan Callaghan <dcallagh@redhat.com> Date: Wed Mar 5 18:16:48 2014 +1000 add "Return Loan" button to system quick usage Also renamed the "Reserve" button to "Schedule Reservation" to make it more clearly distinct from "Take" (and to indicate that it uses the scheduler via the Reserve Workflow). Change-Id: I4d66572aa5804ba31902246c89a1ba4fe92f43e8 commit b0a94afcb78862a4096596b9a10d73d1a2e22cb5 Author: Dan Callaghan <dcallagh@redhat.com> Date: Wed Apr 9 10:01:44 2014 +1000 use default instead of server_default for release_action Bug: 1072336 Change-Id: Ic717feb048e96a8214c7faec9f17ff00b9474986 commit b4923f036c1eba2268ebcbb9a9891c77767e5049 Author: Dan Callaghan <dcallagh@redhat.com> Date: Wed Apr 9 14:39:10 2014 +1000 submit separate 'off' and 'on' commands when pressing Reboot Change-Id: I2fab0e9f86b541ce70f057552b78dd90c13c85c1 commit 0ab264c7c4700c9ad690cd649f357815a25b08fa Author: Raymond Mancy <rmancy@redhat.com> Date: Tue Mar 4 22:01:22 2014 +1000 Set a default for a system's release action. Bug: 1072336 Change-Id: If8c918ba921f8fa19f9ec7b9332bc97d73c7c57c commit d3d5fa64851891640fb61e22508b5237fef7d408 Author: Dan Callaghan <dcallagh@redhat.com> Date: Tue Mar 4 16:49:23 2014 +1000 rename some system page tabs, in an attempt to make things clearer Commands -> Power Power -> Power Settings Scheduler -> Scheduler Settings It was not obvious from the name "Commands" that this means power control. The "Power" tab under "Configuration" was also too tempting a target when looking for power controls. This attempts to make things a bit more obvious. Change-Id: If591e2101b01a89d5d127b82b79ca6d3896ce98f commit 54b45e3599fa7ed25fb3e18b0f9d9e55b617a96c Author: Dan Callaghan <dcallagh@redhat.com> Date: Mon Mar 3 16:41:17 2014 +1000 ported Power Configuration tab to Backbone Bug: 1070036 Bug: 1059535 Change-Id: I6951704b977da9a444fcbea7d38557487464b315 commit b5ef12a6d63d92daf7d7649a00bd9d578de6d24f Author: Dan Callaghan <dcallagh@redhat.com> Date: Tue Mar 4 16:30:17 2014 +1000 tests: fix failure introduced with merge commit 10f87b94 Change-Id: I98b40e4a1633ea9d3a4ce4957d5b76a010e6dbc1 commit a4fe95303602f37faec0c360d5cb8a7a68c2a2c8 Author: Dan Callaghan <dcallagh@redhat.com> Date: Mon Mar 3 10:21:23 2014 +1000 Revert "don't complain about duplicate tag names when editing an existing tag" This reverts commit 726fdb4849e253920cb753518a80fd711ca2b0fc, which was accidentally merged into the new-system-page branch before it had passed review. The final version of the patch had some substantial differences, and was applied to develop as commit b17e6e3e978aa94f71b1c026c6c24810247a8bf8. commit e6b8b61d9c328ab15ff9ae9f0504f1e73ffc256f Author: Dan Callaghan <dcallagh@redhat.com> Date: Tue Feb 18 10:48:39 2014 +1000 system status now contains complete user objects instead of usernames Commit 90781cda actually made this change for the 'current_loan' key already (due to the change in System.get_loan_details). This patch updates the 'current_reservation' key to match, and updates the client to handle the new object in both keys. Change-Id: I359493e8ec13e6e9eb6c8cb3981fd108a52d060f commit 5af7f9c3b69fd758df9c825d23e01982a6056526 Author: Dan Callaghan <dcallagh@redhat.com> Date: Tue Feb 18 10:20:04 2014 +1000 tests: fix error message wording due to commit eb96eb68 Change-Id: I18850326f3a4b1c3a481356735facf8d4ac271c1 commit 726fdb4849e253920cb753518a80fd711ca2b0fc Author: Dan Callaghan <dcallagh@redhat.com> Date: Thu Feb 20 17:07:04 2014 +1000 don't complain about duplicate tag names when editing an existing tag The UniqueRetentionTag validator was being used when saving an existing tag, where the tag name has not necessarily changed, so it was incorrectly reporting a validation error. However we can't just skip the validation entirely, since we need to check for duplicate tags *if* the tag name is being changed. So this patch bypasses the validation and just does the checking by hand with a flash message on error. Bug: 1012389 Change-Id: I02e6f69606b25013dd71ddaf440395c9309433be commit 993d40a9656859f3018237c96beb81f55a094225 Author: Dan Callaghan <dcallagh@redhat.com> Date: Mon Feb 17 12:45:22 2014 +1000 make page sizes configurable in @json_collection ... instead of hard-coding all the various numbers. Users of the decorator can pass in custom values or accept the defaults, but either way it makes @json_collection a little more readable. Change-Id: I27903ff5820898b2b59165f5c48128359de3db77 commit 72840e87dc8cce8272cd18e825e623bf382368f7 Author: Dan Callaghan <dcallagh@redhat.com> Date: Sun Jan 19 21:19:16 2014 +1000 ported system commands tab to Backbone Change-Id: I7a56a3a685431f917073b4498fc83bff5391be9e commit 334e5c805f3e2e4c934f9db7530662667897859c Author: Dan Callaghan <dcallagh@redhat.com> Date: Wed Jan 15 09:40:38 2014 +1000 modal for renaming systems The system form included a field for the FQDN which allowed the user to rename the system. That doesn't really fit anywhere else, so this patch adds a modal for renaming the system. Change-Id: Ibc664f0cb56343eb00bdfe69ec10e16b69996583 commit 9c1e3aad84b8e9bf64cb7eff216f1b9efba8843c Author: Dan Callaghan <dcallagh@redhat.com> Date: Wed Jan 15 10:28:37 2014 +1000 make system.fqdn unique Change-Id: Ica0056f49bcca2d5305971dc14d83cbc0731c667 commit 39df8a82f5f93c637b342aee2ab028a730227e6a Author: Dan Callaghan <dcallagh@redhat.com> Date: Tue Jan 14 17:17:45 2014 +1000 wire up access policy widget with the rest of the system page Also tweaked a few things to make the widget behave more similarly to the other system page widgets. Change-Id: If855cf46e567fe451c6ae81e1582af9dd6da263e commit ed3d46893dc87ed6f4dfc88d959e858c59fe1556 Author: Dan Callaghan <dcallagh@redhat.com> Date: Fri Jan 10 16:12:19 2014 +1000 Request loan and Report problem buttons in system quick info These replace the buttons which previously lived behind a "System Actions" modal in the Owner cell of the system form. Change-Id: Ic3b02ea707a778946ba4b5e3346c902eed2fe1f4 commit 69d9665ad544a73279bcaa83eb672495de7c3359 Author: Dan Callaghan <dcallagh@redhat.com> Date: Fri Jan 10 14:58:02 2014 +1000 use Growl-like notifications to indicate successful provision This gives us a standard mechanism to indicate that an action has been completed successfully, when there are no other changes in the UI to indicate that a request was successful. Change-Id: I78c2cfd7af502b12cd79b68642990ac41e9f5bee commit 9245883bfea25261422729ff2a799fedf45a9f2b Author: Dan Callaghan <dcallagh@redhat.com> Date: Thu Jan 9 15:25:22 2014 +1000 request user confirmation before provisioning Provisioning is a destructive operation (even more so than power control, which we already require one or sometimes two JavaScript confirmations for) so it warrants a confirmation dialog. Change-Id: Iee48be9c16ee34f2515bdd059162ba8a325c7ddd commit c2e46a3e69839ef0646931c85d3c35b99dbe756f Author: Dan Callaghan <dcallagh@redhat.com> Date: Thu Jan 9 11:40:18 2014 +1000 Take and Return buttons in system quick info These replace the buttons which previously lived in the User cell of the system form. Change-Id: I0bed831fd5d7a6a3d86423d9d7f241a2c9a37e7d commit 6560937799fbc4d2f8c9119ac46ce6274117c126 Author: Dan Callaghan <dcallagh@redhat.com> Date: Wed Jan 8 18:17:08 2014 +1000 Provision tab on system page now always provisions directly Also ported it to Backbone. This is a second attempt at the final solution for bug 855333. That bug was ultimately caused by the various ways that the Provision tab changed its behaviour according to the state of the system. Now the Provision tab always provisions directly, not through the scheduler (we can link to the Reserve Workflow for that now). It always appears regardless of the Automated/Manual status of the system. The tab will be available whenever the user is allowed to provision the system: typically, while they have reserved it or if they are its owner (or granted in its access policy). Change-Id: I5839e33fb60c6404302d0c21bc9d4c40870a5070 commit a72c8b58732d9e8400adbebb84dd9b91c2306732 Author: Dan Callaghan <dcallagh@redhat.com> Date: Thu Jan 9 09:28:08 2014 +1000 added "Reserve time" field to Reserve Workflow This was available on the system Provision tab but never on the Reserve Workflow, where it is more relevant. Change-Id: I7fcfbab1894d3b1fc13e16709c23bf2d19210174 commit 8367beba483ab27028e0d2a264bd803b23736fce Author: Dan Callaghan <dcallagh@redhat.com> Date: Wed Jan 8 10:44:44 2014 +1000 ported Reserve Workflow to Backbone, merged into a single page Previously the Reserve Workflow was a three-step process: 1. pick distro tree(s), 2. (optionally) pick system, 3. enter job options and submit. This patch puts all three steps onto a single page, allowing them to be completed in any order. In particular, this now lets us link to the Reserve Workflow with the system pre-filled so that the user can pick a distro and enter their job options. So we can link to the Reserve Workflow from the system page, which is the ultimate goal of this patch. The distro selection part of the widget is also extracted out so that it can be re-used on the system Provision tab. Change-Id: If2678f75e09bb42927730153bb6e8252f5b82ead commit 21e67640dfdeb0f7acf9efd117516300a3fcad32 Author: Dan Callaghan <dcallagh@redhat.com> Date: Mon Dec 23 14:20:44 2013 +1000 use Backgrid for system activity grid This avoids the TurboGears DataGrid and @paginate decorator for the system page, which gives us more freedom (for example having multiple data grids on the system page, or to port the system page controller to a Flask handler). We can also defer loading the activity data until it's viewed for the first time, which saves request processing time and bandwidth for all the cases where the user is visiting the system page to do something other than view activity. Change-Id: I083a501290f9b4f504b540a7da575775a2d5a1c0 commit 849bb21649523c78b8706c6c765e943fe6ff97b6 Author: Dan Callaghan <dcallagh@redhat.com> Date: Tue Dec 24 13:33:28 2013 +1000 modal for adding new systems The only piece of information which is absolutely required for a new system is its FQDN, so we can make adding a new system very simple by just requesting the FQDN and then the user can fill in everything else using the system page. The "quick description" widget will give some hints about the most important settings which should usually be filled out (lab controller, arch, power settings). Change-Id: I33327f5976d7cd86d8b5541bb7c45a83b1c6735e commit 2c817ff630a7b44f3253af55fd0f2a084ba52383 Author: Dan Callaghan <dcallagh@redhat.com> Date: Tue Dec 17 12:34:16 2013 +1000 scheduler config tab on system page This replaces the scheduler-related fields from the system form: Condition (status), Condition Report, and Type. Change-Id: I7f4e355162b39f9ffff64b3b8656a7ba88f59711 commit 90781cda685ae1465334b29b4ac80bb7b7863e1b Author: Dan Callaghan <dcallagh@redhat.com> Date: Tue Dec 17 10:06:12 2013 +1000 loan tab on system page This replaces the Loaned To field in the system form, as well as the loan settings modal which lived inside of it. Change-Id: I8d225c7287ffc0ed2177a7980b29e4ecdd865035 commit e429e554e05e3ce31cea08c5a913fb277f20895c Author: Dan Callaghan <dcallagh@redhat.com> Date: Thu Dec 12 18:10:49 2013 +1000 hardware essentials tab on system page This replaces the remaining hardware-related fields from the system form. The distinction between "Essentials" and "Details" is that the essential fields are needed for running Beaker jobs (such as arch), or cannot be determined by Beaker's inventory script (such as location), whereas the details are optional extra hardware information which can be populated by the inventory script if desired. Change-Id: I0822cfe40deaeaabbfea512d0bd2c653f4ea9f2e commit 778da1394a82436a6d4c9ff302f444f35a286d70 Author: Dan Callaghan <dcallagh@redhat.com> Date: Fri Jan 3 09:58:05 2014 +1000 only include Bootstrap styles we are using In particular, this omits "sprites.less" which is actually the styles for Glyphicons, which we are not using (replaced with FontAwesome instead). So this avoids a spurious 404 for the Glyphicons source images under certain circumstances which I have not been able to pin down. Change-Id: I638d51ae0d355396aaf47064e3373f0f3152ed1b commit e6f6a38395751aaf0abf789dc0ca167acfc11219 Author: Dan Callaghan <dcallagh@redhat.com> Date: Wed Dec 11 17:09:01 2013 +1000 editable hardware details on system page This moves the hardware-related fields which were previously in the system form into a table (with corresponding edit modal) on the Details tab. Bug: 1014438 Change-Id: If60f5ebf1ec2dac8da61ddac662da6bd53c716e8 commit 0bac2f09ef0ee885c42df31bb48c153f26b79d69 Author: Dan Callaghan <dcallagh@redhat.com> Date: Tue Dec 10 22:35:54 2013 +1000 owner tab on system page This replaces the Owner and Notify CC fields in the system form. Bug: 1014438 Change-Id: I5a8a8e55b3791c07e9e41827de713673610cc57a commit ab77c92ce8dc920067ee77a087754b26de84a2e6 Author: Dan Callaghan <dcallagh@redhat.com> Date: Fri Dec 6 15:42:23 2013 +1000 "quick info" widgets on system page, nav list instead of tabs This replaces the (very overgrown) system form with three small "quick info" boxes. They are designed to show the most important information about the state of the system as concisely as possible, and to provide a shortcut for the most common operations that the user might want to do with the system. Most importantly, the quick info boxes occupy much less vertical space than the system form, allowing the tabs below (which are the meat of the page) to be shown more prominently and without scrolling down. The horizontal tabs are replaced by a vertical nav list, since there were more tabs than will fit in a single row. In subsequent commits the form fields which were in the system form, as well as all the other functionality that has accreted in there alongside them, will be moved into new or existing tabs on the system page. Bug: 1014438 Change-Id: Ifa987590efef6781ddc6dac217e0a35745736ec3 commit 0b4c2b137c0892f61643ccc492ea0df6d07c4197 Author: Dan Callaghan <dcallagh@redhat.com> Date: Fri Dec 6 09:25:57 2013 +1000 use Moment for datetime manipulation in JavaScript Change-Id: Ic3ef1bea64d196d82f76be6c7ad1b6f8f538df9c commit 1bd34712b769ca25fb6a4abf4adacd78ce654c78 Author: Dan Callaghan <dcallagh@redhat.com> Date: Thu Dec 5 16:57:33 2013 +1000 use localStorage instead of cookies Change-Id: Id57b9586252dd932bd415e76e35de6895114dfbd commit 9ea07a46722e77699e1b7b413582ff4870660234 Author: Dan Callaghan <dcallagh@redhat.com> Date: Wed Jan 15 13:00:44 2014 +1000 ported test_remove_lc to WebDriver Change-Id: I01d636347a6833ad12166bea106b536e9e9e65b0 commit ab9679af39f9f8b6e445fef373861caac5daddf0 Author: Dan Callaghan <dcallagh@redhat.com> Date: Tue Jan 14 13:01:39 2014 +1000 move test for bz920018 to test_system_availability Change-Id: I1289941f9f96923caf8adc1cdff4159ce13cd5ba commit bd8b1101e197e380dad698842979fd2afc86e54c Author: Dan Callaghan <dcallagh@redhat.com> Date: Tue Jan 14 12:47:01 2014 +1000 ported test_system_view to WebDriver Change-Id: I5736c826604d62f27453b26614916b5b12314ac4