Closed Bug 1491508 Opened 6 years ago Closed 6 years ago

Bustage APKs version codes are not correctly ordered. Expected order: ('armeabi-v7a', 'x86'). Order found: ('armeabi-v7a', 'x86', 'x86_64')

Categories

(Firefox Build System :: Android Studio and Gradle Integration, defect)

defect
Not set
normal

Tracking

(Not tracked)

RESOLVED DUPLICATE of bug 1490502

People

(Reporter: bogdan_tara, Unassigned)

References

Details

Failure log:
https://treeherder.mozilla.org/logviewer.html#?job_id=199281622&repo=mozilla-central

https://taskcluster-artifacts.net/Xd84iqPyTmyz4kxCwPt5TQ/0/public/logs/live_backing.log


2018-09-14 11:11:16,007 - scriptworker.client - DEBUG - Task is validated against this schema: {'title': 'Taskcluster PushAPK task minimal schema', 'type': 'object', 'properties': {'dependencies': {'type': 'array', 'minItems': 1, 'uniqueItems': True, 'items': {'type': 'string'}}, 'scopes': {'type': 'array', 'minItems': 1, 'uniqueItems': True, 'items': {'type': 'string'}}, 'payload': {'type': 'object', 'properties': {'upstreamArtifacts': {'type': 'array', 'items': {'type': 'object', 'properties': {'taskType': {'type': 'string'}, 'taskId': {'type': 'string'}, 'paths': {'type': 'array', 'minItems': 1, 'uniqueItems': True, 'items': {'type': 'string'}}, 'optional': {'type': 'boolean'}}, 'required': ['taskId', 'taskType', 'paths'], 'additionalProperties': False}, 'minItems': 1, 'uniqueItems': True}, 'google_play_track': {'type': 'string'}, 'rollout_percentage': {'type': 'integer', 'minimum': 0, 'maximum': 100}, 'commit': {'type': 'boolean'}}, 'required': ['upstreamArtifacts', 'google_play_track'], 'additionalProperties': False}}, 'required': ['dependencies', 'scopes', 'payload']}
2018-09-14 11:11:16,012 - asyncio - DEBUG - Using selector: EpollSelector
2018-09-14 11:11:16,013 - pushapkscript.script - WARNING - You will publish APKs to Google Play. This action is irreversible,if no error is detected either by this script or by Google Play.
2018-09-14 11:11:16,014 - pushapkscript.script - INFO - Verifying upstream artifacts...
2018-09-14 11:11:16,015 - pushapkscript.script - INFO - Verifying APKs' signatures...
2018-09-14 11:11:17,550 - pushapkscript.jarsigner - INFO - The signature of "/builds/scriptworker/work/cot/Z4i9TsH2SgOhR92dEd5-9g/public/build/target.apk" comes from the correct alias "nightly"
2018-09-14 11:11:17,557 - pushapkscript.jarsigner - INFO - The signature of "/builds/scriptworker/work/cot/Z4i9TsH2SgOhR92dEd5-9g/public/build/target.apk" contains the correct digest algorithm
2018-09-14 11:11:19,149 - pushapkscript.jarsigner - INFO - The signature of "/builds/scriptworker/work/cot/X4Sl9lEqSH-ZKQvnzGywGg/public/build/target.apk" comes from the correct alias "nightly"
2018-09-14 11:11:19,155 - pushapkscript.jarsigner - INFO - The signature of "/builds/scriptworker/work/cot/X4Sl9lEqSH-ZKQvnzGywGg/public/build/target.apk" contains the correct digest algorithm
2018-09-14 11:11:20,729 - pushapkscript.jarsigner - INFO - The signature of "/builds/scriptworker/work/cot/VGzVW9u2TmS7Lc_uX9K_YQ/public/build/target.apk" comes from the correct alias "nightly"
2018-09-14 11:11:20,735 - pushapkscript.jarsigner - INFO - The signature of "/builds/scriptworker/work/cot/VGzVW9u2TmS7Lc_uX9K_YQ/public/build/target.apk" contains the correct digest algorithm
2018-09-14 11:11:20,736 - pushapkscript.script - INFO - Finding whether Google Play strings can be updated...
2018-09-14 11:11:20,737 - pushapkscript.googleplay - INFO - Using "/builds/scriptworker/work/cot/Y-Oi9NCIQlWzrknP0BbMVA/public/google_play_strings.json" to update Google Play listings and what's new section.
2018-09-14 11:11:20,738 - pushapkscript.script - INFO - Delegating publication to mozapkpublisher...
2018-09-14 11:11:20,999 - mozapkpublisher.common.base - DEBUG - dict_ converted into these args: ['--commit', '--credentials', '/builds/scriptworker/aurora.p12', '--service-account', 'nightly-pushapkworker-1@boxwood-axon-825.iam.gserviceaccount.com', '--track', 'beta', '--update-gp-strings-from-file', '/builds/scriptworker/work/cot/Y-Oi9NCIQlWzrknP0BbMVA/public/google_play_strings.json', '/builds/scriptworker/work/cot/VGzVW9u2TmS7Lc_uX9K_YQ/public/build/target.apk', '/builds/scriptworker/work/cot/X4Sl9lEqSH-ZKQvnzGywGg/public/build/target.apk', '/builds/scriptworker/work/cot/Z4i9TsH2SgOhR92dEd5-9g/public/build/target.apk']
2018-09-14 11:11:21,001 - mozapkpublisher.common.apk.extractor - INFO - Extracting metadata from a copy of "/builds/scriptworker/work/cot/VGzVW9u2TmS7Lc_uX9K_YQ/public/build/target.apk"...
2018-09-14 11:11:21,322 - mozapkpublisher.common.apk.extractor - INFO - Extracting metadata from a copy of "/builds/scriptworker/work/cot/X4Sl9lEqSH-ZKQvnzGywGg/public/build/target.apk"...
2018-09-14 11:11:21,634 - mozapkpublisher.common.apk.extractor - INFO - Extracting metadata from a copy of "/builds/scriptworker/work/cot/Z4i9TsH2SgOhR92dEd5-9g/public/build/target.apk"...
2018-09-14 11:11:21,974 - mozapkpublisher.common.apk.checker - INFO - Checking APKs' metadata and content...
2018-09-14 11:11:21,975 - mozapkpublisher.common.apk.checker - INFO - All APKs have the same package name: org.mozilla.fennec_aurora
2018-09-14 11:11:21,976 - mozapkpublisher.common.apk.checker - INFO - All APKs have the same Firefox version: 64.0a1
2018-09-14 11:11:21,976 - mozapkpublisher.common.apk.checker - INFO - Firefox version "64.0a1" matches package name "org.mozilla.fennec_aurora"
2018-09-14 11:11:21,977 - mozapkpublisher.common.apk.checker - INFO - All APKs have the same Firefox BuildID: 20180914100149
2018-09-14 11:11:21,978 - mozapkpublisher.common.exceptions - CRITICAL - APKs version codes are not correctly ordered. Expected order: ('armeabi-v7a', 'x86'). Order found: ('armeabi-v7a', 'x86', 'x86_64'). APKs metadata: {'/builds/scriptworker/work/cot/VGzVW9u2TmS7Lc_uX9K_YQ/public/build/target.apk': {'package_name': 'org.mozilla.fennec_aurora', 'api_level': 16, 'version_code': '2015582037', 'architecture': 'x86', 'firefox_version': '64.0a1', 'firefox_build_id': '20180914100149', 'locales': ('an', 'ar', 'as', 'ast', 'az', 'be', 'bg', 'bn-BD', 'bn-IN', 'br', 'bs', 'ca', 'cak', 'cs', 'cy', 'da', 'de', 'dsb', 'el', 'en-CA', 'en-GB', 'en-US', 'en-ZA', 'eo', 'es-AR', 'es-CL', 'es-ES', 'es-MX', 'et', 'eu', 'fa', 'ff', 'fi', 'fr', 'fy-NL', 'ga-IE', 'gd', 'gl', 'gn', 'gu-IN', 'he', 'hi-IN', 'hr', 'hsb', 'hu', 'hy-AM', 'id', 'is', 'it', 'ja', 'ka', 'kab', 'kk', 'kn', 'ko', 'lij', 'lo', 'lt', 'lv', 'mai', 'ml', 'mr', 'ms', 'my', 'nb-NO', 'ne-NP', 'nl', 'nn-NO', 'oc', 'or', 'pa-IN', 'pl', 'pt-BR', 'pt-PT', 'rm', 'ro', 'ru', 'sk', 'sl', 'son', 'sq', 'sr', 'sv-SE', 'ta', 'te', 'th', 'tr', 'trs', 'uk', 'ur', 'uz', 'vi', 'wo', 'xh', 'zam', 'zh-CN', 'zh-TW')}, '/builds/scriptworker/work/cot/X4Sl9lEqSH-ZKQvnzGywGg/public/build/target.apk': {'package_name': 'org.mozilla.fennec_aurora', 'api_level': 16, 'version_code': '2015582033', 'architecture': 'armeabi-v7a', 'firefox_version': '64.0a1', 'firefox_build_id': '20180914100149', 'locales': ('an', 'ar', 'as', 'ast', 'az', 'be', 'bg', 'bn-BD', 'bn-IN', 'br', 'bs', 'ca', 'cak', 'cs', 'cy', 'da', 'de', 'dsb', 'el', 'en-CA', 'en-GB', 'en-US', 'en-ZA', 'eo', 'es-AR', 'es-CL', 'es-ES', 'es-MX', 'et', 'eu', 'fa', 'ff', 'fi', 'fr', 'fy-NL', 'ga-IE', 'gd', 'gl', 'gn', 'gu-IN', 'he', 'hi-IN', 'hr', 'hsb', 'hu', 'hy-AM', 'id', 'is', 'it', 'ja', 'ka', 'kab', 'kk', 'kn', 'ko', 'lij', 'lo', 'lt', 'lv', 'mai', 'ml', 'mr', 'ms', 'my', 'nb-NO', 'ne-NP', 'nl', 'nn-NO', 'oc', 'or', 'pa-IN', 'pl', 'pt-BR', 'pt-PT', 'rm', 'ro', 'ru', 'sk', 'sl', 'son', 'sq', 'sr', 'sv-SE', 'ta', 'te', 'th', 'tr', 'trs', 'uk', 'ur', 'uz', 'vi', 'wo', 'xh', 'zam', 'zh-CN', 'zh-TW')}, '/builds/scriptworker/work/cot/Z4i9TsH2SgOhR92dEd5-9g/public/build/target.apk': {'package_name': 'org.mozilla.fennec_aurora', 'api_level': 21, 'version_code': '2015582039', 'architecture': 'x86_64', 'firefox_version': '64.0a1', 'firefox_build_id': '20180914100149', 'locales': ('an', 'ar', 'as', 'ast', 'az', 'be', 'bg', 'bn-BD', 'bn-IN', 'br', 'bs', 'ca', 'cak', 'cs', 'cy', 'da', 'de', 'dsb', 'el', 'en-CA', 'en-GB', 'en-US', 'en-ZA', 'eo', 'es-AR', 'es-CL', 'es-ES', 'es-MX', 'et', 'eu', 'fa', 'ff', 'fi', 'fr', 'fy-NL', 'ga-IE', 'gd', 'gl', 'gn', 'gu-IN', 'he', 'hi-IN', 'hr', 'hsb', 'hu', 'hy-AM', 'id', 'is', 'it', 'ja', 'ka', 'kab', 'kk', 'kn', 'ko', 'lij', 'lo', 'lt', 'lv', 'mai', 'ml', 'mr', 'ms', 'my', 'nb-NO', 'ne-NP', 'nl', 'nn-NO', 'oc', 'or', 'pa-IN', 'pl', 'pt-BR', 'pt-PT', 'rm', 'ro', 'ru', 'sk', 'sl', 'son', 'sq', 'sr', 'sv-SE', 'ta', 'te', 'th', 'tr', 'trs', 'uk', 'ur', 'uz', 'vi', 'wo', 'xh', 'zam', 'zh-CN', 'zh-TW')}}
Traceback (most recent call last):
  File "/builds/scriptworker/bin/pushapkscript", line 11, in <module>
    load_entry_point('pushapkscript==0.8.0', 'console_scripts', 'pushapkscript')()
  File "/builds/scriptworker/lib/python3.6/site-packages/pushapkscript/script.py", line 72, in main
    client.sync_main(async_main, config_path=config_path, default_config=get_default_config())
  File "/builds/scriptworker/lib/python3.6/site-packages/scriptworker/client.py", line 164, in sync_main
    loop.run_until_complete(_handle_asyncio_loop(async_main, context))
  File "/tools/python36/lib/python3.6/asyncio/base_events.py", line 468, in run_until_complete
    return future.result()
  File "/builds/scriptworker/lib/python3.6/site-packages/scriptworker/client.py", line 203, in _handle_asyncio_loop
    await async_main(context)
  File "/builds/scriptworker/lib/python3.6/site-packages/pushapkscript/script.py", line 43, in async_main
    context, all_apks_paths, google_play_strings_path,
  File "/builds/scriptworker/lib/python3.6/site-packages/pushapkscript/googleplay.py", line 19, in publish_to_googleplay
    push_apk.run()
  File "/builds/scriptworker/lib/python3.6/site-packages/mozapkpublisher/push_apk.py", line 84, in run
    checker.cross_check_apks(apks_metadata_per_paths)
  File "/builds/scriptworker/lib/python3.6/site-packages/mozapkpublisher/common/apk/checker.py", line 35, in cross_check_apks
    cross_check_fennec_apks(apks_metadata_per_paths)
  File "/builds/scriptworker/lib/python3.6/site-packages/mozapkpublisher/common/apk/checker.py", line 48, in cross_check_fennec_apks
    _check_apks_version_codes_are_correctly_ordered(apks_metadata_per_paths)
  File "/builds/scriptworker/lib/python3.6/site-packages/mozapkpublisher/common/apk/checker.py", line 124, in _check_apks_version_codes_are_correctly_ordered
    _ARCHITECTURE_ORDER_REGARDING_VERSION_CODE, sorted_architectures_per_version_code, apks_metadata_per_paths
mozapkpublisher.common.exceptions.BadSetOfApks: APKs version codes are not correctly ordered. Expected order: ('armeabi-v7a', 'x86'). Order found: ('armeabi-v7a', 'x86', 'x86_64'). APKs metadata: {'/builds/scriptworker/work/cot/VGzVW9u2TmS7Lc_uX9K_YQ/public/build/target.apk': {'package_name': 'org.mozilla.fennec_aurora', 'api_level': 16, 'version_code': '2015582037', 'architecture': 'x86', 'firefox_version': '64.0a1', 'firefox_build_id': '20180914100149', 'locales': ('an', 'ar', 'as', 'ast', 'az', 'be', 'bg', 'bn-BD', 'bn-IN', 'br', 'bs', 'ca', 'cak', 'cs', 'cy', 'da', 'de', 'dsb', 'el', 'en-CA', 'en-GB', 'en-US', 'en-ZA', 'eo', 'es-AR', 'es-CL', 'es-ES', 'es-MX', 'et', 'eu', 'fa', 'ff', 'fi', 'fr', 'fy-NL', 'ga-IE', 'gd', 'gl', 'gn', 'gu-IN', 'he', 'hi-IN', 'hr', 'hsb', 'hu', 'hy-AM', 'id', 'is', 'it', 'ja', 'ka', 'kab', 'kk', 'kn', 'ko', 'lij', 'lo', 'lt', 'lv', 'mai', 'ml', 'mr', 'ms', 'my', 'nb-NO', 'ne-NP', 'nl', 'nn-NO', 'oc', 'or', 'pa-IN', 'pl', 'pt-BR', 'pt-PT', 'rm', 'ro', 'ru', 'sk', 'sl', 'son', 'sq', 'sr', 'sv-SE', 'ta', 'te', 'th', 'tr', 'trs', 'uk', 'ur', 'uz', 'vi', 'wo', 'xh', 'zam', 'zh-CN', 'zh-TW')}, '/builds/scriptworker/work/cot/X4Sl9lEqSH-ZKQvnzGywGg/public/build/target.apk': {'package_name': 'org.mozilla.fennec_aurora', 'api_level': 16, 'version_code': '2015582033', 'architecture': 'armeabi-v7a', 'firefox_version': '64.0a1', 'firefox_build_id': '20180914100149', 'locales': ('an', 'ar', 'as', 'ast', 'az', 'be', 'bg', 'bn-BD', 'bn-IN', 'br', 'bs', 'ca', 'cak', 'cs', 'cy', 'da', 'de', 'dsb', 'el', 'en-CA', 'en-GB', 'en-US', 'en-ZA', 'eo', 'es-AR', 'es-CL', 'es-ES', 'es-MX', 'et', 'eu', 'fa', 'ff', 'fi', 'fr', 'fy-NL', 'ga-IE', 'gd', 'gl', 'gn', 'gu-IN', 'he', 'hi-IN', 'hr', 'hsb', 'hu', 'hy-AM', 'id', 'is', 'it', 'ja', 'ka', 'kab', 'kk', 'kn', 'ko', 'lij', 'lo', 'lt', 'lv', 'mai', 'ml', 'mr', 'ms', 'my', 'nb-NO', 'ne-NP', 'nl', 'nn-NO', 'oc', 'or', 'pa-IN', 'pl', 'pt-BR', 'pt-PT', 'rm', 'ro', 'ru', 'sk', 'sl', 'son', 'sq', 'sr', 'sv-SE', 'ta', 'te', 'th', 'tr', 'trs', 'uk', 'ur', 'uz', 'vi', 'wo', 'xh', 'zam', 'zh-CN', 'zh-TW')}, '/builds/scriptworker/work/cot/Z4i9TsH2SgOhR92dEd5-9g/public/build/target.apk': {'package_name': 'org.mozilla.fennec_aurora', 'api_level': 21, 'version_code': '2015582039', 'architecture': 'x86_64', 'firefox_version': '64.0a1', 'firefox_build_id': '20180914100149', 'locales': ('an', 'ar', 'as', 'ast', 'az', 'be', 'bg', 'bn-BD', 'bn-IN', 'br', 'bs', 'ca', 'cak', 'cs', 'cy', 'da', 'de', 'dsb', 'el', 'en-CA', 'en-GB', 'en-US', 'en-ZA', 'eo', 'es-AR', 'es-CL', 'es-ES', 'es-MX', 'et', 'eu', 'fa', 'ff', 'fi', 'fr', 'fy-NL', 'ga-IE', 'gd', 'gl', 'gn', 'gu-IN', 'he', 'hi-IN', 'hr', 'hsb', 'hu', 'hy-AM', 'id', 'is', 'it', 'ja', 'ka', 'kab', 'kk', 'kn', 'ko', 'lij', 'lo', 'lt', 'lv', 'mai', 'ml', 'mr', 'ms', 'my', 'nb-NO', 'ne-NP', 'nl', 'nn-NO', 'oc', 'or', 'pa-IN', 'pl', 'pt-BR', 'pt-PT', 'rm', 'ro', 'ru', 'sk', 'sl', 'son', 'sq', 'sr', 'sv-SE', 'ta', 'te', 'th', 'tr', 'trs', 'uk', 'ur', 'uz', 'vi', 'wo', 'xh', 'zam', 'zh-CN', 'zh-TW')}}
exit code: 1
Sorry, i'm not sure about the component.
OK, this looks like bustage from jchen's patch to enable x86_64: https://bugzilla.mozilla.org/show_bug.cgi?id=1480834.

What it's really showing is the tight coupling between GeckoView and Fennec: we really want to build an x86_64 GV; we really don't want to publish an x86_64 Fennec.  I'm not sure we can do the former and not the latter without some dirty hacks in the build system; I think I'd prefer those toggles to live in the APK publishing system (and TC job descriptions) if possible.

jlorenzo: you probably know the most about fixing the APK pusher to handle new APKs, which is the minimum required here.  And you probably also know the most about filtering outbound APKs.  Do we have something built for not publishing particular Fennec APKs already?  Maybe we do this with aarch64 APKs, where they're built but not published yet?  Can we do the same for x86_64?
Blocks: 1480834
Flags: needinfo?(nchen)
Flags: needinfo?(jlorenzo)
I think this was fixed by bug 1490502
Status: NEW → RESOLVED
Closed: 6 years ago
Flags: needinfo?(nchen)
Flags: needinfo?(jlorenzo)
Resolution: --- → DUPLICATE
(In reply to Jim Chen [:jchen] [:darchons] from comment #4)
> I think this was fixed by bug 1490502

Beautiful, and the work-around already exists \o/
Product: Firefox for Android → Firefox Build System
You need to log in before you can comment on or make changes to this bug.