Skip to content

undefined method `size' for nil:NilClass #21530

Description

@monkeydaichan

New Issue Checklist

Issue Description

Command executed
$ bundle exec fastlane upload_prod_play_store
  lane :upload_prod_play_store do
    upload_to_play_store(
      aab: 'build/app/outputs/bundle/release/app-release.aab',
      track_promote_to: internal,
      skip_upload_metadata: true,  
      skip_upload_images: true,  
      skip_upload_screenshots: true,  
      skip_upload_changelogs: true,  
      skip_upload_apk: true,  
    )
  end
% ruby --version                                                                                                                                                                                                 17:41:15

ruby 2.7.2p137 (2020-10-01 revision 5445e04352) [arm64-darwin22]
# frozen_string_literal: true

source "https://rubygems.org"

gem 'fastlane'
Complete output when running fastlane, including the stack trace and command used

Error

Details
 [17:37:29]: ----------------------------------
[17:37:29]: --- Step: upload_to_play_store ---
[17:37:29]: ----------------------------------

+-------------------------------------------------------------------------------+
| Summary for supply 2.216.0 |
+------------------------------------+------------------------------------------+
| package_name | com.example.app |
| release_status | completed |
| track | production |
| metadata_path | ./fastlane/metadata/android |
| json_key | fastlane/play-store-credential-prod.json |
| skip_upload_apk | false |
| skip_upload_aab | false |
| skip_upload_metadata | false |
| skip_upload_changelogs | false |
| skip_upload_images | false |
| skip_upload_screenshots | false |
| sync_image_upload | false |
| track_promote_release_status | completed |
| validate_only | false |
| check_superseded_tracks | false |
| timeout | 300 |
| deactivate_on_promote | true |
| changes_not_sent_for_review | false |
| rescue_changes_not_sent_for_review | true |
| ack_bundle_installation_warning | false |
+------------------------------------+------------------------------------------+

+-----------------------------------------+
| Lane Context |
+------------------+----------------------+
| DEFAULT_PLATFORM | android |
| PLATFORM_NAME | android |
| LANE_NAME | android build_deploy |
+------------------+----------------------+

+------------------------------------------------------------------------------------+
| fastlane summary |
+------+---------------------------------------------------------------+-------------+
| Step | Action | Time (in s) |
+------+---------------------------------------------------------------+-------------+
| 1 | default_platform | 0 |
| 2 | fvm flutter build appbundle --release --target-platform andro | 8 |
| 💥 | upload_to_play_store | 2 |
+------+---------------------------------------------------------------+-------------+

[17:37:31]: fastlane finished with errors

Looking for related GitHub issues on fastlane/fastlane...

➡️ undefined method `*' for nil:NilClass frameit
#21496 [open] 3 💬
5 days ago

➡️ [spaceship][deliver] add app clips support for specifying default experience metadata
#20300 [open] 26 💬
04 Apr 2023

➡️ [WIP][spaceship] add initial App Clips support
#19043 [open] 30 💬
15 Feb 2022

and 62 more at: https://github.com/fastlane/fastlane/search?q=undefined%20method%20%60size%27%20for%20nil&type=Issues&utf8=✓

🔗 You can ⌘ + double-click on links to open them directly in your browser.
bundler: failed to load command: fastlane (/Users/daichi/my/project/folder/vendor/bundle/ruby/2.7.0/bin/fastlane)
NoMethodError: [!] undefined method size' for nil:NilClass /Users/daichi/my/project/folder/vendor/bundle/ruby/2.7.0/gems/fastlane-2.216.0/supply/lib/supply/uploader.rb:119:in fetch_track_and_release!'
/Users/daichi/my/project/folder/vendor/bundle/ruby/2.7.0/gems/fastlane-2.216.0/supply/lib/supply/uploader.rb:87:in block in perform_upload_meta' /Users/daichi/my/project/folder/vendor/bundle/ruby/2.7.0/gems/fastlane-2.216.0/supply/lib/supply/uploader.rb:84:in each'
/Users/daichi/my/project/folder/vendor/bundle/ruby/2.7.0/gems/fastlane-2.216.0/supply/lib/supply/uploader.rb:84:in perform_upload_meta' /Users/daichi/my/project/folder/vendor/bundle/ruby/2.7.0/gems/fastlane-2.216.0/supply/lib/supply/uploader.rb:35:in perform_upload'
/Users/daichi/my/project/folder/vendor/bundle/ruby/2.7.0/gems/fastlane-2.216.0/fastlane/lib/fastlane/actions/upload_to_play_store.rb:33:in run' /Users/daichi/my/project/folder/vendor/bundle/ruby/2.7.0/gems/fastlane-2.216.0/fastlane/lib/fastlane/runner.rb:263:in block (2 levels) in execute_action'
/Users/daichi/my/project/folder/vendor/bundle/ruby/2.7.0/gems/fastlane-2.216.0/fastlane/lib/fastlane/actions/actions_helper.rb:69:in execute_action' /Users/daichi/my/project/folder/vendor/bundle/ruby/2.7.0/gems/fastlane-2.216.0/fastlane/lib/fastlane/runner.rb:255:in block in execute_action'
/Users/daichi/my/project/folder/vendor/bundle/ruby/2.7.0/gems/fastlane-2.216.0/fastlane/lib/fastlane/runner.rb:229:in chdir' /Users/daichi/my/project/folder/vendor/bundle/ruby/2.7.0/gems/fastlane-2.216.0/fastlane/lib/fastlane/runner.rb:229:in execute_action'
/Users/daichi/my/project/folder/vendor/bundle/ruby/2.7.0/gems/fastlane-2.216.0/fastlane/lib/fastlane/runner.rb:157:in trigger_action_by_name' /Users/daichi/my/project/folder/vendor/bundle/ruby/2.7.0/gems/fastlane-2.216.0/fastlane/lib/fastlane/fast_file.rb:159:in method_missing'
Fastfile:21:in block (2 levels) in parsing_binding' /Users/daichi/my/project/folder/vendor/bundle/ruby/2.7.0/gems/fastlane-2.216.0/fastlane/lib/fastlane/lane.rb:33:in call'
/Users/daichi/my/project/folder/vendor/bundle/ruby/2.7.0/gems/fastlane-2.216.0/fastlane/lib/fastlane/runner.rb:49:in block in execute' /Users/daichi/my/project/folder/vendor/bundle/ruby/2.7.0/gems/fastlane-2.216.0/fastlane/lib/fastlane/runner.rb:45:in chdir'
/Users/daichi/my/project/folder/vendor/bundle/ruby/2.7.0/gems/fastlane-2.216.0/fastlane/lib/fastlane/runner.rb:45:in execute' /Users/daichi/my/project/folder/vendor/bundle/ruby/2.7.0/gems/fastlane-2.216.0/fastlane/lib/fastlane/lane_manager.rb:47:in cruise_lane'
/Users/daichi/my/project/folder/vendor/bundle/ruby/2.7.0/gems/fastlane-2.216.0/fastlane/lib/fastlane/command_line_handler.rb:36:in handle' /Users/daichi/my/project/folder/vendor/bundle/ruby/2.7.0/gems/fastlane-2.216.0/fastlane/lib/fastlane/commands_generator.rb:110:in block (2 levels) in run'
/Users/daichi/my/project/folder/vendor/bundle/ruby/2.7.0/gems/commander-4.6.0/lib/commander/command.rb:187:in call' /Users/daichi/my/project/folder/vendor/bundle/ruby/2.7.0/gems/commander-4.6.0/lib/commander/command.rb:157:in run'
/Users/daichi/my/project/folder/vendor/bundle/ruby/2.7.0/gems/commander-4.6.0/lib/commander/runner.rb:444:in run_active_command' /Users/daichi/my/project/folder/vendor/bundle/ruby/2.7.0/gems/fastlane-2.216.0/fastlane_core/lib/fastlane_core/ui/fastlane_runner.rb:124:in run!'
/Users/daichi/my/project/folder/vendor/bundle/ruby/2.7.0/gems/commander-4.6.0/lib/commander/delegates.rb:18:in run!' /Users/daichi/my/project/folder/vendor/bundle/ruby/2.7.0/gems/fastlane-2.216.0/fastlane/lib/fastlane/commands_generator.rb:354:in run'
/Users/daichi/my/project/folder/vendor/bundle/ruby/2.7.0/gems/fastlane-2.216.0/fastlane/lib/fastlane/commands_generator.rb:43:in start' /Users/daichi/my/project/folder/vendor/bundle/ruby/2.7.0/gems/fastlane-2.216.0/fastlane/lib/fastlane/cli_tools_distributor.rb:123:in take_off'
/Users/daichi/my/project/folder/vendor/bundle/ruby/2.7.0/gems/fastlane-2.216.0/bin/fastlane:23:in <top (required)>' /Users/daichi/my/project/folder/vendor/bundle/ruby/2.7.0/bin/fastlane:23:in load'
/Users/daichi/my/project/folder/vendor/bundle/ruby/2.7.0/bin/fastlane:23:in `<top (required)>'

Environment

Output fastlane env

Details
[17:49:18]: fastlane detected a Gemfile in the current directory
[17:49:18]: However, it seems like you didn't use `bundle exec`
[17:49:18]: To launch fastlane faster, please use
[17:49:18]: 
[17:49:18]: $ bundle exec fastlane env
[17:49:18]: 
[17:49:18]: Get started using a Gemfile for fastlane https://docs.fastlane.tools/getting-started/ios/setup/#use-a-gemfile
[17:49:18]: Generating fastlane environment output, this might take a few seconds...
swift-driver version: 1.75.2 
✅ fastlane environment ✅

Stack

Key Value
OS 13.5.2
Ruby 2.7.2
Bundler? false
Git git version 2.39.2 (Apple Git-143)
Installation Source ~/.anyenv/envs/rbenv/versions/2.7.2/bin/fastlane
Host macOS 13.5.2 (22G91)
Ruby Lib Dir ~/.anyenv/envs/rbenv/versions/2.7.2/lib
OpenSSL Version OpenSSL 1.1.1v 1 Aug 2023
Is contained false
Is homebrew false
Is installed via Fabric.app false
Xcode Path /Applications/Xcode.app/Contents/Developer/
Xcode Version 14.3.1
Swift Version 5.8.1

System Locale

Variable Value
LANG en_US.UTF-8
LC_ALL
LANGUAGE

fastlane files:

`./fastlane/Fastfile`
# frozen_string_literal: true

default_platform(:android)

platform :android do
  desc 'Build and deploy Flutter app'

  lane :build_deploy do |options|
    flavor = options[:flavor]

    %w[dev stg prod].include?(flavor) || UI.user_error!('指定されたフレーバーが無効です。dev, stg, prodのいずれかを指定してください。')

    UI.important("Selected flavor: #{flavor}")
    # Flutterビルドの実行
    build_flutter_app(flavor)

    case flavor
    when 'dev', 'stg'
      deploy_app_distribution(flavor)
    when 'prod'
      upload_to_play_store
    end
  end

  lane :deploy_app_distribution do |options|
    flavor = options[:flavor]
    %w[dev stg].include?(flavor) || UI.user_error!('指定されたフレーバーが無効です。dev, stg, prodのいずれかを指定してください。')
    firebase_app_distribution(
      app: firebase_app_id(flavor),
      testers_file: "./fastlane/testers_#{flavor}.txt",
      firebase_cli_token: ENV['FIREBASE_TOKEN'],
      debug: true,
      apk_path: '../build/app/outputs/flutter-apk/app-release.apk'
    )
  end

  lane :upload_prod_play_store do
    upload_to_play_store(
      aab: 'build/app/outputs/bundle/release/app-release.aab',
      track_promote_to: internal,
      skip_upload_metadata: true,  
      skip_upload_images: true,  
      skip_upload_screenshots: true,  
      skip_upload_changelogs: true,  
      skip_upload_apk: true,  
    )
  end

  lane(:add_testers_app_distribution) do |options|
    flavor = options[:flavor]
    firebase_app_distribution_add_testers(
      testers_file: "./fastlane/testers_#{flavor}.txt"
    )
  end

  lane(:remove_testers_app_distribution) do |options|
    flavor = options[:flavor]
    firebase_app_distribution_remove_testers(
      testers_file: "./fastlane/testers_#{flavor}.txt"
    )
  end
end

def firebase_app_id(flavor)
  token = nil
  case flavor
  when 'dev'
    token = ENV['DEV_FIREBASE_APP_ID']
  when 'stg'
    token = ENV['STG_FIREBASE_APP_ID']
  when 'prod'
    UI.user_error!('prod flavor is not allowed!')
  end
  token
end

def build_flutter_app(flavor)
  dart_defines_file = "--dart-define-from-file=dart_defines/#{flavor}.json"

  case flavor
  when 'dev', 'stg'
    # dev または stg の場合、apk をビルド
    sh('fvm', 'flutter', 'build', 'apk', '--release', dart_defines_file)
  when 'prod'
    # prod の場合、appbundle をビルド
    sh('fvm', 'flutter', 'build', 'appbundle', '--release', '--target-platform', 'android-arm,android-arm64,android-x64', '-t' , 'lib/main.dart', dart_defines_file)
  else
    UI.user_error!("Unknown flavor: #{flavor}")
  end
end
`./fastlane/Appfile`
json_key_file("fastlane/play-store-credential-prod.json") # Path to the json secret file - Follow https://docs.fastlane.tools/actions/supply/#setup to get one
package_name("com.example.app") # e.g. com.krausefx.app

fastlane gems

Gem Version Update-Status
fastlane 2.216.0 ✅ Up-To-Date

Loaded fastlane plugins:

Plugin Version Update-Status
fastlane-plugin-firebase_app_distribution 0.7.3 ✅ Up-To-Date
Loaded gems
Gem Version
did_you_mean 1.4.0
public_suffix 5.0.3
addressable 2.8.5
artifactory 3.0.15
jmespath 1.6.2
aws-partitions 1.828.0
aws-eventstream 1.2.0
aws-sigv4 1.6.0
aws-sdk-core 3.183.1
aws-sdk-kms 1.71.0
aws-sdk-s3 1.135.0
babosa 1.0.4
CFPropertyList 3.0.6
colored 1.2
highline 2.0.3
commander 4.6.0
dotenv 2.8.1
emoji_regex 3.2.3
excon 0.103.0
faraday-em_http 1.0.0
faraday-em_synchrony 1.0.0
faraday-excon 1.1.0
faraday-httpclient 1.0.1
multipart-post 2.3.0
faraday-multipart 1.0.4
faraday-net_http 1.0.1
faraday-net_http_persistent 1.2.0
faraday-patron 1.0.0
faraday-rack 1.0.0
faraday-retry 1.0.3
ruby2_keywords 0.0.5
faraday 1.10.3
faraday_middleware 1.2.0
unf_ext 0.0.8.2
unf 0.1.4
domain_name 0.5.20190701
http-cookie 1.0.5
faraday-cookie_jar 0.0.7
fastimage 2.2.7
gh_inspector 1.1.3
uber 0.1.0
declarative 0.0.20
trailblazer-option 0.1.2
representable 3.2.0
retriable 3.1.2
mini_mime 1.1.5
jwt 2.7.1
multi_json 1.15.0
os 1.1.4
signet 0.18.0
googleauth 1.8.1
httpclient 2.8.3
google-apis-core 0.11.1
google-apis-androidpublisher_v3 0.50.0
google-apis-playcustomapp_v1 0.13.0
google-cloud-env 1.6.0
google-cloud-errors 1.3.1
google-cloud-core 1.6.0
google-apis-iamcredentials_v1 0.17.0
google-apis-storage_v1 0.19.0
digest-crc 0.6.5
google-cloud-storage 1.44.0
mini_magick 4.12.0
naturally 2.2.1
optparse 0.1.1
plist 3.7.0
rubyzip 2.3.2
security 0.1.3
simctl 1.6.10
terminal-notifier 2.0.0
unicode-display_width 2.4.2
terminal-table 3.0.2
tty-screen 0.8.1
tty-cursor 0.7.1
tty-spinner 0.9.3
word_wrap 1.0.0
atomos 0.1.3
claide 1.1.0
colored2 3.1.2
nanaimo 0.3.0
rexml 3.2.6
xcodeproj 1.23.0
rouge 2.0.7
xcpretty 0.3.0
xcpretty-travis-formatter 1.0.1
bundler 2.4.19
webrick 1.8.1
rake 13.0.6
json 2.6.3
forwardable 1.3.1
logger 1.4.2
cgi 0.1.0
date 3.0.0
timeout 0.1.0
stringio 0.1.0
uri 0.10.0
ipaddr 1.2.2
openssl 2.1.2
zlib 1.1.0
mutex_m 0.1.0
ostruct 0.2.0
strscan 1.0.3
io-console 0.5.6
delegate 0.1.0
fileutils 1.4.1
singleton 0.1.0
open3 0.1.0
yaml 0.1.0
psych 3.1.0
google-apis-firebaseappdistribution_v1 0.3.0
fastlane-plugin-firebase_app_distribution 0.7.3

generated on: 2023-09-25

[17:49:26]: Take notice that this output may contain sensitive information, or simply information that you don't want to make public. [17:49:26]: 🙄 Wow, that's a lot of markdown text... should fastlane put it into your clipboard, so you can easily paste it on GitHub? (y/n) y [17:49:32]: Successfully copied markdown into your clipboard 🎨 [17:49:32]: Open https://github.com/fastlane/fastlane/issues/new to submit a new issue ✅

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions