diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index ef4814cd9d..43df4ce6b6 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -69,7 +69,7 @@ beta_testflight: - ios_beta stage: build only: - - beta + - beta1 except: - tags script: @@ -86,7 +86,7 @@ deploy_beta_testflight: - ios_beta stage: deploy only: - - beta + - beta1 except: - tags script: diff --git a/buildbox/build-telegram.sh b/buildbox/build-telegram.sh index c1e4905153..30ac3ed9b8 100644 --- a/buildbox/build-telegram.sh +++ b/buildbox/build-telegram.sh @@ -58,13 +58,11 @@ cp "$BAZEL" "tools/bazel" BUILD_CONFIGURATION="$1" if [ "$BUILD_CONFIGURATION" == "hockeyapp" ] || [ "$BUILD_CONFIGURATION" == "appcenter-experimental" ] || [ "$BUILD_CONFIGURATION" == "appcenter-experimental-2" ]; then - CODESIGNING_SUBPATH="transient-data/telegram-codesigning/codesigning" - CODESIGNING_TEAMS_SUBPATH="transient-data/teams" + CODESIGNING_SUBPATH="$BUILDBOX_DIR/transient-data/telegram-codesigning/codesigning" elif [ "$BUILD_CONFIGURATION" == "appstore" ]; then - CODESIGNING_SUBPATH="transient-data/codesigning" - CODESIGNING_TEAMS_SUBPATH="transient-data/teams" + CODESIGNING_SUBPATH="$BUILDBOX_DIR/transient-data/telegram-codesigning/codesigning" elif [ "$BUILD_CONFIGURATION" == "verify" ]; then - CODESIGNING_SUBPATH="fake-codesigning" + CODESIGNING_SUBPATH="build-system/fake-codesigning" else echo "Unknown configuration $1" exit 1 @@ -99,34 +97,29 @@ if [ "$BUILD_CONFIGURATION" == "hockeyapp" ] || [ "$BUILD_CONFIGURATION" == "app mkdir -p "$BASE_DIR/$BUILDBOX_DIR/transient-data/build-configuration" case "$BUILD_CONFIGURATION" in - "hockeyapp") + "hockeyapp"|"appcenter-experimental"|"appcenter-experimental-2") generate-configuration.sh internal release "$BASE_DIR/$BUILDBOX_DIR/transient-data/telegram-codesigning" "$BASE_DIR/$BUILDBOX_DIR/transient-data/build-configuration" ;; + "appstore") + generate-configuration.sh appstore release "$BASE_DIR/$BUILDBOX_DIR/transient-data/telegram-codesigning" "$BASE_DIR/$BUILDBOX_DIR/transient-data/build-configuration" + ;; + *) echo "Unknown build configuration $BUILD_CONFIGURATION" exit 1 ;; esac +elif [ "$BUILD_CONFIGURATION" == "verify" ]; then + mkdir -p "$BASE_DIR/$BUILDBOX_DIR/transient-data/telegram-codesigning" + mkdir -p "$BASE_DIR/$BUILDBOX_DIR/transient-data/build-configuration" - if [ "$BUILD_CONFIGURATION" == "appstore" ]; then - if [ -z "$TELEGRAM_BUILD_APPSTORE_PASSWORD" ]; then - echo "TELEGRAM_BUILD_APPSTORE_PASSWORD is not set" - exit 1 - fi - if [ -z "$TELEGRAM_BUILD_APPSTORE_TEAM_NAME" ]; then - echo "TELEGRAM_BUILD_APPSTORE_TEAM_NAME is not set" - exit 1 - fi - if [ -z "$TELEGRAM_BUILD_APPSTORE_USERNAME" ]; then - echo "TELEGRAM_BUILD_APPSTORE_USERNAME is not set" - exit 1 - fi - fi + cp -R build-system/fake-codesigning/* "$BASE_DIR/$BUILDBOX_DIR/transient-data/telegram-codesigning/" + cp -R build-system/example-configuration/* "$BASE_DIR/$BUILDBOX_DIR/transient-data/build-configuration/" fi -if [ ! -d "$BUILDBOX_DIR/$CODESIGNING_SUBPATH" ]; then - echo "$BUILDBOX_DIR/$CODESIGNING_SUBPATH does not exist" +if [ ! -d "$CODESIGNING_SUBPATH" ]; then + echo "$CODESIGNING_SUBPATH does not exist" exit 1 fi @@ -182,18 +175,12 @@ elif [ "$BUILD_MACHINE" == "macOS" ]; then echo "VM_IP=$VM_IP" fi -scp -o LogLevel=ERROR -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null -pr "$BUILDBOX_DIR/$CODESIGNING_SUBPATH" telegram@"$VM_IP":codesigning_data +scp -o LogLevel=ERROR -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null -pr "$CODESIGNING_SUBPATH" telegram@"$VM_IP":codesigning_data scp -o LogLevel=ERROR -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null -pr "$BASE_DIR/$BUILDBOX_DIR/transient-data/build-configuration" telegram@"$VM_IP":telegram-configuration -#scp -o LogLevel=ERROR -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null -pr "$BUILDBOX_DIR/$CODESIGNING_TEAMS_SUBPATH" telegram@"$VM_IP":codesigning_teams -#if [ "$BUILD_CONFIGURATION" == "verify" ]; then -# ssh -o LogLevel=ERROR -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null telegram@"$VM_IP" -o ServerAliveInterval=60 -t "mkdir -p telegram-ios-shared/fastlane; echo '' > telegram-ios-shared/fastlane/Fastfile" -#else -# scp -o LogLevel=ERROR -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null -pr "$BUILDBOX_DIR/transient-data/telegram-ios-shared" telegram@"$VM_IP":telegram-ios-shared -#fi scp -o LogLevel=ERROR -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null -pr "$BUILDBOX_DIR/guest-build-telegram.sh" "$BUILDBOX_DIR/transient-data/source.tar" telegram@"$VM_IP": -ssh -o LogLevel=ERROR -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null telegram@"$VM_IP" -o ServerAliveInterval=60 -t "export TELEGRAM_BUILD_APPSTORE_PASSWORD=\"$TELEGRAM_BUILD_APPSTORE_PASSWORD\"; export TELEGRAM_BUILD_APPSTORE_TEAM_NAME=\"$TELEGRAM_BUILD_APPSTORE_TEAM_NAME\"; export TELEGRAM_BUILD_APPSTORE_USERNAME=\"$TELEGRAM_BUILD_APPSTORE_USERNAME\"; export BUILD_NUMBER=\"$BUILD_NUMBER\"; export COMMIT_ID=\"$COMMIT_ID\"; export COMMIT_AUTHOR=\"$COMMIT_AUTHOR\"; export BAZEL_HTTP_CACHE_URL=\"$BAZEL_HTTP_CACHE_URL\"; $GUEST_SHELL -l guest-build-telegram.sh $BUILD_CONFIGURATION" || true +ssh -o LogLevel=ERROR -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null telegram@"$VM_IP" -o ServerAliveInterval=60 -t "export BUILD_NUMBER=\"$BUILD_NUMBER\"; export BAZEL_HTTP_CACHE_URL=\"$BAZEL_HTTP_CACHE_URL\"; $GUEST_SHELL -l guest-build-telegram.sh $BUILD_CONFIGURATION" || true OUTPUT_PATH="build/artifacts" rm -rf "$OUTPUT_PATH" diff --git a/buildbox/guest-build-telegram.sh b/buildbox/guest-build-telegram.sh index d540abab4d..bda9a5930d 100644 --- a/buildbox/guest-build-telegram.sh +++ b/buildbox/guest-build-telegram.sh @@ -7,31 +7,14 @@ if [ -z "BUILD_NUMBER" ]; then exit 1 fi -if [ -z "COMMIT_ID" ]; then - echo "COMMIT_ID is not set" - exit 1 -fi - if [ "$1" == "hockeyapp" ] || [ "$1" == "appcenter-experimental" ] || [ "$1" == "appcenter-experimental-2" ] || [ "$1" == "testinghockeyapp" ]; then CERTS_PATH="$HOME/codesigning_data/certs/enterprise" - #PROFILES_PATH="$HOME/codesigning_data/profiles" elif [ "$1" == "testinghockeyapp-local" ]; then - CERTS_PATH="$HOME/codesigning_data/certs" - PROFILES_PATH="$HOME/codesigning_data/profiles" + CERTS_PATH="$HOME/codesigning_data/certs/enterprise" elif [ "$1" == "appstore" ]; then - if [ -z "$TELEGRAM_BUILD_APPSTORE_PASSWORD" ]; then - echo "TELEGRAM_BUILD_APPSTORE_PASSWORD is not set" - exit 1 - fi - if [ -z "$TELEGRAM_BUILD_APPSTORE_TEAM_NAME" ]; then - echo "TELEGRAM_BUILD_APPSTORE_TEAM_NAME is not set" - exit 1 - fi - CERTS_PATH="$HOME/codesigning_data/certs" - PROFILES_PATH="$HOME/codesigning_data/profiles" + CERTS_PATH="$HOME/codesigning_data/certs/distribution" elif [ "$1" == "verify" ]; then - CERTS_PATH="build-system/fake-codesigning/certs/distribution" - PROFILES_PATH="build-system/fake-codesigning/profiles" + CERTS_PATH="$HOME/codesigning_data/certs/distribution" else echo "Unknown configuration $1" exit 1 @@ -95,47 +78,24 @@ done security set-key-partition-list -S apple-tool:,apple: -k "$MY_KEYCHAIN_PASSWORD" "$MY_KEYCHAIN" -#mkdir -p "$HOME/Library/MobileDevice/Provisioning Profiles" - -#for f in $(ls "$PROFILES_PATH"); do -# PROFILE_PATH="$PROFILES_PATH/$f" -# uuid=`grep UUID -A1 -a "$PROFILE_PATH" | grep -io "[-A-F0-9]\{36\}"` -# cp -f "$PROFILE_PATH" "$HOME/Library/MobileDevice/Provisioning Profiles/$uuid.mobileprovision" -#done - if [ "$1" == "hockeyapp" ] || [ "$1" == "appcenter-experimental" ] || [ "$1" == "appcenter-experimental-2" ]; then - #BUILD_ENV_SCRIPT="../telegram-ios-shared/buildbox/bin/internal.sh" - #APP_TARGET="bazel_app_arm64" - echo "" >> /dev/null + APP_CONFIGURATION="release_arm64" elif [ "$1" == "appstore" ]; then - BUILD_ENV_SCRIPT="../telegram-ios-shared/buildbox/bin/appstore.sh" - APP_TARGET="bazel_app" + APP_CONFIGURATION="release_universal" elif [ "$1" == "verify" ]; then - BUILD_ENV_SCRIPT="build-system/verify.sh" - APP_TARGET="bazel_app" - export CODESIGNING_DATA_PATH="build-system/fake-codesigning" - export CODESIGNING_CERTS_VARIANT="distribution" - export CODESIGNING_PROFILES_VARIANT="appstore" + APP_CONFIGURATION="release_universal" else echo "Unsupported configuration $1" exit 1 fi -if [ "$1" == "appcenter-experimental" ]; then - export APP_CENTER_ID="$APP_CENTER_EXPERIMENTAL_ID" -elif [ "$1" == "appcenter-experimental-2" ]; then - export APP_CENTER_ID="$APP_CENTER_EXPERIMENTAL_2_ID" -fi - -#PATH="$PATH:$(pwd)/tools" BAZEL_HTTP_CACHE_URL="$BAZEL_HTTP_CACHE_URL" LOCAL_CODESIGNING=1 sh "$BUILD_ENV_SCRIPT" make "$APP_TARGET" - python3 build-system/Make/Make.py \ --bazel="$(pwd)/tools/bazel" \ --cacheHost="$BAZEL_HTTP_CACHE_URL" \ build \ --configurationPath="$HOME/telegram-configuration" \ --buildNumber="$BUILD_NUMBER" \ - --configuration=release_arm64 + --configuration="$APP_CONFIGURATION" OUTPUT_PATH="build/artifacts" rm -rf "$OUTPUT_PATH"