Use CrosHost for testbed routers

Use CrosHost for all router hosts and avoid host detection.
Host detection would use JetstreamHost for Whirlwind routers.
JetstreamHost assumes ap-daemons are running.
Testbed routers run the testbed-ap profile with no ap-daemons.

TODO: crbug.com/757075 Fix testbed-ap JetstreamHost detection.

Also CHROMEOS_RELEASE_VERSION for trybot-whirlwind-test-ap/
R50-7849.0.0-b13 was wrong, causing the update to always be
performed.

BUG=chromium:748151
TEST=network_WiFi_UpdateRouter
TEST=network_WiFi_VerifyRouter

Change-Id: I19f6fc8702493f038fa3563c459dee89db8bbbeb
Reviewed-on: https://chromium-review.googlesource.com/584823
Commit-Ready: Edward Hill <ecgh@chromium.org>
Tested-by: Edward Hill <ecgh@chromium.org>
Reviewed-by: Brian Norris <briannorris@chromium.org>
diff --git a/server/site_linux_router.py b/server/site_linux_router.py
index dd9c9f3..9fdc2cf 100644
--- a/server/site_linux_router.py
+++ b/server/site_linux_router.py
@@ -73,7 +73,14 @@
         raise error.TestError('Router at %s is not pingable.' %
                               router_hostname)
 
-    return LinuxRouter(hosts.create_host(router_hostname), test_name,
+    # Use CrosHost for all router hosts and avoid host detection.
+    # Host detection would use JetstreamHost for Whirlwind routers.
+    # JetstreamHost assumes ap-daemons are running.
+    # Testbed routers run the testbed-ap profile with no ap-daemons.
+    # TODO(ecgh): crbug.com/757075 Fix testbed-ap JetstreamHost detection.
+    return LinuxRouter(hosts.create_host(router_hostname,
+                                         host_class=hosts.CrosHost),
+                       test_name,
                        enable_avahi=enable_avahi)
 
 
diff --git a/server/site_tests/network_WiFi_UpdateRouter/network_WiFi_UpdateRouter.py b/server/site_tests/network_WiFi_UpdateRouter/network_WiFi_UpdateRouter.py
index 6c8ae4a..c0e5eea 100644
--- a/server/site_tests/network_WiFi_UpdateRouter/network_WiFi_UpdateRouter.py
+++ b/server/site_tests/network_WiFi_UpdateRouter/network_WiFi_UpdateRouter.py
@@ -40,7 +40,7 @@
         'panther': StableVersion('trybot-panther-test-ap/R47-7424.0.0-b10',
                                  '7424.0.2015_09_03_1532'),
         'whirlwind': StableVersion('trybot-whirlwind-test-ap/R50-7849.0.0-b13',
-                                   '7849.0.2016_01_20_2033')
+                                   '7849.0.2016_01_20_2103')
     }
 
 
@@ -77,7 +77,13 @@
         router_hostname = site_linux_router.build_router_hostname(
                 client_hostname=host.hostname,
                 router_hostname=self._router_hostname_from_cmdline)
-        router_host = hosts.create_host(router_hostname)
+        # Use CrosHost for all router hosts and avoid host detection.
+        # Host detection would use JetstreamHost for Whirlwind routers.
+        # JetstreamHost assumes ap-daemons are running.
+        # Testbed routers run the testbed-ap profile with no ap-daemons.
+        # TODO(ecgh): crbug.com/757075 Fix testbed-ap JetstreamHost detection.
+        router_host = hosts.create_host(router_hostname,
+                                        host_class=hosts.CrosHost)
         board = router_host.get_board().split(':', 1)[1]  # Remove 'board:'
         desired = self.STABLE_VERSIONS.get(board, None)
         if desired is None: