GithubHelp home page GithubHelp logo

Comments (7)

maierj avatar maierj commented on July 20, 2024 4

Hi guys (@reilem @Warns),
thanks for creating this issue.
I conducted a few tests in the test project that belongs to this action (https://github.com/maierj/fastlane-action-test). I added different Ruby versions to the build matrix (2.5.8, 2.6.6, 2.7.2, 3.0.0) and let the test workflow run for each of them: turns out that only the runs with ruby-version set to 3.0.0 fail (https://github.com/maierj/fastlane-action-test/actions/runs/541194115). I also found out that fastlane is not yet supporting Ruby 3 (fastlane/fastlane#17931).
The proposed ruby-version number in the documentation of this action was not wrong when it was published, since Ruby 3 wasn't available at that time (it was released on 2020-12-25), but it's wrong now, since it chooses the latest Ruby version available (3.0.0) when you specify ">=2.6.0".

I'll change the documentation to recommend the latest Ruby version before 3.0.0, which is 2.7.2. I'll also add a hint that fastlane doesn't support Ruby 3 yet.

from fastlane-action.

reilem avatar reilem commented on July 20, 2024 1

@Warns Don't worry, you did not misunderstand anything 😄 You followed the documentation perfectly, unfortunately the documentation is wrong. That is why I made this issue, to notify the maintainer that they need to update their documentation.

from fastlane-action.

Warns avatar Warns commented on July 20, 2024

@maierj @KevinColemanInc I'm facing the same error as above. Please check my files below.

Directory structure
image

Its basically as follows;

root
  - android
    - fastlane
  - ios
    - fastlane
name: Deploy

on:
  push:
    branches: [ 3934 ]

jobs:
  distribute:
    runs-on: ubuntu-latest

    steps:

      - name: Checkout 
        uses: actions/checkout@v2

      - name: Setup Ruby
        uses: actions/setup-ruby@v1
        with:
          ruby-version: '>= 2.6'

      - name: Install Ruby bundle
        run: |
          bundle config path vendor/bundle
          bundle install --jobs 4 --retry 3

      - name: Configure Keystore
        run: |
          mkdir app
          echo "$ANDROID_KEYSTORE_FILE" | base64 -d > app/keystore.jks
          echo "storeFile=keystore.jks" >> keystore.properties
          echo "keyAlias=$KEYSTORE_KEY_ALIAS" >> keystore.properties
          echo "storePassword=$KEYSTORE_STORE_PASSWORD" >> keystore.properties
          echo "keyPassword=$KEYSTORE_KEY_PASSWORD" >> keystore.properties
        env:
          ANDROID_KEYSTORE_FILE: ${{ secrets.ANDROID_KEYSTORE_FILE }}
          KEYSTORE_KEY_ALIAS: ${{ secrets.KEYSTORE_KEY_ALIAS }}
          KEYSTORE_KEY_PASSWORD: ${{ secrets.KEYSTORE_KEY_PASSWORD }}
          KEYSTORE_STORE_PASSWORD: ${{ secrets.KEYSTORE_STORE_PASSWORD }}

      - name: Create Google Play Config file
        run: |
          echo "$GPLAY_CONFIG_JSON" > gplay_config.json.b64
          base64 -d -i gplay_config.json.b64 > gplay_config.json
        env:
          GPLAY_CONFIG_JSON: ${{ secrets.GPLAY_CONFIG_JSON }}

      - uses: maierj/[email protected]
        with:
          lane: 'beta'
          subdirectory: 'android'

Please guide us through this. Thanks!

The error log:

 Bundle complete! 1 Gemfile dependency, 73 gems now installed.
Bundled gems are installed into `./vendor/bundle`
bundler: failed to load command: fastlane (/home/runner/work/***-mobile-test/***-mobile-test/android/vendor/bundle/ruby/3.0.0/bin/fastlane)
/home/runner/work/***-mobile-test/***-mobile-test/android/vendor/bundle/ruby/3.0.0/gems/fastlane_core-0.59.0/lib/fastlane_core/pkg_file_analyser.rb:1:in `require': cannot load such file -- rexml/document (LoadError)
	from /home/runner/work/***-mobile-test/***-mobile-test/android/vendor/bundle/ruby/3.0.0/gems/fastlane_core-0.59.0/lib/fastlane_core/pkg_file_analyser.rb:1:in `<top (required)>'
	from /home/runner/work/***-mobile-test/***-mobile-test/android/vendor/bundle/ruby/3.0.0/gems/fastlane_core-0.59.0/lib/fastlane_core.rb:19:in `require'
	from /home/runner/work/***-mobile-test/***-mobile-test/android/vendor/bundle/ruby/3.0.0/gems/fastlane_core-0.59.0/lib/fastlane_core.rb:19:in `<top (required)>'
	from /home/runner/work/***-mobile-test/***-mobile-test/android/vendor/bundle/ruby/3.0.0/gems/fastlane-1.92.0/lib/fastlane.rb:1:in `require'
	from /home/runner/work/***-mobile-test/***-mobile-test/android/vendor/bundle/ruby/3.0.0/gems/fastlane-1.92.0/lib/fastlane.rb:1:in `<top (required)>'
	from /home/runner/work/***-mobile-test/***-mobile-test/android/vendor/bundle/ruby/3.0.0/gems/fastlane-1.92.0/lib/fastlane/cli_tools_distributor.rb:8:in `require'
	from /home/runner/work/***-mobile-test/***-mobile-test/android/vendor/bundle/ruby/3.0.0/gems/fastlane-1.92.0/lib/fastlane/cli_tools_distributor.rb:8:in `take_off'
	from /home/runner/work/***-mobile-test/***-mobile-test/android/vendor/bundle/ruby/3.0.0/gems/fastlane-1.92.0/bin/fastlane:5:in `<top (required)>'
	from /home/runner/work/***-mobile-test/***-mobile-test/android/vendor/bundle/ruby/3.0.0/bin/fastlane:23:in `load'
	from /home/runner/work/***-mobile-test/***-mobile-test/android/vendor/bundle/ruby/3.0.0/bin/fastlane:23:in `<top (required)>'
	from /opt/hostedtoolcache/Ruby/3.0.0/x64/lib/ruby/3.0.0/bundler/cli/exec.rb:63:in `load'
	from /opt/hostedtoolcache/Ruby/3.0.0/x64/lib/ruby/3.0.0/bundler/cli/exec.rb:63:in `kernel_load'
	from /opt/hostedtoolcache/Ruby/3.0.0/x64/lib/ruby/3.0.0/bundler/cli/exec.rb:28:in `run'
	from /opt/hostedtoolcache/Ruby/3.0.0/x64/lib/ruby/3.0.0/bundler/cli.rb:497:in `exec'
	from /opt/hostedtoolcache/Ruby/3.0.0/x64/lib/ruby/3.0.0/bundler/vendor/thor/lib/thor/command.rb:27:in `run'
	from /opt/hostedtoolcache/Ruby/3.0.0/x64/lib/ruby/3.0.0/bundler/vendor/thor/lib/thor/invocation.rb:127:in `invoke_command'
	from /opt/hostedtoolcache/Ruby/3.0.0/x64/lib/ruby/3.0.0/bundler/vendor/thor/lib/thor.rb:392:in `dispatch'
	from /opt/hostedtoolcache/Ruby/3.0.0/x64/lib/ruby/3.0.0/bundler/cli.rb:30:in `dispatch'
	from /opt/hostedtoolcache/Ruby/3.0.0/x64/lib/ruby/3.0.0/bundler/vendor/thor/lib/thor/base.rb:485:in `start'
	from /opt/hostedtoolcache/Ruby/3.0.0/x64/lib/ruby/3.0.0/bundler/cli.rb:24:in `start'
	from /opt/hostedtoolcache/Ruby/3.0.0/x64/lib/ruby/gems/3.0.0/gems/bundler-2.2.3/libexec/bundle:49:in `block in <top (required)>'
	from /opt/hostedtoolcache/Ruby/3.0.0/x64/lib/ruby/3.0.0/bundler/friendly_errors.rb:130:in `with_friendly_errors'
	from /opt/hostedtoolcache/Ruby/3.0.0/x64/lib/ruby/gems/3.0.0/gems/bundler-2.2.3/libexec/bundle:37:in `<top (required)>'
	from /opt/hostedtoolcache/Ruby/3.0.0/x64/bin/bundle:23:in `load'
	from /opt/hostedtoolcache/Ruby/3.0.0/x64/bin/bundle:23:in `<main>'
Error: Error: Executing lane beta failed.
Error: Executing lane beta failed.

from fastlane-action.

KevinColemanInc avatar KevinColemanInc commented on July 20, 2024

Are you using ruby 3.0? I haven't started using this yet so I don't know how much advice I can give. sorry

from fastlane-action.

reilem avatar reilem commented on July 20, 2024

@Warns Specify ruby-version: '2.6.x' in the setup-ruby action. That should solve your problem.

By specifying >= 2.6 in the docs you are allowing ruby to go to whatever version higher than or including 2.6. And I think very recently the update for 3.0.0 happened (I do not use ruby for anything other than CI tools so I could be mistaken). So now lots of users of this action are going to start seeing failed deployments.

from fastlane-action.

Warns avatar Warns commented on July 20, 2024

Based on the latest note in the readme file I changed the ruby tag, probably misunderstood it. Indeed it passed that step by specifying the version as '2.6'

from fastlane-action.

reilem avatar reilem commented on July 20, 2024

Awesome thanks! I will also change my setup to use 2.7.2 then. 😄

from fastlane-action.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.