Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 #!/usr/bin/env python | 1 #!/usr/bin/env python |
| 2 # Copyright 2014 The Chromium Authors. All rights reserved. | 2 # Copyright 2014 The Chromium Authors. All rights reserved. |
| 3 # Use of this source code is governed by a BSD-style license that can be | 3 # Use of this source code is governed by a BSD-style license that can be |
| 4 # found in the LICENSE file. | 4 # found in the LICENSE file. |
| 5 | 5 |
| 6 import argparse | 6 import argparse |
| 7 import imp | 7 import imp |
| 8 import os | 8 import os |
| 9 import subprocess | 9 import subprocess |
| 10 import sys | 10 import sys |
| (...skipping 56 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 67 gsutil_cp(mojom_zip_file.name, dest, dry_run) | 67 gsutil_cp(mojom_zip_file.name, dest, dry_run) |
| 68 | 68 |
| 69 | 69 |
| 70 def upload_binary(service, binary_dir, platform, dry_run): | 70 def upload_binary(service, binary_dir, platform, dry_run): |
| 71 dest_dir = "gs://mojo/" + service + "/" + version + "/" + platform + "/" | 71 dest_dir = "gs://mojo/" + service + "/" + version + "/" + platform + "/" |
| 72 should_zip = service in SERVICES_WITH_ZIPPED_BINARIES | 72 should_zip = service in SERVICES_WITH_ZIPPED_BINARIES |
| 73 binary_name = service + ".mojo" | 73 binary_name = service + ".mojo" |
| 74 absolute_binary_path = os.path.join(root_path, binary_dir, binary_name) | 74 absolute_binary_path = os.path.join(root_path, binary_dir, binary_name) |
| 75 | 75 |
| 76 if not should_zip: | 76 if not should_zip: |
| 77 # Upload the binary. | |
| 77 dest = dest_dir + binary_name | 78 dest = dest_dir + binary_name |
| 78 gsutil_cp(absolute_binary_path, dest, dry_run) | 79 gsutil_cp(absolute_binary_path, dest, dry_run) |
| 80 | |
| 81 # Update the pointer to the service's location to point to the | |
| 82 # newly-uploaded binary. | |
| 83 service_location = dest.replace("gs://", "https://storage.googleapis.com/") | |
| 84 location_file = ("gs://mojo/services/" + platform + "/" + service + | |
| 85 "_location") | |
|
jamesr
2015/02/24 22:07:19
what information are we uploading here that isn't
blundell
2015/02/25 13:07:31
gs://mojo/services/<platform>/<service>_location i
| |
| 86 with tempfile.NamedTemporaryFile() as tmp: | |
| 87 tmp.write(service_location) | |
| 88 tmp.flush() | |
| 89 gsutil_cp(tmp.name, location_file, dry_run) | |
| 79 return | 90 return |
| 80 | 91 |
| 81 # Zip the binary before uploading it to the cloud. | 92 # Zip the binary before uploading it to the cloud. |
| 82 dest = dest_dir + binary_name + ".zip" | 93 dest = dest_dir + binary_name + ".zip" |
| 83 with tempfile.NamedTemporaryFile() as binary_zip_file: | 94 with tempfile.NamedTemporaryFile() as binary_zip_file: |
| 84 with zipfile.ZipFile(binary_zip_file, 'w') as z: | 95 with zipfile.ZipFile(binary_zip_file, 'w') as z: |
| 85 with open(absolute_binary_path) as service_binary: | 96 with open(absolute_binary_path) as service_binary: |
| 86 zipinfo = zipfile.ZipInfo(binary_name) | 97 zipinfo = zipfile.ZipInfo(binary_name) |
| 87 zipinfo.external_attr = 0o777 << 16 | 98 zipinfo.external_attr = 0o777 << 16 |
| 88 zipinfo.compress_type = zipfile.ZIP_DEFLATED | 99 zipinfo.compress_type = zipfile.ZIP_DEFLATED |
| (...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 128 "android-arm", args.dry_run) | 139 "android-arm", args.dry_run) |
| 129 | 140 |
| 130 if not args.dry_run: | 141 if not args.dry_run: |
| 131 print "Uploaded artifacts for version %s" % (version, ) | 142 print "Uploaded artifacts for version %s" % (version, ) |
| 132 else: | 143 else: |
| 133 print "No artifacts uploaded (dry run)" | 144 print "No artifacts uploaded (dry run)" |
| 134 return 0 | 145 return 0 |
| 135 | 146 |
| 136 if __name__ == '__main__': | 147 if __name__ == '__main__': |
| 137 sys.exit(main()) | 148 sys.exit(main()) |
| OLD | NEW |