1
0
Fork 0

Fixes #1294: Renames nightly apks to follow the form "target.$arch.apk"

master
Mitchell Hentges 2019-04-01 10:56:12 +02:00 committed by Colin Lee
parent 471b08d97a
commit c284b0e22e
3 changed files with 13 additions and 28 deletions

View File

@ -183,12 +183,7 @@ tasks:
&& python automation/taskcluster/decision_task.py \
release \
--nightly \
--track ${track} \
--commit \
--output /opt/fenix/app/build/outputs/apk \
--apk armGreenfield/release/app-arm-greenfield-release-unsigned.apk \
--apk x86Greenfield/release/app-x86-greenfield-release-unsigned.apk \
--apk aarch64Greenfield/release/app-aarch64-greenfield-release-unsigned.apk
--track ${track}
artifacts:
public/task-graph.json:
type: file

View File

@ -74,17 +74,18 @@ def pr_or_push():
return (build_tasks, other_tasks)
def nightly(apks, track, commit):
def nightly(track):
is_staging = track == 'staging-nightly'
architectures = ['x86', 'arm', 'aarch64']
build_tasks = {}
signing_tasks = {}
push_tasks = {}
artifacts = ["public/{}".format(os.path.basename(apk)) for apk in apks]
build_task_id = taskcluster.slugId()
build_tasks[build_task_id] = BUILDER.craft_assemble_release_task(apks, is_staging)
build_tasks[build_task_id] = BUILDER.craft_assemble_release_task(architectures, is_staging)
artifacts = ["public/target.{}.apk".format(arch) for arch in architectures]
signing_task_id = taskcluster.slugId()
signing_tasks[signing_task_id] = BUILDER.craft_signing_task(
build_task_id,
@ -96,7 +97,6 @@ def nightly(apks, track, commit):
push_tasks[push_task_id] = BUILDER.craft_push_task(
signing_task_id,
apks=artifacts,
commit=commit,
is_staging=is_staging
)
@ -117,16 +117,6 @@ if __name__ == "__main__":
release_parser.add_argument(
'--track', action="store", choices=['nightly', 'staging-nightly'], required=True
)
release_parser.add_argument(
'--commit', action="store_true", help="commit the google play transaction"
)
release_parser.add_argument(
'--apk', dest="apks", metavar="path", action="append",
help="Path to APKs to sign and upload", required=True
)
release_parser.add_argument(
'--output', metavar="path", action="store", help="Path to the build output", required=True
)
result = parser.parse_args()
@ -135,8 +125,7 @@ if __name__ == "__main__":
if command == 'pr-or-push':
ordered_groups_of_tasks = pr_or_push()
elif command == 'release':
apks = ["{}/{}".format(result.output, apk) for apk in result.apks]
ordered_groups_of_tasks = nightly(apks, result.track, result.commit)
ordered_groups_of_tasks = nightly(result.track)
else:
raise Exception('Unsupported command "{}"'.format(command))

View File

@ -43,14 +43,15 @@ class TaskBuilder(object):
self.date = arrow.get(date_string)
self.trust_level = trust_level
def craft_assemble_release_task(self, apks, is_staging=False):
def craft_assemble_release_task(self, architectures, is_staging=False):
artifacts = {
'public/{}'.format(os.path.basename(apk)): {
'public/target.{}.apk'.format(arch): {
"type": 'file',
"path": apk,
"path": '/opt/fenix/app/build/outputs/apk/'
'{}Greenfield/release/app-{}-greenfield-release-unsigned.apk'.format(arch, arch),
"expires": taskcluster.stringDate(taskcluster.fromNow(DEFAULT_EXPIRES_IN)),
}
for apk in apks
for arch in architectures
}
sentry_secret = '{}project/mobile/fenix/sentry'.format(
@ -380,10 +381,10 @@ class TaskBuilder(object):
)
def craft_push_task(
self, signing_task_id, apks, is_staging=True, commit=False
self, signing_task_id, apks, is_staging=True
):
payload = {
"commit": commit,
"commit": True,
"google_play_track": 'nightly',
"upstreamArtifacts": [
{