OLD | NEW |
1 #!/usr/bin/env python | 1 #!/usr/bin/env python |
2 # | 2 # |
3 # Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file | 3 # Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file |
4 # for details. All rights reserved. Use of this source code is governed by a | 4 # for details. All rights reserved. Use of this source code is governed by a |
5 # BSD-style license that can be found in the LICENSE file. | 5 # BSD-style license that can be found in the LICENSE file. |
6 | 6 |
7 import hashlib | 7 import hashlib |
8 import imp | 8 import imp |
9 import os | 9 import os |
10 import platform | 10 import platform |
(...skipping 53 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
64 This class is used for naming objects in our "gs://dart-archive/" | 64 This class is used for naming objects in our "gs://dart-archive/" |
65 GoogleCloudStorage bucket. It's structure is as follows: | 65 GoogleCloudStorage bucket. It's structure is as follows: |
66 | 66 |
67 For every (channel,revision,release-type) tuple we have a base path: | 67 For every (channel,revision,release-type) tuple we have a base path: |
68 | 68 |
69 gs://dart-archive/channels/{be,dev,stable} | 69 gs://dart-archive/channels/{be,dev,stable} |
70 /{raw,signed,release}/{revision,latest}/ | 70 /{raw,signed,release}/{revision,latest}/ |
71 | 71 |
72 Under every base path, the following structure is used: | 72 Under every base path, the following structure is used: |
73 - /VERSION | 73 - /VERSION |
74 - /api-docs/dart-api-docs.zip | 74 - /api-docs/{dart-api-docs.zip,dartdocs-gen-api.zip} |
75 - /dartium/{chromedriver,content_shell,dartium} | 75 - /dartium/{chromedriver,content_shell,dartium} |
76 -{linux,macos,windows}-{ia32,x64}-release.zip | 76 -{linux,macos,windows}-{ia32,x64}-release.zip |
77 - /sdk/dartsdk-{linux,macos,windows}-{ia32,x64}-release.zip | 77 - /sdk/dartsdk-{linux,macos,windows}-{ia32,x64}-release.zip |
78 - /editor/darteditor-{linux,macos,windows}-{ia32,x64}.zip | 78 - /editor/darteditor-{linux,macos,windows}-{ia32,x64}.zip |
79 - /editor/darteditor-installer-macos-{ia32,x64}.dmg | 79 - /editor/darteditor-installer-macos-{ia32,x64}.dmg |
80 - /editor/darteditor-installer-windows-{ia32,x64}.msi | 80 - /editor/darteditor-installer-windows-{ia32,x64}.msi |
81 - /editor-eclipse-update | 81 - /editor-eclipse-update |
82 /{index.html,features/,plugins/,artifacts.jar,content.jar} | 82 /{index.html,features/,plugins/,artifacts.jar,content.jar} |
83 """ | 83 """ |
84 def __init__(self, channel=Channel.BLEEDING_EDGE, | 84 def __init__(self, channel=Channel.BLEEDING_EDGE, |
(...skipping 27 matching lines...) Expand all Loading... |
112 self.editor_android_zipfilename()]) | 112 self.editor_android_zipfilename()]) |
113 | 113 |
114 def sdk_zipfilepath(self, revision, system, arch, mode): | 114 def sdk_zipfilepath(self, revision, system, arch, mode): |
115 return '/'.join([self.sdk_directory(revision), | 115 return '/'.join([self.sdk_directory(revision), |
116 self.sdk_zipfilename(system, arch, mode)]) | 116 self.sdk_zipfilename(system, arch, mode)]) |
117 | 117 |
118 def dartium_variant_zipfilepath(self, revision, name, system, arch, mode): | 118 def dartium_variant_zipfilepath(self, revision, name, system, arch, mode): |
119 return '/'.join([self.dartium_directory(revision), | 119 return '/'.join([self.dartium_directory(revision), |
120 self.dartium_variant_zipfilename(name, system, arch, mode)]) | 120 self.dartium_variant_zipfilename(name, system, arch, mode)]) |
121 | 121 |
122 def apidocs_zipfilepath(self, revision): | |
123 return '/'.join([self.apidocs_directory(revision), | |
124 self.apidocs_zipfilename()]) | |
125 | |
126 def dartium_android_apk_filepath(self, revision, name, arch, mode): | 122 def dartium_android_apk_filepath(self, revision, name, arch, mode): |
127 return '/'.join([self.dartium_android_directory(revision), | 123 return '/'.join([self.dartium_android_directory(revision), |
128 self.dartium_android_apk_filename(name, arch, mode)]) | 124 self.dartium_android_apk_filename(name, arch, mode)]) |
129 | 125 |
130 # Functions for querying gs:// directories | 126 # Functions for querying gs:// directories |
131 | 127 |
132 def dartium_directory(self, revision): | 128 def dartium_directory(self, revision): |
133 return self._variant_directory('dartium', revision) | 129 return self._variant_directory('dartium', revision) |
134 | 130 |
135 def dartium_android_directory(self, revision): | 131 def dartium_android_directory(self, revision): |
(...skipping 227 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
363 | 359 |
364 return checksum_filename | 360 return checksum_filename |
365 | 361 |
366 def GetChannelFromName(name): | 362 def GetChannelFromName(name): |
367 """Get the channel from the name. Bleeding edge builders don't | 363 """Get the channel from the name. Bleeding edge builders don't |
368 have a suffix.""" | 364 have a suffix.""" |
369 channel_name = string.split(name, '-').pop() | 365 channel_name = string.split(name, '-').pop() |
370 if channel_name in Channel.ALL_CHANNELS: | 366 if channel_name in Channel.ALL_CHANNELS: |
371 return channel_name | 367 return channel_name |
372 return Channel.BLEEDING_EDGE | 368 return Channel.BLEEDING_EDGE |
OLD | NEW |