Search code examples
androidtravis-cifastlanefirebase-app-distribution

Firebase_cli_path: missing path to firebase cli tool. Please install firebase in $PATH or specify path


Travis CI throwing the firebase_cli_path. I am not sure how can I specify this path. In Google document, it mentioned that this path will automatically detect. Well, then I need to install the firebase tools into Travis CI, How can I do that?

This is travis.yml

dist: trusty

branches:
  only:
    - master


before_install:
  - gem install bundler
  - bundle --version
  - bundle install

android:
  components:
    # Uncomment the lines below if you want to
    # use the latest revision of Android SDK Tools
    # - tools
    # - platform-tools

    # The BuildTools version used by your project
    - build-tools-28.0.3

    # The SDK version used to compile your project
    - android-28

    # Additional components
    - extra-google-google_play_services
    - extra-google-m2repository
    - extra-android-m2repository

    # Specify at least one system image,
    # if you need to run emulator(s) during your tests
    - sys-img-x86-android-26
    - sys-img-armeabi-v7a-android-17

script:
 - bundle exec fastlane android uatrelease

after_success:
 - firebase deploy --token $FIREBASE_TOKEN --non-interactive

This is fastfile

default_platform(:android)


platform :android do
  desc "Runs all the tests"
  lane :test do
    gradle(task: "test")
  end

  desc "Submit a new Beta Build to Hockey App"
  lane :beta do |options|
    gradle(task: "clean assembleRelease")

    firebase_app_distribution(
                           app: "1:***********************",
                           testers: "[email protected]",
                           release_notes: "Configuring Fastlane",
                           firebase_cli_token:ENV["FIREBASE_TOKEN"]
                       )

end
end


Solution

  • I've figured out it and it's working now. Just included the script to install the standalone firebase tool in Travis. Check this and add this

    curl -sL firebase.tools | bash

    in your travis.yml file.

    Sample travis.yml

    dist: trusty
    
    branches:
      only:
        - master
    
    
    before_install:
      - gem install bundler
      - bundle --version
      - bundle install
    
    before_script:
      - curl -sL firebase.tools | bash
    
    android:
      components:
        # Uncomment the lines below if you want to
        # use the latest revision of Android SDK Tools
        # - tools
        # - platform-tools
    
        # The BuildTools version used by your project
        - build-tools-28.0.3
    
        # The SDK version used to compile your project
        - android-28
    
        # Additional components
        - extra-google-google_play_services
        - extra-google-m2repository
        - extra-android-m2repository
    
        # Specify at least one system image,
        # if you need to run emulator(s) during your tests
        - sys-img-x86-android-26
        - sys-img-armeabi-v7a-android-17
    
    script:
     - bundle exec fastlane “your action”