From 7002cea61fe2d2f5b89a096a036bccafca8c774a Mon Sep 17 00:00:00 2001 From: Richard Tibbles Date: Fri, 11 Sep 2015 15:05:07 -0700 Subject: [PATCH 1/2] Add a tunnel identifier to SauceConnect instances for different Circle CI builds and nodes. --- circle.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/circle.yml b/circle.yml index 336cd567c7..b4c224ec8f 100644 --- a/circle.yml +++ b/circle.yml @@ -20,7 +20,7 @@ test: - kalite start --settings=kalite.project.settings.disk_based_cache --traceback -v2 - kalite status - kalite stop --traceback -v2 - - cd sc-*-linux && ./bin/sc -u $SAUCE_USERNAME -k $SAUCE_ACCESS_KEY --readyfile ~/sauce_is_ready: + - cd sc-*-linux && ./bin/sc -u $SAUCE_USERNAME -k $SAUCE_ACCESS_KEY --tunnel-identifier $CIRCLE_BUILD_NUM-$CIRCLE_NODE_INDEX --readyfile ~/sauce_is_ready: background: true - while [ ! -e ~/sauce_is_ready ]; do sleep 1; done - case $CIRCLE_NODE_INDEX in 0) kalite manage test --bdd-only ;; 1) kalite manage test --no-bdd;; esac: From 0c6e4a6bded186b1ccf9b1e4c33d4da29e411ece Mon Sep 17 00:00:00 2001 From: Richard Tibbles Date: Fri, 11 Sep 2015 15:11:49 -0700 Subject: [PATCH 2/2] Adds tunnel_id to desired capabilities. --- kalite/testing/base_environment.py | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/kalite/testing/base_environment.py b/kalite/testing/base_environment.py index 52dfc875a5..0dbf3628bb 100644 --- a/kalite/testing/base_environment.py +++ b/kalite/testing/base_environment.py @@ -44,6 +44,10 @@ def setup_sauce_browser(context): # based on http://saucelabs.com/examples/example.py username = os.environ.get('SAUCE_USERNAME') access_key = os.environ.get('SAUCE_ACCESS_KEY') + circle_build = os.environ.get('CIRCLE_BUILD_NUM') + circle_node = os.environ.get('CIRCLE_NODE_INDEX') + + tunnel_id = "{build}-{node}".format(build=circle_build, node=circle_node) context.sauce = sc.SauceClient(username, access_key) sauce_url = "http://{username}:{access_key}@ondemand.saucelabs.com:80/wd/hub".format(username=username, access_key=access_key) @@ -58,7 +62,9 @@ def setup_sauce_browser(context): profile.set_preference("browser.helperApps.neverAsk.saveToDisk", "text/csv") context.browser = webdriver.Firefox(firefox_profile=profile) # Use local browser for this particular test else: - context.browser = webdriver.Remote(desired_capabilities=DesiredCapabilities.FIREFOX, + desired_capabilities = DesiredCapabilities.FIREFOX.copy() + desired_capabilities["tunnelIdentifier"] = tunnel_id + context.browser = webdriver.Remote(desired_capabilities=desired_capabilities, browser_profile=profile, command_executor=sauce_url) @@ -168,4 +174,4 @@ def do_fake_registration(): zone.save() device = Device.get_own_device() device_zone = DeviceZone(device=device, zone=zone) - device_zone.save() \ No newline at end of file + device_zone.save()