(task, build, onDone, draftOnly)
| 1714 | } |
| 1715 | |
| 1716 | function uploadToHuaweiAppGallery (task, build, onDone, draftOnly) { |
| 1717 | (async () => { |
| 1718 | const sdkVariant = 'latest'; |
| 1719 | const abiVariant = 'universal'; |
| 1720 | const targetFiles = build.files[sdkVariant][abiVariant]; |
| 1721 | // Step 1. Obtain access_token |
| 1722 | const auth = await obtainHuaweiAccessToken(); |
| 1723 | if (!auth || !auth.access_token) { |
| 1724 | onDone(1); |
| 1725 | return; |
| 1726 | } |
| 1727 | // Step 2. Obtain upload_url |
| 1728 | const upload = await obtainHuaweiUploadUrl(auth.access_token); |
| 1729 | if (!upload || !upload.uploadUrl || !upload.authCode) { |
| 1730 | onDone(1); |
| 1731 | return; |
| 1732 | } |
| 1733 | // Step 3. Upload APK to the provided URL |
| 1734 | const uploadedFile = await uploadHuaweiApk( |
| 1735 | build, |
| 1736 | targetFiles, |
| 1737 | auth.access_token, |
| 1738 | upload.uploadUrl, |
| 1739 | upload.authCode |
| 1740 | ); |
| 1741 | if (!uploadedFile) { |
| 1742 | onDone(1); |
| 1743 | return; |
| 1744 | } |
| 1745 | const fileInfo = uploadedFile.result.UploadFileRsp.fileInfoList[0]; |
| 1746 | |
| 1747 | // Step 4. Update file info |
| 1748 | const updatedFileInfo = await updateHuaweiAppFileInfo( |
| 1749 | build, |
| 1750 | targetFiles, |
| 1751 | auth.access_token, |
| 1752 | fileInfo |
| 1753 | ); |
| 1754 | if (!updatedFileInfo) { |
| 1755 | onDone(1); |
| 1756 | return; |
| 1757 | } |
| 1758 | |
| 1759 | // Step 5. Update change logs |
| 1760 | if (build.releaseNotes && build.releaseNotes.length > 0) { |
| 1761 | for (let index = 0; index < build.releaseNotes.length; index++) { |
| 1762 | const releaseNotes = build.releaseNotes[index]; |
| 1763 | let changeLogText = releaseNotes.text; |
| 1764 | if (changeLogText.length > 500) { |
| 1765 | task.logPrivately(releaseNotes.language + ' did not fit'); |
| 1766 | changeLogText = build.fallbackReleaseNotes || ''; |
| 1767 | } |
| 1768 | // lang String(64): Language. https://developer.huawei.com/consumer/en/doc/development/AppGallery-connect-References/agcapi-reference-langtype-0000001158245079 |
| 1769 | // appName String(64): App name in a language. This parameter is mandatory when a language type is added. |
| 1770 | // appDesc String(8000): Full introduction in a language. |
| 1771 | // briefInfo String(80): Brief introduction in a language. |
| 1772 | // newFeatures String(500): New features in a language. |
| 1773 | await updateHuaweiAppLanguageInfo( |
no test coverage detected