invertase / flutterfire_cli

A CLI to help with using FlutterFire in your Flutter applications.
Apache License 2.0
170 stars 47 forks source link

[bug]: Invalid argument(s): Option macos-bundle-id is mandatory #233

Closed AhmedLSayed9 closed 5 months ago

AhmedLSayed9 commented 10 months ago

Is there an existing issue for this?

CLI Version

0.3.0-dev.18

Firebase Tools version

latest

Flutter Doctor Output

[✓] Flutter (Channel stable, 3.16.0, on macOS 13.5.2 22G91 darwin-arm64, locale en-EG) • Flutter version 3.16.0 on channel stable at /Users/bx777/.puro/envs/stable/flutter • Upstream repository https://github.com/flutter/flutter.git • Framework revision db7ef5bf9f (4 days ago), 2023-11-15 11:25:44 -0800 • Engine revision 74d16627b9 • Dart version 3.2.0 • DevTools version 2.28.2

[✓] Android toolchain - develop for Android devices (Android SDK version 33.0.0) • Android SDK at /Users/bx777/Library/Android/sdk • Platform android-33, build-tools 33.0.0 • Java binary at: /Applications/Android Studio.app/Contents/jbr/Contents/Home/bin/java • Java version OpenJDK Runtime Environment (build 17.0.6+0-17.0.6b829.9-10027231) • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 15.0) • Xcode at /Applications/Xcode.app/Contents/Developer • Build 15A240d • CocoaPods version 1.13.0

[✓] Chrome - develop for the web • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[✓] Android Studio (version 2022.3) • Android Studio at /Applications/Android Studio.app/Contents • Flutter plugin can be installed from: 🔨 https://plugins.jetbrains.com/plugin/9212-flutter • Dart plugin can be installed from: 🔨 https://plugins.jetbrains.com/plugin/6351-dart • Java version OpenJDK Runtime Environment (build 17.0.6+0-17.0.6b829.9-10027231)

[✓] VS Code (version 1.84.2) • VS Code at /Applications/Visual Studio Code.app/Contents • Flutter extension version 3.76.0

[✓] Connected device (3 available) • iPhone 14 Pro Max (mobile) • 8F0DE058-66D7-4970-8C9D-DD01B3953F4B • ios • com.apple.CoreSimulator.SimRuntime.iOS-17-0 (simulator) • macOS (desktop) • macos • darwin-arm64 • macOS 13.5.2 22G91 darwin-arm64 • Chrome (web) • chrome • web-javascript • Google Chrome 119.0.6045.159

[✓] Network resources • All expected network resources are available.

• No issues found!

Description

I want to generate android/iOS only without macOS/web but it throws an exception.

Steps to reproduce

Try running the following command on Github Action CI:

flutterfire config --token "$FIREBASE_TOKEN" \
          --project=xxx-development \
          --platforms=android,ios \
          --out=lib/firebase_options_dev.dart \
          --android-package-name=net.xxx.dev \
          --ios-bundle-id=net.xxx.dev \
          --android-out=/android/app/src/dev/ \
          --ios-build-config=Debug-dev \
          --ios-out=ios/config/dev/ \
          --overwrite-firebase-options \
          --yes

Expected behavior

I expect it to ignore macOS/web.

Screenshots

Screenshot 2023-11-19 at 11 49 21 PM

and If I added the macos-bundle-id, web-app-id would break too:

Screenshot 2023-11-19 at 11 49 48 PM

Additional context and comments

No response

ChristianHehlBM commented 5 months ago

This issue just appeared with the release of version 1.0.0 a couple hours ago. In my case it asks for "ERROR: Please provide value for macos-bundle-id." even tho platforms is "--platforms=ios,android,web"

0.2.7 was working fine, i assume a version of 0.3.0-dev was promoted to 1.0.0?

russellwheatley commented 5 months ago

@ChristianHehlBM - It was promoted. Are you running the command from a CI environment?

ChristianHehlBM commented 5 months ago

yes i am!

russellwheatley commented 5 months ago

@ChristianHehlBM - thanks for the update. I'll look to get those CI checks removed for the next release. For now, you can put any value as --macos-bundle-id=, so long as you don't add it to the --platforms= flag, it'll work as before 👍

2p31-1 commented 4 months ago

Is it fixed? I still have same issue only in CI environment.

flutterfire configure -y --project=[MY_APP_PROJECT] --platforms=android --android-package-name=[MY_APP_ID] --service-account=firebase_service_account.json
  shell: /usr/bin/bash -e ***0***
  env:
    JAVA_HOME: /opt/hostedtoolcache/Java_Temurin-Hotspot_jdk/21.0.2-1[3](https://github.com/ORGANIZATION/REPO/actions/runs/9044904291/job/24854072344#step:12:3)/x64
    JAVA_HOME_21_X64: /opt/hostedtoolcache/Java_Temurin-Hotspot_jdk/21.0.2-13/x6[4](https://github.com/ORGANIZATION/REPO/actions/runs/9044904291/job/24854072344#step:12:4)
    FLUTTER_ROOT: /opt/hostedtoolcache/flutter/stable-3.19.6-x64
    PUB_CACHE: /opt/hostedtoolcache/flutter/stable-3.19.[6](https://github.com/ORGANIZATION/REPO/actions/runs/9044904291/job/24854072344#step:12:6)-x64/.pub-cache
⠧ Fetching available Firebase projects...                                       
⠇ Fetching available Firebase projects...                                       
⠏ Fetching available Firebase projects...                                       
⠋ Fetching available Firebase projects...                                       
⠙ Fetching available Firebase projects...                                       
i Found 1 Firebase projects. Selecting project [PROJECT_NAME].                 
25hi Selected platforms: android
FirebaseCommandException: An error occured on the Firebase CLI when attempting to run a command.
COMMAND: firebase configure 
ERROR: Please provide value for ios-bundle-id.
Error: Process completed with exit code 1.

it is okay in local environment with same command.

AlexanderLid commented 1 month ago

I have the same issue deploying web only through Github actions. It asks for the android bundle.

Edit: works with flutterfire_cli 1.0.1-dev.4