mirror of
https://github.com/Swiftgram/Telegram-iOS.git
synced 2025-06-16 05:55:20 +00:00
Update build scripts
This commit is contained in:
parent
9f94d42420
commit
c5e54277f7
@ -110,7 +110,7 @@ deploy_beta_testflight:
|
|||||||
except:
|
except:
|
||||||
- tags
|
- tags
|
||||||
script:
|
script:
|
||||||
- echo done #PYTHONPATH="$PYTHONPATH:/darwin-containers" python3 -u build-system/Make/Make.py remote-deploy-testflight --darwinContainersHost="http://host.docker.internal:8650" --ipa="build/artifacts/Telegram.ipa" --dsyms="build/artifacts/Telegram.DSYMs.zip"
|
- PYTHONPATH="$PYTHONPATH:/darwin-containers" python3 -u build-system/Make/Make.py remote-deploy-testflight --darwinContainersHost="http://host.docker.internal:8650" --ipa="build/artifacts/Telegram.ipa" --dsyms="build/artifacts/Telegram.DSYMs.zip"
|
||||||
environment:
|
environment:
|
||||||
name: testflight_llc
|
name: testflight_llc
|
||||||
|
|
||||||
@ -126,7 +126,7 @@ verifysanity_beta_testflight:
|
|||||||
script:
|
script:
|
||||||
- rm -rf build/verify-input && mkdir -p build/verify-input && mv build/artifacts/Telegram.ipa build/verify-input/TelegramVerifySource.ipa
|
- rm -rf build/verify-input && mkdir -p build/verify-input && mv build/artifacts/Telegram.ipa build/verify-input/TelegramVerifySource.ipa
|
||||||
- PYTHONPATH="$PYTHONPATH:/darwin-containers" python3 -u build-system/Make/Make.py remote-build --darwinContainersHost="http://host.docker.internal:8650" --cacheHost="$TELEGRAM_BAZEL_CACHE_HOST" --configurationPath="build-system/appstore-configuration.json" --codesigningInformationPath=build-system/fake-codesigning --configuration=release_arm64
|
- PYTHONPATH="$PYTHONPATH:/darwin-containers" python3 -u build-system/Make/Make.py remote-build --darwinContainersHost="http://host.docker.internal:8650" --cacheHost="$TELEGRAM_BAZEL_CACHE_HOST" --configurationPath="build-system/appstore-configuration.json" --codesigningInformationPath=build-system/fake-codesigning --configuration=release_arm64
|
||||||
- python3 tools/ipadiff.py build/artifacts/Telegram.ipa build/verify-input/TelegramVerifySource.ipa
|
- PYTHONPATH="$PYTHONPATH:/darwin-containers" python3 -u build-system/Make/Make.py remote-ipa-diff --darwinContainersHost="http://host.docker.internal:8650" --ipa1="build/artifacts/Telegram.ipa" --ipa2="build/verify-input/TelegramVerifySource.ipa"
|
||||||
- if [ $? -ne 0 ]; then; echo "Verification failed"; mkdir -p build/verifysanity_artifacts; cp build/artifacts/Telegram.ipa build/verifysanity_artifacts/; exit 1; fi
|
- if [ $? -ne 0 ]; then; echo "Verification failed"; mkdir -p build/verifysanity_artifacts; cp build/artifacts/Telegram.ipa build/verifysanity_artifacts/; exit 1; fi
|
||||||
environment:
|
environment:
|
||||||
name: testflight_llc
|
name: testflight_llc
|
||||||
@ -148,7 +148,7 @@ verify_beta_testflight:
|
|||||||
script:
|
script:
|
||||||
- rm -rf build/verify-input && mkdir -p build/verify-input && mv build/artifacts/Telegram.ipa build/verify-input/TelegramVerifySource.ipa
|
- rm -rf build/verify-input && mkdir -p build/verify-input && mv build/artifacts/Telegram.ipa build/verify-input/TelegramVerifySource.ipa
|
||||||
- PYTHONPATH="$PYTHONPATH:/darwin-containers" python3 -u build-system/Make/Make.py remote-build --darwinContainersHost="http://host.docker.internal:8650" --configurationPath="build-system/appstore-configuration.json" --codesigningInformationPath=build-system/fake-codesigning --configuration=release_arm64
|
- PYTHONPATH="$PYTHONPATH:/darwin-containers" python3 -u build-system/Make/Make.py remote-build --darwinContainersHost="http://host.docker.internal:8650" --configurationPath="build-system/appstore-configuration.json" --codesigningInformationPath=build-system/fake-codesigning --configuration=release_arm64
|
||||||
- python3 tools/ipadiff.py build/artifacts/Telegram.ipa build/verify-input/TelegramVerifySource.ipa
|
- PYTHONPATH="$PYTHONPATH:/darwin-containers" python3 -u build-system/Make/Make.py remote-ipa-diff --darwinContainersHost="http://host.docker.internal:8650" --ipa1="build/artifacts/Telegram.ipa" --ipa2="build/verify-input/TelegramVerifySource.ipa"
|
||||||
- if [ $? -ne 0 ]; then; echo "Verification failed"; mkdir -p build/verify_artifacts; cp build/artifacts/Telegram.ipa build/verify_artifacts/; exit 1; fi
|
- if [ $? -ne 0 ]; then; echo "Verification failed"; mkdir -p build/verify_artifacts; cp build/artifacts/Telegram.ipa build/verify_artifacts/; exit 1; fi
|
||||||
environment:
|
environment:
|
||||||
name: testflight_llc
|
name: testflight_llc
|
||||||
|
@ -116,6 +116,7 @@ genrule(
|
|||||||
)
|
)
|
||||||
|
|
||||||
minimum_os_version = "11.0"
|
minimum_os_version = "11.0"
|
||||||
|
minimum_watchos_version="6.0"
|
||||||
|
|
||||||
empty_languages = [
|
empty_languages = [
|
||||||
"ar",
|
"ar",
|
||||||
@ -704,7 +705,7 @@ watchos_extension(
|
|||||||
":AppNameInfoPlist",
|
":AppNameInfoPlist",
|
||||||
":WatchExtensionNSExtensionInfoPlist",
|
":WatchExtensionNSExtensionInfoPlist",
|
||||||
],
|
],
|
||||||
minimum_os_version = "9.0",
|
minimum_os_version = minimum_watchos_version,
|
||||||
provisioning_profile = select({
|
provisioning_profile = select({
|
||||||
":disableProvisioningProfilesSetting": None,
|
":disableProvisioningProfilesSetting": None,
|
||||||
"//conditions:default": "@build_configuration//provisioning:WatchExtension.mobileprovision",
|
"//conditions:default": "@build_configuration//provisioning:WatchExtension.mobileprovision",
|
||||||
@ -734,7 +735,7 @@ watchos_application(
|
|||||||
":AppNameInfoPlist",
|
":AppNameInfoPlist",
|
||||||
":WatchAppCompanionInfoPlist",
|
":WatchAppCompanionInfoPlist",
|
||||||
],
|
],
|
||||||
minimum_os_version = "9.0",
|
minimum_os_version = minimum_watchos_version,
|
||||||
provisioning_profile = select({
|
provisioning_profile = select({
|
||||||
":disableProvisioningProfilesSetting": None,
|
":disableProvisioningProfilesSetting": None,
|
||||||
"//conditions:default": "@build_configuration//provisioning:WatchApp.mobileprovision",
|
"//conditions:default": "@build_configuration//provisioning:WatchApp.mobileprovision",
|
||||||
|
@ -190,7 +190,7 @@ class BazelCommandLine:
|
|||||||
'--ios_multi_cpus=arm64',
|
'--ios_multi_cpus=arm64',
|
||||||
|
|
||||||
# Always build universal Watch binaries.
|
# Always build universal Watch binaries.
|
||||||
'--watchos_cpus=arm64_32',
|
'--watchos_cpus=armv7k,arm64_32',
|
||||||
|
|
||||||
# Generate DSYM files when building.
|
# Generate DSYM files when building.
|
||||||
'--apple_generate_dsym',
|
'--apple_generate_dsym',
|
||||||
@ -911,6 +911,26 @@ if __name__ == '__main__':
|
|||||||
help='Path to DSYMs.zip file.'
|
help='Path to DSYMs.zip file.'
|
||||||
)
|
)
|
||||||
|
|
||||||
|
remote_ipadiff_parser = subparsers.add_parser('remote-ipa-diff', help='Execute ipa-diff using a remote environment.')
|
||||||
|
remote_ipadiff_parser.add_argument(
|
||||||
|
'--darwinContainersHost',
|
||||||
|
required=True,
|
||||||
|
type=str,
|
||||||
|
help='DarwinContainers host address.'
|
||||||
|
)
|
||||||
|
remote_ipadiff_parser.add_argument(
|
||||||
|
'--ipa1',
|
||||||
|
required=True,
|
||||||
|
type=str,
|
||||||
|
help='Path to IPA 1 file.'
|
||||||
|
)
|
||||||
|
remote_ipadiff_parser.add_argument(
|
||||||
|
'--ipa2',
|
||||||
|
required=True,
|
||||||
|
type=str,
|
||||||
|
help='Path to IPA 2 file.'
|
||||||
|
)
|
||||||
|
|
||||||
if len(sys.argv) < 2:
|
if len(sys.argv) < 2:
|
||||||
parser.print_help()
|
parser.print_help()
|
||||||
sys.exit(1)
|
sys.exit(1)
|
||||||
@ -976,6 +996,12 @@ if __name__ == '__main__':
|
|||||||
username=env['APPSTORE_CONNECT_USERNAME'],
|
username=env['APPSTORE_CONNECT_USERNAME'],
|
||||||
password=env['APPSTORE_CONNECT_PASSWORD']
|
password=env['APPSTORE_CONNECT_PASSWORD']
|
||||||
)
|
)
|
||||||
|
elif args.commandName == 'remote-ipa-diff':
|
||||||
|
RemoteBuild.remote_ipa_diff(
|
||||||
|
darwin_containers_host=args.darwinContainersHost,
|
||||||
|
ipa1_path=args.ipa1,
|
||||||
|
ipa2_path=args.ipa2
|
||||||
|
)
|
||||||
elif args.commandName == 'test':
|
elif args.commandName == 'test':
|
||||||
test(bazel=bazel_path, arguments=args)
|
test(bazel=bazel_path, arguments=args)
|
||||||
else:
|
else:
|
||||||
|
@ -183,3 +183,57 @@ def remote_deploy_testflight(darwin_containers_host, ipa_path, dsyms_path, usern
|
|||||||
print('Executing remote upload...')
|
print('Executing remote upload...')
|
||||||
session_ssh(session=session, command='bash -l guest-upload-telegram.sh')
|
session_ssh(session=session, command='bash -l guest-upload-telegram.sh')
|
||||||
|
|
||||||
|
def remote_ipa_diff(darwin_containers_host, ipa1_path, ipa2_path):
|
||||||
|
macos_version = '12.5'
|
||||||
|
|
||||||
|
from darwin_containers import DarwinContainers
|
||||||
|
|
||||||
|
configuration_path = 'versions.json'
|
||||||
|
xcode_version = ''
|
||||||
|
with open(configuration_path) as file:
|
||||||
|
configuration_dict = json.load(file)
|
||||||
|
if configuration_dict['xcode'] is None:
|
||||||
|
raise Exception('Missing xcode version in {}'.format(configuration_path))
|
||||||
|
xcode_version = configuration_dict['xcode']
|
||||||
|
|
||||||
|
print('Xcode version: {}'.format(xcode_version))
|
||||||
|
|
||||||
|
image_name = 'macos-{macos_version}-xcode-{xcode_version}'.format(macos_version=macos_version, xcode_version=xcode_version)
|
||||||
|
|
||||||
|
print('Image name: {}'.format(image_name))
|
||||||
|
|
||||||
|
darwinContainers = DarwinContainers(serverAddress=darwin_containers_host, verbose=False)
|
||||||
|
|
||||||
|
print('Opening container session...')
|
||||||
|
with darwinContainers.workingImageSession(name=image_name) as session:
|
||||||
|
print('Uploading data to container...')
|
||||||
|
session_scp_upload(session=session, source_path='tools/ipadiff.py', destination_path='ipadiff.py')
|
||||||
|
session_scp_upload(session=session, source_path='tools/main.cpp', destination_path='main.cpp')
|
||||||
|
session_scp_upload(session=session, source_path=ipa1_path, destination_path='ipa1.ipa')
|
||||||
|
session_scp_upload(session=session, source_path=ipa2_path, destination_path='ipa2.ipa')
|
||||||
|
|
||||||
|
guest_upload_sh = '''
|
||||||
|
set -e
|
||||||
|
|
||||||
|
python3 ipadiff.py ipa1.ipa ipa2.ipa
|
||||||
|
echo $? > result.txt
|
||||||
|
'''
|
||||||
|
|
||||||
|
guest_upload_file_path = tempfile.mktemp()
|
||||||
|
with open(guest_upload_file_path, 'w+') as file:
|
||||||
|
file.write(guest_upload_sh)
|
||||||
|
session_scp_upload(session=session, source_path=guest_upload_file_path, destination_path='guest-ipa-diff.sh')
|
||||||
|
os.unlink(guest_upload_file_path)
|
||||||
|
|
||||||
|
print('Executing remote ipa-diff...')
|
||||||
|
session_ssh(session=session, command='bash -l guest-ipa-diff.sh')
|
||||||
|
guest_result_path = tempfile.mktemp()
|
||||||
|
session_scp_download(session=session, source_path='result.txt', destination_path=guest_result_path)
|
||||||
|
guest_result = ''
|
||||||
|
with open(guest_result_path, 'r') as file:
|
||||||
|
guest_result = file.read().rstrip()
|
||||||
|
os.unlink(guest_result_path)
|
||||||
|
|
||||||
|
if guest_result != '0':
|
||||||
|
sys.exit(1)
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user