| # Copyright 2013 The Chromium Authors. All rights reserved. |
| # Use of this source code is governed by a BSD-style license that can be |
| # found in the LICENSE file. |
| |
| DEPS = [ |
| "fuchsia/buildbucket_util", |
| "flutter/gsutil", |
| "recipe_engine/path", |
| "recipe_engine/platform", |
| ] |
| |
| BUCKET = "example" |
| |
| |
| def RunSteps(api): |
| api.gsutil.upload_namespaced_file( |
| BUCKET, |
| api.path["cleanup"].join("file"), |
| api.gsutil.join("path", "to", "file"), |
| metadata={ |
| "Test-Field": "value", |
| "Remove-Me": None, |
| "x-custom-field": "custom-value", |
| "Cache-Control": "no-cache", |
| }, |
| unauthenticated_url=True, |
| options={"parallel_composite_upload_threshold": "50M"}, |
| ) |
| |
| api.gsutil.upload_namespaced_directory( |
| api.path["cleanup"].join("dir"), |
| BUCKET, |
| "rsync_subpath", |
| gzip_exts=["html"], |
| ) |
| api.gsutil.upload_namespaced_directory( |
| api.path["cleanup"].join("dir"), |
| BUCKET, |
| "cp_subpath", |
| rsync=False, |
| gzip_exts=["html"], |
| ) |
| api.gsutil.upload( |
| BUCKET, api.path["cleanup"].join("dir"), "dir", recursive=True |
| ) |
| |
| api.gsutil.copy(BUCKET, "foo", BUCKET, "bar", recursive=True) |
| api.gsutil.download(BUCKET, "foo", "tmp/", recursive=True) |
| |
| api.gsutil.unauthenticated_url("https://storage.cloud.google.com/foo/bar") |
| |
| dir_url = api.gsutil.namespaced_directory_url("bucket", "foo") |
| assert dir_url.endswith("builds/8945511751514863184/foo"), dir_url |
| |
| |
| def GenTests(api): |
| yield api.buildbucket_util.test("basic") |
| yield ( |
| api.buildbucket_util.test("retry_on_failure") |
| # Cover the windows-specific codepath. |
| + api.platform.name("win") + |
| api.step_data(f"upload cp_subpath to {BUCKET}", retcode=1) |
| ) |