mirror of https://github.com/msgbyte/tailchat
				
				
				
			
			You cannot select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
	
	
		
			93 lines
		
	
	
		
			3.2 KiB
		
	
	
	
		
			YAML
		
	
			
		
		
	
	
			93 lines
		
	
	
		
			3.2 KiB
		
	
	
	
		
			YAML
		
	
workflows:
 | 
						|
  android:
 | 
						|
    name: build, test & publish Android version
 | 
						|
    max_build_duration: 30
 | 
						|
    instance_type: mac_mini_m1
 | 
						|
    working_directory: client/mobile
 | 
						|
    environment:
 | 
						|
      groups:
 | 
						|
        - default
 | 
						|
        - cloudflare_credentials
 | 
						|
    cache:
 | 
						|
      cache_paths:
 | 
						|
        - $CM_BUILD_DIR/node_modules
 | 
						|
    scripts:
 | 
						|
        - name: Install npm dependencies
 | 
						|
          script: |
 | 
						|
                        yarn
 | 
						|
        - name: Set Android SDK location
 | 
						|
          script: |
 | 
						|
                        echo "sdk.dir=$ANDROID_SDK_ROOT" > "./android/local.properties"
 | 
						|
        - name: Set Files
 | 
						|
          script: |
 | 
						|
            echo $AGCONNECT_SERVICES | base64 --decode > "./android/app/agconnect-services.json"
 | 
						|
            echo $KEYSTORE_FILE | base64 --decode > "./android/app/tailchat.keystore"
 | 
						|
            echo "TAILCHAT_UPLOAD_STORE_FILE=$TAILCHAT_UPLOAD_STORE_FILE" >> "./.env"
 | 
						|
            echo "TAILCHAT_UPLOAD_STORE_PASSWORD=$TAILCHAT_UPLOAD_STORE_PASSWORD" >> "./.env"
 | 
						|
            echo "TAILCHAT_UPLOAD_KEY_ALIAS=$TAILCHAT_UPLOAD_KEY_ALIAS" >> "./.env"
 | 
						|
            echo "TAILCHAT_UPLOAD_KEY_PASSWORD=$TAILCHAT_UPLOAD_KEY_PASSWORD" >> "./.env"
 | 
						|
            echo "GETUI_APPID=$GETUI_APPID" >> "./.env"
 | 
						|
            echo "GETUI_APPKEY=$GETUI_APPKEY" >> "./.env"
 | 
						|
            echo "GETUI_APPSECRET=$GETUI_APPSECRET" >> "./.env"
 | 
						|
            echo "GETUI_HUAWEI_APP_ID=$GETUI_HUAWEI_APP_ID" >> "./.env"            
 | 
						|
        - name: Build Android release
 | 
						|
          working_directory: client/mobile/android
 | 
						|
          script: |
 | 
						|
            UPDATED_BUILD_NUMBER=$BUILD_NUMBER
 | 
						|
            ./gradlew assembleRelease \
 | 
						|
              -PversionCode=$UPDATED_BUILD_NUMBER \
 | 
						|
              -PversionName=1.0.$UPDATED_BUILD_NUMBER            
 | 
						|
        - name: Build finished successfully
 | 
						|
          script: touch ~/SUCCESS
 | 
						|
    artifacts:
 | 
						|
      - android/app/build/outputs/**/**/*.apk
 | 
						|
    publishing:
 | 
						|
      email:
 | 
						|
        recipients:
 | 
						|
          - moonrailgun@gmail.com
 | 
						|
      scripts:
 | 
						|
        - name: Install wrangler
 | 
						|
          script: npm install -g wrangler
 | 
						|
        - name: Deploy to Cloudflare Pages
 | 
						|
          script: |
 | 
						|
            if [[ -f ~/SUCCESS ]]; then
 | 
						|
              if [[ $CM_BRANCH == "master" ]]; then
 | 
						|
                # deploy to production
 | 
						|
                wrangler pages publish android/app/build/outputs/apk/release --project-name tailchat --branch main
 | 
						|
              else
 | 
						|
                wrangler pages publish android/app/build/outputs/apk/release --project-name tailchat --branch $CM_BRANCH
 | 
						|
              fi
 | 
						|
            fi            
 | 
						|
        - name: Notify artifact URL to Tailchat
 | 
						|
          script: |
 | 
						|
                        node scripts/notify-links.js
 | 
						|
 | 
						|
 | 
						|
  ios:
 | 
						|
    name: build, test & publish iOS version
 | 
						|
    instance_type: mac_mini_m1
 | 
						|
    working_directory: client/mobile
 | 
						|
    environment:
 | 
						|
      groups:
 | 
						|
        - default
 | 
						|
        - cloudflare_credentials
 | 
						|
    cache:
 | 
						|
      cache_paths:
 | 
						|
        - $CM_BUILD_DIR/node_modules
 | 
						|
    scripts:
 | 
						|
      - name: Install npm dependencies
 | 
						|
        script: |
 | 
						|
                    yarn
 | 
						|
      - name: Build ipa for distribution
 | 
						|
        working_directory: client/mobile/ios
 | 
						|
        script: |
 | 
						|
          xcode-project build-ipa \
 | 
						|
            --workspace "$CM_BUILD_DIR/client/mobile/ios/$XCODE_WORKSPACE" \
 | 
						|
            --scheme "$XCODE_SCHEME"          
 | 
						|
    artifacts:
 | 
						|
      - build/ios/ipa/*.ipa
 | 
						|
    publishing:
 | 
						|
      email:
 | 
						|
        recipients:
 | 
						|
          - moonrailgun@gmail.com
 |