madecoste / swarming

Automatically exported from code.google.com/p/swarming
Apache License 2.0
0 stars 1 forks source link

Require credential management for tasks #218

Open GoogleCodeExporter opened 9 years ago

GoogleCodeExporter commented 9 years ago
Some of Chromium's tests which run on swarming (the GPU tests which run as part 
of the steps on these bots):

http://build.chromium.org/p/tryserver.chromium.linux/builders/linux_chromium_rel
_ng
http://build.chromium.org/p/tryserver.chromium.mac/builders/mac_chromium_rel_ng
http://build.chromium.org/p/tryserver.chromium.win/builders/win_chromium_rel_ng

upload failing image results to cloud storage for later inspection by the 
developer. This process requires cloud storage credentials.

Currently the swarming bots do not have cloud storage credentials, so uploading 
any test failures' results fails with:

-----

[  FAILED  ] GpuRasterization.BlueBox (65509 ms)

Traceback (most recent call last):
  Run at tools/telemetry/telemetry/benchmark.py:202
    max_failures=self._max_failures)
  Run at tools/telemetry/telemetry/user_story/user_story_runner.py:241
    expectations, user_story, results, state)
  _RunUserStoryAndProcessErrorIfNeeded at tools/telemetry/telemetry/user_story/user_story_runner.py:89
    state.RunUserStory(results)
  RunUserStory at tools/telemetry/telemetry/page/shared_page_state.py:242
    self._test.RunPage(self._current_page, self._current_tab, results)
  RunPage at tools/telemetry/telemetry/page/page_test.py:229
    self.ValidateAndMeasurePage(page, tab, results)
  ValidateAndMeasurePage at content/test/gpu/gpu_tests/gpu_rasterization.py:63
    device_pixel_ratio)
  _ValidateScreenshotSamples at content/test/gpu/gpu_tests/cloud_storage_test_base.py:214
    self._UploadErrorImagesToCloudStorage(image_name, screenshot, None)
  _UploadErrorImagesToCloudStorage at content/test/gpu/gpu_tests/cloud_storage_test_base.py:190
    public=True)
  _UploadBitmapToCloudStorage at content/test/gpu/gpu_tests/cloud_storage_test_base.py:148
    cloud_storage.Insert(bucket, name, temp_file, publicly_readable=public)
  Insert at tools/telemetry/telemetry/util/cloud_storage.py:217
    _RunCommand(command_and_args)
  _RunCommand at tools/telemetry/telemetry/util/cloud_storage.py:155
    raise CloudStorageError(stderr)
CloudStorageError: Copying 
file:///var/folders/rs/_swg7nyj5pl69vk6j2j8zv700000gm/T/tmp08QA5v.png 
[Content-Type=image/png]...
Uploading   ...Box_81b497cdc14855e407e4406dac8a47346fa7ce8e.png: 0 B/2.34 KiB   

Uploading   ...Box_81b497cdc14855e407e4406dac8a47346fa7ce8e.png: 2.34 KiB/2.34 
KiB    
You are attempting to access protected data with no configured
credentials. Please visit https://cloud.google.com/console#/project
and sign up for an account, and then run the "gsutil config" command
to configure gsutil to use these credentials.

-----

There is a fair amount of intricate mechanism involved in the upload process. 
I've been informed it's possible to use the isolateserver to transfer these 
files off but I don't want to make these code changes. Doing so will require 
the test to be modified as well as the recipe and will be a lot of throwaway 
work.

vadimsh@ says that there has been a plan to manage credentials for swarming 
tasks. Please prioritize this work. It is urgently needed to keep these tests 
functioning as they did before the swarming transition of the GPU tryservers.

Original issue reported on code.google.com by kbr@chromium.org on 12 Mar 2015 at 6:25

GoogleCodeExporter commented 9 years ago

Original comment by vadimsh@chromium.org on 12 Mar 2015 at 6:28