Merge pull request #4362 from brave/mplesa-jenkins-android-core-github-upload
added github upload for android apks
This commit is contained in:
@@ -5,6 +5,8 @@
|
||||
/components/brave_rewards/resources/extension/brave_rewards/out/
|
||||
/components/brave_sync/extension/brave-sync/
|
||||
/components/brave_sync/extension/brave-crypto/
|
||||
/components/third_party/adblock/LICENSE
|
||||
/components/third_party/local-data/LICENSE
|
||||
/dist/
|
||||
/out/
|
||||
/vendor/*
|
||||
@@ -40,3 +42,4 @@ venv/
|
||||
*.rpm
|
||||
*.exe
|
||||
.storybook-out
|
||||
test_get_pkgs
|
||||
|
||||
@@ -1 +0,0 @@
|
||||
/LICENSE
|
||||
@@ -1 +0,0 @@
|
||||
/LICENSE
|
||||
+3
-3
@@ -15,10 +15,10 @@ def main():
|
||||
return either markdown or html for a particular Brave tag.
|
||||
|
||||
Example:
|
||||
python script/changelog.py -t refs/tags/v0.61.51 \
|
||||
python script/changelog.py -t refs/tags/v1.5.51 \
|
||||
-u https://raw.githubusercontent.com/brave/brave-browser/master/CHANGELOG.md -o markdown
|
||||
|
||||
## [0.61.51](https://github.com/brave/brave-browser/releases/tag/v0.61.51)
|
||||
## [1.5.51](https://github.com/brave/brave-browser/releases/tag/v1.5.51)
|
||||
|
||||
- Added new setting that allows Brave Rewards icon in the URL to be hidden if Rewards \
|
||||
is inactive. ([#2975](https://github.com/brave/brave-browser/issues/2975))
|
||||
@@ -67,7 +67,7 @@ def parse_args():
|
||||
help='Print debug statements')
|
||||
parser.add_argument('-o', '--output', help='Output format: markdown or html (required)', required=True)
|
||||
parser.add_argument('-t', '--tag',
|
||||
help='Brave version tag (allowed format: "v0.60.45" or "refs/tags/v0.60.45") (required)',
|
||||
help='Brave version tag (allowed format: "v1.5.45" or "refs/tags/v1.5.45") (required)',
|
||||
required=True)
|
||||
parser.add_argument('-u', '--url', help='URL for Brave Browser raw markdown file (required)', required=True)
|
||||
return parser.parse_args()
|
||||
|
||||
+16
-24
@@ -3,8 +3,6 @@
|
||||
import errno
|
||||
import json
|
||||
import os
|
||||
import platform
|
||||
import re
|
||||
import sys
|
||||
|
||||
PLATFORM = {
|
||||
@@ -32,14 +30,24 @@ SHALLOW_BRAVE_BROWSER_ROOT = os.path.abspath(
|
||||
verbose_mode = False
|
||||
|
||||
|
||||
def dist_dir():
|
||||
return os.path.join(output_dir(), 'dist')
|
||||
def dist_dir(target_os, target_arch):
|
||||
return os.path.join(output_dir(target_os, target_arch), 'dist')
|
||||
|
||||
|
||||
def output_dir():
|
||||
if get_target_arch() == 'x64':
|
||||
return os.path.join(CHROMIUM_ROOT, 'out', 'Release')
|
||||
return os.path.join(CHROMIUM_ROOT, 'out', 'Release_x86')
|
||||
def output_dir(target_os, target_arch):
|
||||
if target_os in ['android', 'ios']:
|
||||
target_os_prefix = target_os + '_'
|
||||
else:
|
||||
target_os_prefix = ''
|
||||
|
||||
if target_os_prefix:
|
||||
target_arch_suffix = '_' + target_arch
|
||||
elif target_arch != 'x64':
|
||||
target_arch_suffix = '_' + target_arch
|
||||
else:
|
||||
target_os_prefix = ''
|
||||
|
||||
return os.path.join(CHROMIUM_ROOT, 'out', target_os_prefix + 'Release' + target_arch_suffix)
|
||||
|
||||
|
||||
# Use brave-browser/package.json version for canonical version definition
|
||||
@@ -103,11 +111,6 @@ def get_platform_key():
|
||||
return PLATFORM
|
||||
|
||||
|
||||
def get_target_arch():
|
||||
return (os.environ['TARGET_ARCH'] if 'TARGET_ARCH' in os.environ
|
||||
else 'x64')
|
||||
|
||||
|
||||
def get_env_var(name):
|
||||
return (os.environ.get('BRAVE_' + name) or
|
||||
os.environ.get('npm_config_BRAVE_' + name, ''))
|
||||
@@ -121,14 +124,3 @@ def enable_verbose_mode():
|
||||
|
||||
def is_verbose_mode():
|
||||
return verbose_mode
|
||||
|
||||
|
||||
def get_zip_name(name, version, suffix=''):
|
||||
arch = get_target_arch()
|
||||
if arch == 'arm':
|
||||
arch += 'v7l'
|
||||
zip_name = '{0}-{1}-{2}-{3}'.format(name, version, get_platform_key(),
|
||||
arch)
|
||||
if suffix:
|
||||
zip_name += '-' + suffix
|
||||
return zip_name + '.zip'
|
||||
|
||||
@@ -7,18 +7,15 @@ import argparse
|
||||
import json
|
||||
import logging
|
||||
import os
|
||||
import requests
|
||||
import sys
|
||||
from argparse import RawTextHelpFormatter
|
||||
from lib.github import GitHub
|
||||
from lib.config import (PLATFORM, get_target_arch,
|
||||
get_env_var,
|
||||
get_zip_name, product_name,
|
||||
project_name, SOURCE_ROOT, dist_dir,
|
||||
from lib.helpers import *
|
||||
from lib.config import (PLATFORM, get_env_var, product_name,
|
||||
project_name, SOURCE_ROOT,
|
||||
output_dir, get_brave_version,
|
||||
get_raw_version)
|
||||
from lib.helpers import *
|
||||
import requests
|
||||
|
||||
from argparse import RawTextHelpFormatter
|
||||
|
||||
|
||||
def main():
|
||||
|
||||
@@ -337,7 +337,7 @@ def parse_args():
|
||||
parser.add_argument('-k', '--gpg_full_key_id', help='GPG full key id to use for signing '
|
||||
'packages', required=True)
|
||||
parser.add_argument(
|
||||
'-t', '--tag', help='The branch (actually tag) to download packages from GitHub. (i.e. v0.58.18)',
|
||||
'-t', '--tag', help='The branch (actually tag) to download packages from GitHub. (i.e. v1.5.18)',
|
||||
required=True)
|
||||
parser.add_argument('-p', '--gpg_passphrase',
|
||||
help='GPG passphrase to unlock signing keychain')
|
||||
|
||||
+99
-47
@@ -8,6 +8,7 @@ import sys
|
||||
import unittest
|
||||
import os
|
||||
import upload
|
||||
import shutil
|
||||
from githubmock import Repo, Release, Asset
|
||||
from mock import MagicMock
|
||||
|
||||
@@ -22,62 +23,69 @@ class TestGetBravePackages(unittest.TestCase):
|
||||
|
||||
def setUp(self):
|
||||
if not self._is_setup:
|
||||
shutil.rmtree(self.get_pkgs_dir)
|
||||
os.mkdir(self.get_pkgs_dir)
|
||||
android_dir = os.path.join(self.get_pkgs_dir, 'android')
|
||||
darwin_dir = os.path.join(self.get_pkgs_dir, 'darwin')
|
||||
linux_dir = os.path.join(self.get_pkgs_dir, 'linux')
|
||||
win32_dir = os.path.join(self.get_pkgs_dir, 'win32')
|
||||
if not os.path.isdir(self.get_pkgs_dir):
|
||||
os.mkdir(self.get_pkgs_dir)
|
||||
windows_dir = os.path.join(self.get_pkgs_dir, 'win32')
|
||||
if not os.path.isdir(android_dir):
|
||||
os.mkdir(android_dir)
|
||||
if not os.path.isdir(darwin_dir):
|
||||
os.mkdir(darwin_dir)
|
||||
if not os.path.isdir(linux_dir):
|
||||
os.mkdir(linux_dir)
|
||||
if not os.path.isdir(win32_dir):
|
||||
os.mkdir(win32_dir)
|
||||
if not os.path.isdir(windows_dir):
|
||||
os.mkdir(windows_dir)
|
||||
for arch in ['Modernarm', 'Modernx86', 'Monoarm', 'Monoarm64', 'Monox64', 'Monox86', 'arm', 'x86']:
|
||||
name_android = 'Brave' + arch + '.apk'
|
||||
with open(os.path.join(android_dir, name_android), 'w') as f:
|
||||
f.write(name_android + '\n')
|
||||
for channel in ['nightly', 'dev', 'beta', 'release']:
|
||||
channel_capitalized = channel.capitalize()
|
||||
channel_dashed = '' if (
|
||||
channel == 'release') else ('-' + channel)
|
||||
name_darwin = 'Brave Browser ' + channel_capitalized + '.dmg'
|
||||
name_darwin_pkg = 'Brave Browser ' + channel_capitalized + '.pkg'
|
||||
name_linux_deb = 'brave-browser' + channel_dashed + '_0.50.8_amd64.deb'
|
||||
name_linux_rpm = 'brave-browser' + channel_dashed + '-0.50.8-1.x86_64.rpm'
|
||||
with open(os.path.join(self.get_pkgs_dir, 'darwin', name_darwin), 'w') as f:
|
||||
name_linux_deb = 'brave-browser' + channel_dashed + '_1.5.8_amd64.deb'
|
||||
name_linux_rpm = 'brave-browser' + channel_dashed + '-1.5.8-1.x86_64.rpm'
|
||||
with open(os.path.join(darwin_dir, name_darwin), 'w') as f:
|
||||
f.write(name_darwin + '\n')
|
||||
with open(os.path.join(self.get_pkgs_dir, 'darwin', name_darwin_pkg), 'w') as f:
|
||||
with open(os.path.join(darwin_dir, name_darwin_pkg), 'w') as f:
|
||||
f.write(name_darwin_pkg + '\n')
|
||||
with open(os.path.join(self.get_pkgs_dir, 'linux', name_linux_deb), 'w') as f:
|
||||
with open(os.path.join(linux_dir, name_linux_deb), 'w') as f:
|
||||
f.write(name_linux_deb + '\n')
|
||||
with open(os.path.join(self.get_pkgs_dir, 'linux', name_linux_rpm), 'w') as f:
|
||||
with open(os.path.join(linux_dir, name_linux_rpm), 'w') as f:
|
||||
f.write(name_linux_rpm + '\n')
|
||||
for mode in ['Stub', 'Silent', 'Untagged', 'Standalone', 'StandaloneSilent', 'StandaloneUntagged']:
|
||||
name = 'BraveBrowser{}{}Setup_70_0_56_8.exe'.format(
|
||||
name = 'BraveBrowser{}{}Setup_70_1_5_8.exe'.format(
|
||||
mode if mode not in 'Stub' else '', channel_capitalized if channel != 'release' else '')
|
||||
name32 = 'BraveBrowser{}{}Setup32_70_0_56_8.exe'.format(
|
||||
name32 = 'BraveBrowser{}{}Setup32_70_1_5_8.exe'.format(
|
||||
mode if mode not in 'Stub' else '', channel_capitalized if channel != 'release' else '')
|
||||
with open(os.path.join(self.get_pkgs_dir, 'win32', name), 'w') as f:
|
||||
with open(os.path.join(windows_dir, name), 'w') as f:
|
||||
f.write(name + '\n')
|
||||
with open(os.path.join(self.get_pkgs_dir, 'win32', name32), 'w') as f:
|
||||
with open(os.path.join(windows_dir, name32), 'w') as f:
|
||||
f.write(name32 + '\n')
|
||||
self.__class__._is_setup = True
|
||||
|
||||
def test_only_returns_nightly_darwin_packages(self):
|
||||
upload.PLATFORM = 'darwin'
|
||||
pkgs = list(upload.get_brave_packages(os.path.join(
|
||||
self.get_pkgs_dir, upload.PLATFORM), 'nightly', '0.50.8'))
|
||||
self.get_pkgs_dir, upload.PLATFORM), 'nightly', '1.5.8', 'darwin'))
|
||||
self.assertEquals(pkgs, sorted(
|
||||
['Brave-Browser-Nightly.dmg', 'Brave-Browser-Nightly.pkg']))
|
||||
|
||||
def test_only_returns_dev_darwin_package(self):
|
||||
upload.PLATFORM = 'darwin'
|
||||
pkgs = list(upload.get_brave_packages(os.path.join(
|
||||
self.get_pkgs_dir, upload.PLATFORM), 'dev', '0.50.8'))
|
||||
self.get_pkgs_dir, upload.PLATFORM), 'dev', '1.5.8', 'darwin'))
|
||||
self.assertEquals(pkgs, sorted(
|
||||
['Brave-Browser-Dev.dmg', 'Brave-Browser-Dev.pkg']))
|
||||
|
||||
def test_only_returns_beta_darwin_package(self):
|
||||
upload.PLATFORM = 'darwin'
|
||||
pkgs = list(upload.get_brave_packages(
|
||||
os.path.join(self.get_pkgs_dir, upload.PLATFORM), 'beta', '0.50.8'))
|
||||
os.path.join(self.get_pkgs_dir, upload.PLATFORM), 'beta', '1.5.8', 'darwin'))
|
||||
self.assertEquals(pkgs, sorted(
|
||||
['Brave-Browser-Beta.dmg', 'Brave-Browser-Beta.pkg']))
|
||||
|
||||
@@ -85,7 +93,7 @@ class TestGetBravePackages(unittest.TestCase):
|
||||
upload.PLATFORM = 'darwin'
|
||||
pkgs = list(upload.get_brave_packages(
|
||||
os.path.join(self.get_pkgs_dir, upload.PLATFORM),
|
||||
'release', '0.50.8'))
|
||||
'release', '1.5.8', 'darwin'))
|
||||
self.assertEquals(pkgs, sorted(
|
||||
['Brave-Browser.dmg', 'Brave-Browser.pkg']))
|
||||
|
||||
@@ -93,43 +101,42 @@ class TestGetBravePackages(unittest.TestCase):
|
||||
upload.PLATFORM = 'linux'
|
||||
pkgs = list(upload.get_brave_packages(os.path.join(self.get_pkgs_dir,
|
||||
upload.PLATFORM),
|
||||
'nightly', '0.50.8'))
|
||||
'nightly', '1.5.8', 'darwin'))
|
||||
self.assertEquals(pkgs,
|
||||
sorted(['brave-browser-nightly-0.50.8-1.x86_64.rpm',
|
||||
'brave-browser-nightly_0.50.8_amd64.deb']))
|
||||
sorted(['brave-browser-nightly-1.5.8-1.x86_64.rpm',
|
||||
'brave-browser-nightly_1.5.8_amd64.deb']))
|
||||
|
||||
def test_only_returns_dev_linux_packages(self):
|
||||
upload.PLATFORM = 'linux'
|
||||
pkgs = list(upload.get_brave_packages(os.path.join(self.get_pkgs_dir,
|
||||
upload.PLATFORM),
|
||||
'dev', '0.50.8'))
|
||||
'dev', '1.5.8', 'linux'))
|
||||
self.assertEquals(pkgs,
|
||||
sorted(['brave-browser-dev-0.50.8-1.x86_64.rpm',
|
||||
'brave-browser-dev_0.50.8_amd64.deb']))
|
||||
sorted(['brave-browser-dev-1.5.8-1.x86_64.rpm',
|
||||
'brave-browser-dev_1.5.8_amd64.deb']))
|
||||
|
||||
def test_only_returns_beta_linux_packages(self):
|
||||
upload.PLATFORM = 'linux'
|
||||
pkgs = list(upload.get_brave_packages(os.path.join(self.get_pkgs_dir,
|
||||
upload.PLATFORM),
|
||||
'beta', '0.50.8'))
|
||||
'beta', '1.5.8', 'linux'))
|
||||
self.assertEquals(pkgs,
|
||||
sorted(['brave-browser-beta-0.50.8-1.x86_64.rpm',
|
||||
'brave-browser-beta_0.50.8_amd64.deb']))
|
||||
sorted(['brave-browser-beta-1.5.8-1.x86_64.rpm',
|
||||
'brave-browser-beta_1.5.8_amd64.deb']))
|
||||
|
||||
def test_only_returns_release_linux_packages(self):
|
||||
upload.PLATFORM = 'linux'
|
||||
pkgs = list(upload.get_brave_packages(os.path.join(self.get_pkgs_dir,
|
||||
upload.PLATFORM),
|
||||
'release', '0.50.8'))
|
||||
'release', '1.5.8', 'linux'))
|
||||
self.assertEquals(pkgs,
|
||||
sorted(['brave-browser-0.50.8-1.x86_64.rpm',
|
||||
'brave-browser_0.50.8_amd64.deb']))
|
||||
sorted(['brave-browser-1.5.8-1.x86_64.rpm',
|
||||
'brave-browser_1.5.8_amd64.deb']))
|
||||
|
||||
def test_only_returns_nightly_win_x64_packages(self):
|
||||
upload.PLATFORM = 'win32'
|
||||
os.environ['TARGET_ARCH'] = 'x64'
|
||||
pkgs = list(upload.get_brave_packages(os.path.join(
|
||||
self.get_pkgs_dir, upload.PLATFORM), 'nightly', '0.56.8'))
|
||||
self.get_pkgs_dir, upload.PLATFORM), 'nightly', '1.5.8', 'win32'))
|
||||
self.assertEquals(
|
||||
pkgs, sorted(['BraveBrowserNightlySetup.exe',
|
||||
'BraveBrowserSilentNightlySetup.exe',
|
||||
@@ -140,9 +147,8 @@ class TestGetBravePackages(unittest.TestCase):
|
||||
|
||||
def test_only_returns_nightly_win_ia32_packages(self):
|
||||
upload.PLATFORM = 'win32'
|
||||
os.environ['TARGET_ARCH'] = 'ia32'
|
||||
pkgs = list(upload.get_brave_packages(
|
||||
os.path.join(self.get_pkgs_dir, upload.PLATFORM), 'nightly', '0.56.8'))
|
||||
os.path.join(self.get_pkgs_dir, upload.PLATFORM), 'nightly', '1.5.8', 'win32', 'ia32'))
|
||||
self.assertEquals(
|
||||
pkgs, sorted(['BraveBrowserNightlySetup32.exe',
|
||||
'BraveBrowserSilentNightlySetup32.exe',
|
||||
@@ -153,9 +159,8 @@ class TestGetBravePackages(unittest.TestCase):
|
||||
|
||||
def test_only_returns_dev_win_x64_packages(self):
|
||||
upload.PLATFORM = 'win32'
|
||||
os.environ['TARGET_ARCH'] = 'x64'
|
||||
pkgs = list(upload.get_brave_packages(os.path.join(
|
||||
self.get_pkgs_dir, upload.PLATFORM), 'dev', '0.56.8'))
|
||||
self.get_pkgs_dir, upload.PLATFORM), 'dev', '1.5.8', 'win32'))
|
||||
self.assertEquals(
|
||||
pkgs, sorted(['BraveBrowserDevSetup.exe',
|
||||
'BraveBrowserSilentDevSetup.exe',
|
||||
@@ -166,9 +171,8 @@ class TestGetBravePackages(unittest.TestCase):
|
||||
|
||||
def test_only_returns_dev_win_ia32_packages(self):
|
||||
upload.PLATFORM = 'win32'
|
||||
os.environ['TARGET_ARCH'] = 'ia32'
|
||||
pkgs = list(upload.get_brave_packages(
|
||||
os.path.join(self.get_pkgs_dir, upload.PLATFORM), 'dev', '0.56.8'))
|
||||
os.path.join(self.get_pkgs_dir, upload.PLATFORM), 'dev', '1.5.8', 'win32', 'ia32'))
|
||||
self.assertEquals(
|
||||
pkgs, sorted(['BraveBrowserDevSetup32.exe',
|
||||
'BraveBrowserSilentDevSetup32.exe',
|
||||
@@ -179,10 +183,9 @@ class TestGetBravePackages(unittest.TestCase):
|
||||
|
||||
def test_only_returns_beta_win_x64_packages(self):
|
||||
upload.PLATFORM = 'win32'
|
||||
os.environ['TARGET_ARCH'] = 'x64'
|
||||
pkgs = list(upload.get_brave_packages(
|
||||
os.path.join(self.get_pkgs_dir, upload.PLATFORM),
|
||||
'beta', '0.56.8'))
|
||||
'beta', '1.5.8', 'win32'))
|
||||
self.assertEquals(
|
||||
pkgs, sorted(['BraveBrowserBetaSetup.exe',
|
||||
'BraveBrowserSilentBetaSetup.exe',
|
||||
@@ -193,10 +196,9 @@ class TestGetBravePackages(unittest.TestCase):
|
||||
|
||||
def test_only_returns_beta_win_ia32_packages(self):
|
||||
upload.PLATFORM = 'win32'
|
||||
os.environ['TARGET_ARCH'] = 'ia32'
|
||||
pkgs = list(upload.get_brave_packages(
|
||||
os.path.join(self.get_pkgs_dir, upload.PLATFORM),
|
||||
'beta', '0.56.8'))
|
||||
'beta', '1.5.8', 'win32', 'ia32'))
|
||||
self.assertEquals(
|
||||
pkgs, sorted(['BraveBrowserBetaSetup32.exe',
|
||||
'BraveBrowserSilentBetaSetup32.exe',
|
||||
@@ -207,10 +209,9 @@ class TestGetBravePackages(unittest.TestCase):
|
||||
|
||||
def test_only_returns_release_win_x64_packages(self):
|
||||
upload.PLATFORM = 'win32'
|
||||
os.environ['TARGET_ARCH'] = 'x64'
|
||||
pkgs = list(upload.get_brave_packages(
|
||||
os.path.join(self.get_pkgs_dir, upload.PLATFORM),
|
||||
'release', '0.56.8'))
|
||||
'release', '1.5.8', 'win32'))
|
||||
self.assertEquals(pkgs, sorted(['BraveBrowserSetup.exe',
|
||||
'BraveBrowserSilentSetup.exe',
|
||||
'BraveBrowserStandaloneSetup.exe',
|
||||
@@ -220,10 +221,9 @@ class TestGetBravePackages(unittest.TestCase):
|
||||
|
||||
def test_only_returns_release_win_ia32_packages(self):
|
||||
upload.PLATFORM = 'win32'
|
||||
os.environ['TARGET_ARCH'] = 'ia32'
|
||||
pkgs = list(upload.get_brave_packages(
|
||||
os.path.join(self.get_pkgs_dir, upload.PLATFORM),
|
||||
'release', '0.56.8'))
|
||||
'release', '1.5.8', 'win32', 'ia32'))
|
||||
self.assertEquals(pkgs, sorted(['BraveBrowserSetup32.exe',
|
||||
'BraveBrowserSilentSetup32.exe',
|
||||
'BraveBrowserStandaloneSetup32.exe',
|
||||
@@ -231,8 +231,60 @@ class TestGetBravePackages(unittest.TestCase):
|
||||
'BraveBrowserStandaloneUntaggedSetup32.exe',
|
||||
'BraveBrowserUntaggedSetup32.exe']))
|
||||
|
||||
def test_only_returns_android_packages(self):
|
||||
upload.PLATFORM = 'linux'
|
||||
pkgs = list(upload.get_brave_packages(os.path.join(self.get_pkgs_dir,
|
||||
'android'),
|
||||
'nightly', '1.5.8', 'android'))
|
||||
self.assertEquals(pkgs,
|
||||
sorted(['BraveModernarm.apk',
|
||||
'BraveModernx86.apk',
|
||||
'BraveMonoarm.apk',
|
||||
'BraveMonoarm64.apk',
|
||||
'BraveMonox64.apk',
|
||||
'BraveMonox86.apk',
|
||||
'Bravearm.apk',
|
||||
'Bravex86.apk']))
|
||||
|
||||
def test_only_returns_android_packages_arm(self):
|
||||
upload.PLATFORM = 'linux'
|
||||
pkgs = list(upload.get_brave_packages(os.path.join(self.get_pkgs_dir,
|
||||
'android'),
|
||||
'nightly', '1.5.8', 'android', 'arm'))
|
||||
self.assertEquals(pkgs,
|
||||
sorted(['BraveModernarm.apk',
|
||||
'BraveMonoarm.apk',
|
||||
'Bravearm.apk']))
|
||||
|
||||
def test_only_returns_android_packages_arm64(self):
|
||||
upload.PLATFORM = 'linux'
|
||||
pkgs = list(upload.get_brave_packages(os.path.join(self.get_pkgs_dir,
|
||||
'android'),
|
||||
'nightly', '1.5.8', 'android', 'arm64'))
|
||||
self.assertEquals(pkgs,
|
||||
sorted(['BraveMonoarm64.apk']))
|
||||
|
||||
def test_only_returns_android_packages(self):
|
||||
upload.PLATFORM = 'linux'
|
||||
pkgs = list(upload.get_brave_packages(os.path.join(self.get_pkgs_dir,
|
||||
'android'),
|
||||
'nightly', '1.5.8', 'android', 'x86'))
|
||||
self.assertEquals(pkgs,
|
||||
sorted(['BraveModernx86.apk',
|
||||
'BraveMonox86.apk',
|
||||
'Bravex86.apk']))
|
||||
|
||||
def test_only_returns_android_packages(self):
|
||||
upload.PLATFORM = 'linux'
|
||||
pkgs = list(upload.get_brave_packages(os.path.join(self.get_pkgs_dir,
|
||||
'android'),
|
||||
'nightly', '1.5.8', 'android', 'x64'))
|
||||
self.assertEquals(pkgs,
|
||||
sorted(['BraveMonox64.apk']))
|
||||
|
||||
# get an existing release (in draft status) from GitHub given a tag name
|
||||
|
||||
|
||||
class TestGetDraft(unittest.TestCase):
|
||||
def setUp(self):
|
||||
self.repo = Repo()
|
||||
|
||||
@@ -115,7 +115,7 @@ def parse_args():
|
||||
parser.add_argument('-d', '--debug', action='store_true',
|
||||
help='Print debug statements')
|
||||
parser.add_argument('-t', '--tag',
|
||||
help='Brave version tag (allowed format: "v0.60.45" or "refs/tags/v0.60.45") (required)',
|
||||
help='Brave version tag (allowed format: "v1.5.45" or "refs/tags/v1.5.45") (required)',
|
||||
required=True)
|
||||
parser.add_argument('-u', '--url', help='URL for Brave Browser raw markdown file (required)', required=True)
|
||||
return parser.parse_args()
|
||||
|
||||
+2
-2
@@ -89,7 +89,7 @@ def is_nightly(channel):
|
||||
return config.channel_names[0] == channel
|
||||
|
||||
|
||||
# given something like "0.60.2", return branch version ("0.60.x")
|
||||
# given something like "1.5.2", return branch version ("1.5.x")
|
||||
def get_current_version_branch(version):
|
||||
version = str(version)
|
||||
if version[0] == 'v':
|
||||
@@ -99,7 +99,7 @@ def get_current_version_branch(version):
|
||||
return '.'.join(parts)
|
||||
|
||||
|
||||
# given something like "0.60.x", get previous version ("0.59.x")
|
||||
# given something like "1.6.x", get previous version ("1.5.x")
|
||||
def get_previous_version_branch(version):
|
||||
version = str(version)
|
||||
if version[0] == 'v':
|
||||
|
||||
+90
-50
@@ -5,7 +5,6 @@
|
||||
|
||||
import argparse
|
||||
import errno
|
||||
import hashlib
|
||||
import logging
|
||||
import os
|
||||
import requests
|
||||
@@ -14,21 +13,13 @@ import shutil
|
||||
import subprocess
|
||||
import sys
|
||||
import tempfile
|
||||
|
||||
from lib.config import (PLATFORM, get_target_arch,
|
||||
get_env_var,
|
||||
get_zip_name, product_name, project_name,
|
||||
SOURCE_ROOT, dist_dir, output_dir, get_brave_version,
|
||||
get_raw_version)
|
||||
from lib.util import execute, parse_version, scoped_cwd, s3put
|
||||
from lib.helpers import *
|
||||
|
||||
from lib.github import GitHub
|
||||
from lib.helpers import *
|
||||
from lib.config import (PLATFORM, get_env_var, product_name,
|
||||
project_name, SOURCE_ROOT, dist_dir, output_dir,
|
||||
get_brave_version, get_platform_key, get_raw_version)
|
||||
from lib.util import execute, parse_version, scoped_cwd, s3put
|
||||
|
||||
DIST_NAME = get_zip_name(project_name(), get_brave_version())
|
||||
SYMBOLS_NAME = get_zip_name(project_name(), get_brave_version(), 'symbols')
|
||||
DSYM_NAME = get_zip_name(project_name(), get_brave_version(), 'dsym')
|
||||
PDB_NAME = get_zip_name(project_name(), get_brave_version(), 'pdb')
|
||||
|
||||
if os.environ.get('DEBUG_HTTP_HEADERS') == 'true':
|
||||
try:
|
||||
@@ -37,6 +28,23 @@ if os.environ.get('DEBUG_HTTP_HEADERS') == 'true':
|
||||
from httplib import HTTPConnection # python2
|
||||
|
||||
|
||||
def get_zip_name(name, version, target_arch='x64', suffix=''):
|
||||
arch = target_arch
|
||||
if arch == 'arm':
|
||||
arch += 'v7l'
|
||||
zip_name = '{0}-{1}-{2}-{3}'.format(name, version, get_platform_key(),
|
||||
arch)
|
||||
if suffix:
|
||||
zip_name += '-' + suffix
|
||||
return zip_name + '.zip'
|
||||
|
||||
|
||||
DIST_NAME = get_zip_name(project_name(), get_brave_version())
|
||||
SYMBOLS_NAME = get_zip_name(project_name(), get_brave_version(), 'symbols')
|
||||
DSYM_NAME = get_zip_name(project_name(), get_brave_version(), 'dsym')
|
||||
PDB_NAME = get_zip_name(project_name(), get_brave_version(), 'pdb')
|
||||
|
||||
|
||||
def main():
|
||||
args = parse_args()
|
||||
print('[INFO] Running upload...')
|
||||
@@ -61,39 +69,44 @@ def main():
|
||||
|
||||
print('[INFO] Uploading release {}'.format(release['tag_name']))
|
||||
# Upload Brave with GitHub Releases API.
|
||||
upload_brave(repo, release, os.path.join(dist_dir(), DIST_NAME), force=args.force)
|
||||
upload_brave(repo, release, os.path.join(dist_dir(), SYMBOLS_NAME), force=args.force)
|
||||
upload_brave(repo, release, os.path.join(dist_dir, DIST_NAME), force=args.force)
|
||||
upload_brave(repo, release, os.path.join(dist_dir, SYMBOLS_NAME), force=args.force)
|
||||
# if PLATFORM == 'darwin':
|
||||
# upload_brave(repo, release, os.path.join(dist_dir(), DSYM_NAME))
|
||||
# upload_brave(repo, release, os.path.join(dist_dir, DSYM_NAME))
|
||||
# elif PLATFORM == 'win32':
|
||||
# upload_brave(repo, release, os.path.join(dist_dir(), PDB_NAME))
|
||||
# upload_brave(repo, release, os.path.join(dist_dir, PDB_NAME))
|
||||
|
||||
pkgs = get_brave_packages(output_dir(), release_channel(), get_raw_version())
|
||||
out_dir = output_dir(args.target_os, args.target_arch)
|
||||
dist_dir = dist_dir(args.target_os, args.target_arch)
|
||||
pkgs = get_brave_packages(out_dir, release_channel(), get_raw_version(), args.target_os, args.target_arch, args.target_apk_base)
|
||||
|
||||
if PLATFORM == 'darwin':
|
||||
for pkg in pkgs:
|
||||
upload_brave(repo, release, os.path.join(output_dir(), pkg), force=args.force)
|
||||
upload_brave(repo, release, os.path.join(out_dir, pkg), force=args.force)
|
||||
elif PLATFORM == 'win32':
|
||||
if get_target_arch() == 'x64':
|
||||
upload_brave(repo, release, os.path.join(output_dir(), 'brave_installer.exe'),
|
||||
if args.target_arch == 'x64':
|
||||
upload_brave(repo, release, os.path.join(out_dir, 'brave_installer.exe'),
|
||||
'brave_installer-x64.exe', force=args.force)
|
||||
for pkg in pkgs:
|
||||
upload_brave(repo, release, os.path.join(output_dir(), pkg), force=args.force)
|
||||
upload_brave(repo, release, os.path.join(out_dir, pkg), force=args.force)
|
||||
else:
|
||||
upload_brave(repo, release, os.path.join(output_dir(), 'brave_installer.exe'),
|
||||
upload_brave(repo, release, os.path.join(out_dir, 'brave_installer.exe'),
|
||||
'brave_installer-ia32.exe', force=args.force)
|
||||
for pkg in pkgs:
|
||||
upload_brave(repo, release, os.path.join(output_dir(), pkg), force=args.force)
|
||||
upload_brave(repo, release, os.path.join(out_dir, pkg), force=args.force)
|
||||
else:
|
||||
if get_target_arch() == 'x64':
|
||||
if args.target_os == 'android':
|
||||
for pkg in pkgs:
|
||||
upload_brave(repo, release, os.path.join(output_dir(), pkg), force=args.force)
|
||||
upload_brave(repo, release, os.path.join(out_dir, pkg), force=args.force)
|
||||
if args.target_arch == 'x64':
|
||||
for pkg in pkgs:
|
||||
upload_brave(repo, release, os.path.join(out_dir, pkg), force=args.force)
|
||||
else:
|
||||
upload_brave(repo, release, os.path.join(output_dir(), 'brave-i386.rpm'), force=args.force)
|
||||
upload_brave(repo, release, os.path.join(output_dir(), 'brave-i386.deb'), force=args.force)
|
||||
upload_brave(repo, release, os.path.join(out_dir, 'brave-i386.rpm'), force=args.force)
|
||||
upload_brave(repo, release, os.path.join(out_dir, 'brave-i386.deb'), force=args.force)
|
||||
|
||||
# mksnapshot = get_zip_name('mksnapshot', get_brave_version())
|
||||
# upload_brave(repo, release, os.path.join(dist_dir(), mksnapshot))
|
||||
# upload_brave(repo, release, os.path.join(dist_dir, mksnapshot))
|
||||
|
||||
# if PLATFORM == 'win32' and not tag_exists:
|
||||
# # Upload PDBs to Windows symbol server.
|
||||
@@ -126,7 +139,7 @@ def debug_requests_off():
|
||||
requests_log.setLevel(logging.WARNING)
|
||||
|
||||
|
||||
def get_brave_packages(dir, channel, version):
|
||||
def get_brave_packages(dir, channel, version, target_os, target_arch='x64', target_apk_base=''):
|
||||
pkgs = []
|
||||
|
||||
def filecopy(file_path, file_desired):
|
||||
@@ -136,8 +149,7 @@ def get_brave_packages(dir, channel, version):
|
||||
shutil.copy(file_path, file_desired_path)
|
||||
return file_desired_path
|
||||
|
||||
channel_capitalized = '' if (
|
||||
channel == 'release') else channel.capitalize()
|
||||
channel_capitalized = '' if (channel == 'release') else channel.capitalize()
|
||||
for file in os.listdir(dir):
|
||||
if os.path.isfile(os.path.join(dir, file)):
|
||||
file_path = os.path.join(dir, file)
|
||||
@@ -146,7 +158,6 @@ def get_brave_packages(dir, channel, version):
|
||||
channel_capitalized_spaced = '' if (channel == 'release') else (' ' + channel_capitalized)
|
||||
file_dmg = 'Brave-Browser' + channel_capitalized_dashed + '.dmg'
|
||||
file_pkg = 'Brave-Browser' + channel_capitalized_dashed + '.pkg'
|
||||
|
||||
if re.match(r'Brave Browser' + channel_capitalized_spaced + r'.*\.dmg$', file):
|
||||
filecopy(file_path, file_dmg)
|
||||
pkgs.append(file_dmg)
|
||||
@@ -163,8 +174,43 @@ def get_brave_packages(dir, channel, version):
|
||||
pkgs.append(file)
|
||||
elif re.match(r'brave-browser' + channel_dashed + '-' + version + r'.*\.rpm$', file):
|
||||
pkgs.append(file)
|
||||
elif target_os == 'android':
|
||||
if target_arch == 'arm':
|
||||
if not target_apk_base:
|
||||
if re.match(r'Brave.*arm.apk$', file):
|
||||
pkgs.append(file)
|
||||
else:
|
||||
if target_apk_base == 'classic':
|
||||
if file == 'Bravearm.apk':
|
||||
pkgs.append(file)
|
||||
elif target_apk_base == 'modern':
|
||||
if file == 'BraveModernarm.apk':
|
||||
pkgs.append(file)
|
||||
elif target_apk_base == 'mono':
|
||||
if file == 'BraveMonoarm.apk':
|
||||
pkgs.append(file)
|
||||
elif target_arch == 'arm64':
|
||||
if file == 'BraveMonoarm64.apk':
|
||||
pkgs.append(file)
|
||||
elif target_arch == 'x86':
|
||||
if not target_apk_base:
|
||||
if re.match(r'Brave.*x86.apk$', file):
|
||||
pkgs.append(file)
|
||||
else:
|
||||
if target_apk_base == 'classic':
|
||||
if file == 'Bravex86.apk':
|
||||
pkgs.append(file)
|
||||
elif target_apk_base == 'modern':
|
||||
if file == 'BraveModernx86.apk':
|
||||
pkgs.append(file)
|
||||
elif target_apk_base == 'mono':
|
||||
if file == 'BraveMonox86.apk':
|
||||
pkgs.append(file)
|
||||
elif target_arch == 'x64':
|
||||
if file == 'BraveMonox64.apk':
|
||||
pkgs.append(file)
|
||||
elif PLATFORM == 'win32':
|
||||
arch = '32' if (get_target_arch() == 'ia32') else ''
|
||||
arch = '32' if (target_arch == 'ia32') else ''
|
||||
channel_arch_extension = channel_capitalized + 'Setup' + arch + '.exe'
|
||||
file_stub = 'BraveBrowser' + channel_arch_extension
|
||||
file_stub_silent = 'BraveBrowserSilent' + channel_arch_extension
|
||||
@@ -205,6 +251,15 @@ def parse_args():
|
||||
parser.add_argument('-v', '--version',
|
||||
help='Specify the version',
|
||||
default=get_brave_version())
|
||||
parser.add_argument('--target_os',
|
||||
help='Specify the target OS',
|
||||
default='')
|
||||
parser.add_argument('--target_arch',
|
||||
help='Specify the target OS',
|
||||
default='x64')
|
||||
parser.add_argument('--target_apk_base',
|
||||
help='Specify the target APK base',
|
||||
default='classic')
|
||||
return parser.parse_args()
|
||||
|
||||
|
||||
@@ -213,21 +268,6 @@ def run_python_script(script, *args):
|
||||
return execute([sys.executable, script_path] + list(args))
|
||||
|
||||
|
||||
def dist_newer_than_head():
|
||||
with scoped_cwd(SOURCE_ROOT):
|
||||
try:
|
||||
head_time = subprocess.check_output(['git', 'log',
|
||||
'--pretty=format:%at',
|
||||
'-n', '1']).strip()
|
||||
dist_time = os.path.getmtime(os.path.join(dist_dir(), DIST_NAME))
|
||||
except OSError as e:
|
||||
if e.errno != errno.ENOENT:
|
||||
raise
|
||||
return False
|
||||
|
||||
return dist_time > int(head_time)
|
||||
|
||||
|
||||
def get_text_with_editor(name):
|
||||
editor = os.environ.get('EDITOR', 'nano')
|
||||
initial_message = (
|
||||
|
||||
Reference in New Issue
Block a user