name: build on: push: branches: - main workflow_dispatch: defaults: run: working-directory: packages/stream_chat_v1 jobs: cleanup-runs: runs-on: ubuntu-latest steps: - uses: rokroskar/workflow-run-cleanup-action@master env: GITHUB_TOKEN: "${{ secrets.GITHUB_TOKEN }}" build_and_deploy_ios: runs-on: [macos-latest] steps: - uses: actions/checkout@v2 - name: Install RubyGems run: | cd ios bundle install - uses: subosito/flutter-action@v1.4.0 with: channel: 'stable' - name: Flutter setup run: | flutter pub get - name: Copy production config run: echo ${{ secrets.PRODUCTION_CONFIG }} > lib/app_config.dart - name: Build and release env: MATCH_PASSWORD: ${{ secrets.MATCH_PASSWORD }} MATCH_GIT_BASIC_AUTHORIZATION: ${{ secrets.MATCH_GIT_BASIC_AUTHORIZATION }} FASTLANE_USER: ${{ secrets.FASTLANE_USER }} FASTLANE_PASSWORD: ${{ secrets.FASTLANE_PASSWORD }} FASTLANE_SESSION: ${{ secrets.FASTLANE_SESSION }} FASTLANE_APPLE_APPLICATION_SPECIFIC_PASSWORD: ${{ secrets.FASTLANE_APPLE_APPLICATION_SPECIFIC_PASSWORD }} run: | flutter build ios --release --no-codesign cd ios bundle exec fastlane deploy_to_testflight build_and_deploy_android: runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 - uses: actions/setup-java@v1 with: java-version: '12.x' - uses: subosito/flutter-action@v1.4.0 with: channel: 'stable' - run: | flutter pub get - name: Copy production config run: echo ${{ secrets.PRODUCTION_CONFIG }} > lib/app_config.dart - name: Build run: | flutter build apk - name: upload apk uses: actions/upload-artifact@v2 with: name: android-stream-chat-v1 path: packages/stream_chat_v1/build/app/outputs/apk/release/app-release.apk