{"id":22951834,"url":"https://github.com/fueled/fastlane-plugin-fueled","last_synced_at":"2025-10-14T06:31:52.381Z","repository":{"id":37825961,"uuid":"428617978","full_name":"Fueled/fastlane-plugin-fueled","owner":"Fueled","description":"Fueled Fastlane Plugin","archived":false,"fork":false,"pushed_at":"2025-07-25T10:38:33.000Z","size":109,"stargazers_count":5,"open_issues_count":1,"forks_count":5,"subscribers_count":6,"default_branch":"main","last_synced_at":"2025-08-24T12:50:12.120Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Ruby","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Fueled.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2021-11-16T10:53:22.000Z","updated_at":"2025-07-25T09:27:36.000Z","dependencies_parsed_at":"2023-02-19T04:50:29.694Z","dependency_job_id":"093a5f23-932e-4174-b423-7bd14df244fd","html_url":"https://github.com/Fueled/fastlane-plugin-fueled","commit_stats":null,"previous_names":[],"tags_count":10,"template":false,"template_full_name":null,"purl":"pkg:github/Fueled/fastlane-plugin-fueled","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Fueled%2Ffastlane-plugin-fueled","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Fueled%2Ffastlane-plugin-fueled/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Fueled%2Ffastlane-plugin-fueled/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Fueled%2Ffastlane-plugin-fueled/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Fueled","download_url":"https://codeload.github.com/Fueled/fastlane-plugin-fueled/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Fueled%2Ffastlane-plugin-fueled/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":279018110,"owners_count":26086281,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-10-14T02:00:06.444Z","response_time":60,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-12-14T15:18:57.772Z","updated_at":"2025-10-14T06:31:52.364Z","avatar_url":"https://github.com/Fueled.png","language":"Ruby","funding_links":[],"categories":[],"sub_categories":[],"readme":"# fueled plugin\n\n[![fastlane Plugin Badge](https://rawcdn.githack.com/fastlane/fastlane/master/fastlane/assets/plugin-badge.svg)](https://rubygems.org/gems/fastlane-plugin-fueled)\n![Version](https://img.shields.io/github/v/release/Fueled/fastlane-plugin-fueled)\n\n## Getting Started\n\nThis project is a [_fastlane_](https://github.com/fastlane/fastlane) plugin. To get started\nwith `fastlane-plugin-fueled`, add it to your project by adding:\n\n```\ngem 'fastlane-plugin-fueled', git: \"https://github.com/Fueled/fastlane-plugin-fueled\"\n```\n\n## About Fueled Fastlane plugin\n\nThis plugin embeds build steps that we use in our CI/CD pipeline at Fueled. It has steps that could\nbe reused easily by any project, on any platform (ios/android), and some others that are really\nFueled specific.\n\n## Available Actions\n\n* Common\n    - [create_github_release](#user-content-create_github_release)\n    - [generate_changelog](#user-content-generate_changelog)\n    - [is_build_necessary](#user-content-is_build_necessary)\n    - [move_linear_tickets](#user-content-move_linear_tickets)\n    - [use_git_credential_store](#user-content-use_git_credential_store)\n    - [tag](#user-content-tag)\n    - [upload_to_app_center](#user-content-upload_to_app_center)\n* iOS\n    - [define_versions_ios](#user-content-define_versions_ios)\n    - [import_base_64_certificates](#user-content-import_base64_certificates)\n    - [generate_secrets_ios](#generate_secrets_ios)\n    - [install_profiles](#user-content-install_profiles)\n    - [install_wwdr_certificate](#user-content-install_wwdr_certificate)\n    - [set_app_versions_plist_ios](#user-content-set_app_versions_plist_ios)\n    - [set_app_versions_xcodeproj_ios](#user-content-set_app_versions_xcodeproj_ios)\n    - [check_code_coverage_ios](#user-content-check_code_coverage_ios)\n    - [generate_code_coverage_reports_ios](#user-content-generate_code_coverage_reports_ios)\n    - [upload_to_app_store](#user-content-upload_to_app_store)\n    - [upload_to_test_fairy_ios](#user-content-upload_to_test_fairy_ios)\n* Android\n    - [define_versions_android](#user-content-define_versions_android)\n    - [set_app_versions_android](#user-content-set_app_versions_android)\n    - [upload_to_test_fairy_android](#user-content-upload_to_test_fairy_android)\n* Flutter\n    - [define_versions_flutter](#user-content-define_versions_flutter)\n    - [set_app_versions_flutter](#user-content-set_app_versions_flutter)\n    - [formatting_checks_flutter](#user-content-formatting_checks_flutter)\n    - [generate_files_flutter](#user-content-generate_files_flutter)\n    - [unit_tests_flutter](#user-content-unit_tests_flutter)\n    - [integration_tests_flutter](#user-content-unit_tests_flutter)\n* React Native\n    - [define_versions_react_native](#user-content-define_versions_react_native)\n\n## Example\n\nWe use `dotenv` files to specify most of the values being used by the actions. The advantage is that\nyou can have several `dotenv` files, depending on the build target, or even the audience you intend\nto deliver the build to.\n\nNote that sensitive data should be hosted outside of the dotenv file, and passed at build time.\n\nHere is an example of a `dotenv` file for the iOS platform :\n\n```\n# General\nGITHUB_TOKEN=$GITHUB_TOKEN\nREPOSITORY_NAME=$REPOSITORY_NAME\nWORKSPACE=App.xcworkspace\nPROJECT_PATH=App.xcodeproj\nBUILD_CONFIGURATION=Debug\nSCHEME=SchemeToBuild\nEXPORT_METHOD=enterprise\nVERSION_BUMP_TYPE=minor\n# Signing\nP12_PASSWORD=$P12_PASSWORD\nBASE64_CERTIFICATE_INPUT=A_BASE64_ENCODED_P12_FILE\n# Appcenter\nAC_API_TOKEN=$APPCENTER_API_TOKEN\nAC_OWNER_NAME=OwnerName\nAC_APP_NAME=AppName\nAC_DISTRIBUTION_GROUPS=\"Alpha Release,Collaborators\"\nAC_NOTIFY_TESTERS=true\n# Testflight\nTESTFLIGHT_USERNAME=$APPLE_ID\nTESTFLIGHT_APP_SPECIFIC_PASSWORD=$APPLE_APP_PASSWORD\n```\n\nHere is a sample iOS Fastfile leveraging this plugin.\n\n```\nfastlane_version \"2.197.0\"\nopt_out_usage\n\nplatform :ios do\n  keychain_name = \"temp\"\n  keychain_password = \"foo\"\n\n  lane :app_center do\n    pre_build\n    define_versions_ios\n    set_app_versions_xcodeproj_ios\n    build\n    upload_to_app_center\n    tag\n    create_github_release\n    post_build\n  end\n\n  lane :app_store do\n    pre_build\n    define_versions_ios\n    set_app_versions_xcodeproj_ios\n    build\n    upload_to_testflight\n    tag\n    create_github_release\n    post_build\n  end\n\n  lane :tests do\n    run_tests(\n      workspace: ENV['WORKSPACE'],\n      devices: [\"iPhone 13\",],\n      scheme: ENV['SCHEME']\n    )\n  end\n\n  private_lane :pre_build do\n    create_keychain(\n      name: keychain_name,\n      default_keychain: true,\n      password: keychain_password,\n      unlock: true,\n      timeout: 0\n    )\n    install_wwdr_certificate(\n      keychain_name: keychain_name,\n      keychain_password: keychain_password\n    )\n    import_base64_certificates(\n      keychain_name: keychain_name,\n      keychain_password: keychain_password\n    )\n    install_profiles\n    generate_changelog\n  end\n\n  private_lane :post_build do\n    delete_keychain(\n      name: keychain_name\n    )\n  end\n\n  private_lane :build do\n    build_ios_app(\n      workspace: ENV['WORKSPACE'],\n      configuration: ENV['BUILD_CONFIGURATION'],\n      scheme: ENV['SCHEME'],\n      silent: true,\n      clean: false,\n      disable_xcpretty: false,\n      export_options: {\n        method: ENV['EXPORT_METHOD']\n      }\n    )\n  end\nend\n```\n\n## Parameters\n\n#### `create_github_release`\n\nCreates a Github Release for the given tag, and changelog\n\nOnly create a GH release if triggered on CI\n\n| Key \u0026 Env Var | Description | Default Value\n|-----------------|--------------------|---|\n| `short_version_string` \u003cbr/\u003e NONE | The short version string (eg: 0.2.6) | `Actions.lane_context[SharedValues::SHORT_VERSION_STRING]` | |\n| `build_number` \u003cbr/\u003e NONE | The build number (eg: 625) | `Actions.lane_context[SharedValues::FUELED_BUILD_NUMBER]` |\n| `build_config` \u003cbr/\u003e `BUILD_CONFIGURATION` | The build configuration (eg: Debug) | `Debug` |\n| `repository_name` \u003cbr/\u003e `REPOSITORY_NAME` | The repository name (eg: fueled/zenni-ios) | |\n| `github_token` \u003cbr/\u003e `GITHUB_TOKEN` | A Github Token to interact with the GH APIs | |\n| `upload_assets` \u003cbr/\u003e `UPLOAD_ASSETS` | Assets to be included with the release | `Helper::FueledHelper.default_output_file` |\n\n#### `define_versions_android`\n\nSets the new build version name and build number as shared values. In case\nthe `DISABLE_VERSION_LIMIT` environment variable is not set we cap the version bumping limit to\n1.x.x.\n\nThis action sets shared values for build number (`SharedValues::FUELED_BUILD_NUMBER`) and build\nversion name (`SharedValues::SHORT_VERSION_STRING`). Your Fastfile should use these values in a next\nstep to set them to the project accordingly (set_app_versions_android or set_app_versions_android).\n\n| Key \u0026 Env Var                                         | Description | Default Value\n|-------------------------------------------------------|--------------------|---------------|\n| `bump_type` \u003cbr/\u003e `VERSION_BUMP_TYPE`                 | The version to bump (`major`, `minor`, `patch`, or `none`) | `none`        |\n| `disable_version_limit` \u003cbr/\u003e `DISABLE_VERSION_LIMIT` | When true it skips the version limiting currently set for `1.x.x`+ versions | `false`       |\n| `build_type` \u003cbr/\u003e `BUILD_CONFIGURATION`              | This is used to retrieve tag belonging to this build_type | `none`\n\n#### `define_versions_flutter`\n\nSets the new version (--build-name) and build number (--build-number) as shared values, without\nsetting them in the pubspec.\n\nThis action sets shared values for *build-number* (`SharedValues::FUELED_BUILD_NUMBER`) and *\nbuild-name*(`SharedValues::SHORT_VERSION_STRING`). Your Fastfile should use these values in a next\nstep to set them to the project accordingly (`set_app_versions_flutter`). In case\nthe `DISABLE_VERSION_LIMIT` environment variable is not set we cap the version bumping limit to\n1.x.x.\n\n| Key \u0026 Env Var | Description | Default Value\n|-----------------|--------------------|---|\n| `bump_type` \u003cbr/\u003e `VERSION_BUMP_TYPE` | The version to bump (`major`, `minor`, `patch`, or `none`) | `none`\n| `disable_version_limit` \u003cbr/\u003e `DISABLE_VERSION_LIMIT` | When true it skips the version limiting currently set for `1.x.x`+ versions | `false`       |\n| `build_type` \u003cbr/\u003e `BUILD_CONFIGURATION` | This is used to retrieve tag belonging to this build_type | `none`\n\n#### `define_versions_ios`\n\nSets the new CFBundleVersion and CFBundleShortVersion as shared values, without setting them in the\nproject. In case the `` environment variable is not set we cap the version bumping limit to 1.x.x.\n\nThis action sets shared values for `CFBundleVersion` (`SharedValues::FUELED_BUILD_NUMBER`)\nand `CFBundleShortVersion` (`SharedValues::SHORT_VERSION_STRING`).\n\nYour Fastfile should use these values in a next step to set them to the project\naccordingly (`set_app_versions_xcodeproj_ios` or `set_app_versions_plist_ios`).\n\n| Key \u0026 Env Var | Description | Default Value\n|-----------------|--------------------|---|\n| `project_path` \u003cbr/\u003e `PROJECT_PATH` | The path to the project .xcodeproj |  |\n| `bump_type` \u003cbr/\u003e `VERSION_BUMP_TYPE` | The version to bump (`major`, `minor`, `patch`, or `none`) | `none`\n| `disable_version_limit` \u003cbr/\u003e `DISABLE_VERSION_LIMIT` | When true it skips the version limiting currently set for `1.x.x`+ versions | `false`       |\n| `build_type` \u003cbr/\u003e `BUILD_CONFIGURATION` | This is used to retrieve tag belonging to this build_type | `none`\n\n#### `define_versions_react_native`\n\nSets the new version and build number as shared values, without setting them in the package.json\nfile or the projects themselves.\n\nThis action sets shared values for build number (`SharedValues::FUELED_BUILD_NUMBER`) and version\nnumber (`SharedValues::SHORT_VERSION_STRING`). Your Fastfile should use these values in a next step\nto set them to the project accordingly (`set_app_versions_plist_ios` and `set_app_versions_android`)\n.\n\n| Key \u0026 Env Var | Description | Default Value\n|-----------------|--------------------|---|\n| `bump_type` \u003cbr/\u003e `VERSION_BUMP_TYPE` | The version to bump (`major`, `minor`, `patch`, or `none`) | `none`\n| `disable_version_limit` \u003cbr/\u003e `DISABLE_VERSION_LIMIT` | When true it skips the version limiting currently set for `1.x.x`+ versions | `false`       |\n| `build_type` \u003cbr/\u003e `BUILD_CONFIGURATION` | This is used to retrieve tag belonging to this build_type | `none`\n\n#### `generate_changelog`\n\nGenerate a changelog.\n\nChangelog is made of commits between now, and the previous tag using the same build configuration\n\n| Key \u0026 Env Var | Description                                                     | Default Value\n|-----------------|-----------------------------------------------------------------|---|\n| `build_config` \u003cbr/\u003e `BUILD_CONFIGURATION` | The build configuration (eg: Debug)                             | `Debug` |\n| `ticket_base_url` \u003cbr/\u003e `TICKET_BASE_URL` | The base url for tickets (eg. https://linear.app/fueled/issue/) | `https://linear.app/fueled/issue/` |\n\n#### `generate_secrets_ios`\n\nGenerate [ArkanaKeys](https://github.com/rogerluan/arkana) Package containing project secrets.\n\nThe generated package contains secrets based on the provided template and environment file. \n\n| Key \u0026 Env Var | Description                                                     | Default Value\n|-----------------|-----------------------------------------------------------------|---|\n| `template_file` \u003cbr/\u003e `ARKANA_TEMPLATE_FILE` | Name/Path of Arkana template file                             | `.arkana.yml` |\n| `environment_file` \u003cbr/\u003e `ARKANA_ENVIRONMENT_FILE` | Name/Path of Arkana environment file | `.env.arkana_ci` |\n\n#### `import_base64_certificates`\n\nImport p12 certificates encoded as base64\n\n| Key \u0026 Env Var | Description | Default Value\n|-----------------|--------------------|---|\n| `base64_input` \u003cbr\u003e `BASE64_CERTIFICATE_INPUT` | The base64 string describing the p12 file | |\n| `p12_password` \u003cbr/\u003e `P12_PASSWORD` | The decrypted p12 password | |\n| `keychain_name` \u003cbr/\u003e `KEYCHAIN_NAME` | The keychain name to install the certificates to | `login` |\n| `keychain_password` \u003cbr/\u003e `KEYCHAIN_PASSWORD` | The keychain password to install the certificates to | |\n\n#### `install_profiles`\n\nInstall provisioning profiles from the given folder\n\n| Key \u0026 Env Var | Description | Default Value\n|-----------------|--------------------|---|\n| `folder` \u003cbr/\u003e `PROFILES_FOLDER` | The folder where the provisioning profiles are stored | `fastlane/profiles` |\n\n#### `install_wwdr_certificate`\n\nPulls and adds the WWDR Apple Certificate to the given keychain\n\n| Key \u0026 Env Var | Description | Default Value\n|-----------------|--------------------|---|\n| `keychain_name` \u003cbr/\u003e `KEYCHAIN_NAME` | The keychain name to install the certificates to | `login` |\n| `keychain_password` \u003cbr/\u003e `KEYCHAIN_PASSWORD` | The keychain password to install the certificates to | |\n\n### `is_build_necessary`\n\nDefines if the build is necessary by looking up changes since the last tag for the same build\nconfiguration.\u003cbr/\u003e\nIf the number of revisions between the last tag matching the given build configuration, and HEAD is\nhigher than 0, the action will return true.\n\n| Key \u0026 Env Var | Description | Default Value\n|-----------------|--------------------|---|\n| `build_config` \u003cbr/\u003e `BUILD_CONFIGURATION` | The build configuration (eg: Debug) | |\n| `force_necessary` \u003cbr/\u003e `FORCE_NECESSARY` | If the lane should continue, regardless of changes being made or not | `false` |\n\n#### `move_linear_tickets`\n\nAutomatically moves Linear tickets form a state to another one, for a specific team and a set of\nlabels (comma separated). If any of the parameter is not provided, the action will emit a warning\nand be skipped.\n\n| Key \u0026 Env Var | Description | Default Value\n|-----------------|--------------------|---|\n| `linear_api_key` \u003cbr/\u003e `FUELED_LINEAR_API_KEY` | The Linear API key | |\n| `linear_team_id` \u003cbr/\u003e `FUELED_LINEAR_TEAM_ID` | The Linear Team ID | |\n| `from_state` \u003cbr/\u003e `FUELED_LINEAR_FROM_STATE` | The state ID to issues should be moved from | |\n| `to_state` \u003cbr/\u003e `FUELED_LINEAR_TO_STATE` | The state ID to issues should be moved to | |\n| `labels` \u003cbr/\u003e `FUELED_LINEAR_LABELS` | The label IDs of the tickets to filter with (comma separated for multiple) | |\n\n#### `set_app_versions_android`\n\nUpdate the Android app version using the passed parameters.\n\n| Key \u0026 Env Var | Description | Default Value\n|-----------------|--------------------|---|\n| `short_version_string` | The short version string (eg: 0.2.6) | `SharedValues::SHORT_VERSION_STRING` |\n| `build_number` \u003cbr/\u003e `BUILD_NUMBER` | The build number (eg: 625) | `SharedValues::FUELED_BUILD_NUMBER` |\n\n#### `set_app_versions_flutter`\n\nUpdate the pubspec.yaml file with the passed short version, build number, and build configuration.\n\n| Key \u0026 Env Var | Description | Default Value\n|-----------------|--------------------|---|\n| `build_config` \u003cbr/\u003e `BUILD_CONFIGURATION` | The build configuration (eg: Debug) | |\n| `short_version_string` | The short version string (eg: 0.2.6) | `SharedValues::SHORT_VERSION_STRING` |\n| `build_number` | The build number (eg: 625) | `SharedValues::FUELED_BUILD_NUMBER` |\n\n#### `set_app_versions_plist_ios`\n\nUpdate the iOS app versions in the plist file (`CFBundleVersion` \u0026 `CFShortBundleVersion`) using the\npassed parameters. Note that an export method of `app-store` will trim the `CFBundleVersion` to only\ncontain the build number.\n\n| Key \u0026 Env Var | Description | Default Value\n|-----------------|--------------------|---|\n| `project_path` \u003cbr/\u003e `PROJECT_PATH` | The path to the project .xcodeproj |  |\n| `build_config` \u003cbr/\u003e `BUILD_CONFIGURATION` | The build configuration (eg: Debug) | |\n| `short_version_string` | The short version string (eg: 0.2.6) | `SharedValues::SHORT_VERSION_STRING` |\n| `build_number` \u003cbr/\u003e `BUILD_NUMBER` | The build number (eg: 625) | `SharedValues::FUELED_BUILD_NUMBER` |\n| `export_method` \u003cbr/\u003e `EXPORT_METHOD` | The build export method (eg: app-store) | |\n\n#### `set_app_versions_xcodeproj_ios`\n\nUpdate the iOS app versions in the xcodeproj (`CFBundleVersion` \u0026 `CFShortBundleVersion`) using the\npassed parameters. Note that an export method of `app-store` will trim the `CFBundleVersion` to only\ncontain the build number.\n\n| Key \u0026 Env Var | Description | Default Value\n|-----------------|--------------------|---|\n| `project_path` \u003cbr/\u003e `PROJECT_PATH` | The path to the project .xcodeproj |  |\n| `build_config` \u003cbr/\u003e `BUILD_CONFIGURATION` | The build configuration (eg: Debug) | |\n| `short_version_string` | The short version string (eg: 0.2.6) | `SharedValues::SHORT_VERSION_STRING` |\n| `build_number` \u003cbr/\u003e `BUILD_NUMBER` | The build number (eg: 625) | `SharedValues::FUELED_BUILD_NUMBER` |\n| `export_method` \u003cbr/\u003e `EXPORT_METHOD` | The build export method (eg: app-store) | |\n\n### `check_code_coverage_ios`\n\nCheck how much of your code is covered by unit tests.\n\n| Key \u0026 Env Var | Description | Default Value\n|-----------------|--------------------|---|\n| `code_coverage_config_file_path` | The path of the code coverage config file, the structure of this file is created by Fueled |  |\n| `result_bundle_file_path` | The result bundle file path (xcresult) | |\n| `minimum_code_coverage_percentage` | The minimum code coverage percentage accepted (eg: 64.5) | 80 |\n\n### `generate_code_coverage_reports_ios`\n\nGenerate code coverage reports and return the path of the generated file.\n\n| Key \u0026 Env Var | Description | Default Value\n|-----------------|--------------------|---|\n| `code_coverage_config_file_path` | The path of the code coverage config file, the structure of this file is created by Fueled |  |\n| `result_bundle_file_path` | The result bundle file path (xcresult) | |\n| `minimum_code_coverage_percentage` | The minimum code coverage percentage accepted (eg: 64.5) | 80 |\n\n\n#### `use_git_credential_store`\n\nStore your git credential in the git credential store (~/.git-credentials)\n\n| Key \u0026 Env Var | Description | Default Value\n|-----------------|--------------------|---|\n| `git_token` \u003cbr/\u003e `GIT_TOKEN` | The git token that will be stored | |\n| `git_user_name` \u003cbr/\u003e `GIT_USER_NAME` | The git username that will be stored | |\n| `git_host` \u003cbr/\u003e `GIT_HOST` | The host of your git repository | |\n\n#### `tag`\n\nTag the version using the following pattern : `v[short_version]#[build_number]-[build_config]`\n\nNote that tagging happens only on CI\n\n| Key \u0026 Env Var | Description | Default Value\n|-----------------|--------------------|---|\n| `build_config` \u003cbr/\u003e `BUILD_CONFIGURATION` | The build configuration (eg: Debug) | |\n| `short_version_string` | The short version string (eg: 0.2.6) | `SharedValues::SHORT_VERSION_STRING` |\n| `build_number` \u003cbr/\u003e `BUILD_NUMBER` | The build number (eg: 625) | `SharedValues::FUELED_BUILD_NUMBER` |\n\n#### `upload_to_app_center`\n\nUpload the given file to app center. You need to pass custom distribution groups to properly target\naudiences. Note that it only runs on CI.\n\n| Key \u0026 Env Var | Description | Default Value\n|-----------------|--------------------|---|\n| `api_token` \u003cbr/\u003e `AC_API_TOKEN` | The API Token to interact with AppCenter APIs | |\n| `owner_name` \u003cbr/\u003e `AC_OWNER_NAME` | The owner/organization name in AppCenter | `Fueled` |\n| `app_name` \u003cbr/\u003e `AC_APP_NAME` | The app name as set in AppCenter | |\n| `file_path` | The path to the your app file | `Helper::FueledHelper.default_output_file` |\n| `mapping` | The path to the your Android app mapping file | |\n| `dsym` | The path to the your iOS app dysm file | |\n| `groups` \u003cbr/\u003e `AC_DISTRIBUTION_GROUPS` | A comma separated list of distribution groups | |\n| `notify_testers` \u003cbr/\u003e `AC_NOTIFY_TESTERS` | Should the testers be notified | |\n| `changelog` | The changelog for this release | |\n\n#### `upload_to_app_store`\n\nUpload the given file to the AppStore (TestFlight)\nThis action uses an application specific password. Note that it only runs on CI.\n\n| Key \u0026 Env Var | Description | Default Value\n|-----------------|--------------------|---|\n| `file_path` | The path to the your app file | `Helper::FueledHelper.default_output_file` |\n| `username` \u003cbr/\u003e `TESTFLIGHT_USERNAME` | The app name as set in AppCenter | |\n| `password` \u003cbr/\u003e `TESTFLIGHT_APP_SPECIFIC_PASSWORD` | The AppleId app specific password | |\n| `target_platform` | The target platform (`macos` | `ios` | `appletvos`) | `ios` |\n\n#### `upload_to_test_fairy_ios`\n#### `upload_to_test_fairy_android`\n\nUpload the given file to TestFairy. This action uses an API Key. Note that it only runs on CI.\n\n| Key \u0026 Env Var | Description | Default Value\n|-----------------|--------------------|---|\n| `api_key` | The upload API token to interact with\u003cbr/\u003eTestFairy APIs | |\n| `ipa` (iOS) \u003cbr/\u003e `apk` (Android) | The path to the your app file | |\n| `comment` \u003cbr/\u003e | The changelog for this release | `Actions.lane_context[`\u003cbr/\u003e\u0026nbsp;\u0026nbsp;\u0026nbsp;\u0026nbsp;`SharedValues::CHANGELOG_MARKDOWN_PUBLIC]` |\n| `dsym` (iOS) \u003cbr/\u003e `mapping` (Android) | The path to your IPA dsym/APK mapping file | |\n\n#### `formatting_checks_flutter`\n\nCheck the formatting of the code using `flutter format`\n\n#### `generate_files_flutter`\n\nPerforms code generation\n\n| Key \u0026 Env Var | Description | Default Value\n|-----------------|--------------------|---|\n| `build_variant` | The build variant used for generating files | `debug` |\n\n#### `unit_tests_flutter`\n\nRun unit tests and check code coverage\n\n#### `integration_tests_flutter`\n\nRun integration tests\n\n## Issues and Feedback\n\nFor any other issues and feedback about this plugin, please submit it to this repository.\n\n## Troubleshooting\n\nIf you have trouble using plugins, check out\nthe [Plugins Troubleshooting](https://docs.fastlane.tools/plugins/plugins-troubleshooting/) guide.\n\n## Using _fastlane_ Plugins\n\nFor more information about how the `fastlane` plugin system works, check out\nthe [Plugins documentation](https://docs.fastlane.tools/plugins/create-plugin/).\n\n## About _fastlane_\n\n_fastlane_ is the easiest way to automate beta deployments and releases for your iOS and Android\napps. To learn more, check out [fastlane.tools](https://fastlane.tools).","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffueled%2Ffastlane-plugin-fueled","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ffueled%2Ffastlane-plugin-fueled","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffueled%2Ffastlane-plugin-fueled/lists"}