Merge pull request #4362 from brave/mplesa-jenkins-android-core-github-upload

added github upload for android apks
This commit is contained in:
Mihai PLESA
2020-01-15 11:50:34 +00:00
committed by GitHub
11 changed files with 220 additions and 138 deletions
+3
View File
@@ -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
View File
@@ -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
View File
@@ -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'
+5 -8
View File
@@ -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():
+1 -1
View File
@@ -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
View File
@@ -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()
+1 -1
View File
@@ -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
View File
@@ -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
View File
@@ -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 = (