Categorygithub.com/bitrise-steplib/steps-project-scanner
modulepackage
0.0.0-20240711073501-c026517013a7
Repository: https://github.com/bitrise-steplib/steps-project-scanner.git
Documentation: pkg.go.dev

# README

Project scanner

Step changelog

Scans repository for iOS, macOS, Android, Fastlane, Cordova, Ionic, React Native and Flutter projects

Description

This Step scans your repository to determine your project's type.

The Step scans for:

  • iOS and macOS projects, the Step detects CocoaPods and scans Xcode project files for valid Xcode command line configurations.
  • Android projects, the Step checks for build.gradle files and lists all the Gradle tasks. It also checks for a gradlew file.
  • Fastlane, the Step detects Fastfile and lists the available lanes.
  • Cordova projects, the Step checks for the config.xml file.
  • Ionic projects, the Step checks for the ionic.config.json and ionic.project files.
  • React Native projects, the Step checks for package.json files and also runs the iOS and Android native project scanners.
  • Flutter projects, the Step checks for the pubspec.yaml files.

Configuring the Step

To successfully run the Step, you need:

  1. An SSH key or Git HTTP credentials
  2. A repository

To configure the Step:

  1. POST url to send the scan results to: You can send your app's scan results to an URL as a POST request.
  2. URL to get app icon candidates upload URLs: You can upload your app's icons using this input.
  3. Verbose log option: You can set this input to yes to produce more informative logs.
  4. Activate SSH key and clone git repo inside the Step: You can set this input to true to activate an SSH key and clone the git repository of your app.

Troubleshooting

If you receive an error message, No known platform detected, make sure that you cloned the correct repository and you have a valid SSH key.

Useful links

🧩 Get started

Add this step directly to your workflow in the Bitrise Workflow Editor.

You can also run this step directly with Bitrise CLI.

⚙️ Configuration

Inputs
KeyDescriptionFlagsDefault
scan_dirThe Step will look for the projects in this directory.required$BITRISE_SOURCE_DIR
scan_result_submit_urlIf provided, the scan results will be sent to the given URL, with a POST request.$BITRISE_SCAN_RESULT_POST_URL
scan_result_submit_api_tokenIf provided and scan_result_submit_url also provided, this API Token will be used for sending the Scan Results.sensitive$BITRISE_APP_API_TOKEN
icon_candidates_urlIf provided, the app icons will be uploaded.$BITRISE_AVATAR_CANDIDATES_POST_URL
verbose_logYou can enable the verbose log for easier debugging.false
enable_repo_cloneIf set to yes then it will setup the ssh key and will clone the repo with the provided url and branch name.no
ssh_rsa_private_keySSH key to be used for the git clone.sensitive$SSH_RSA_PRIVATE_KEY
git_http_usernameUsername for establishing an HTTP(S) connection to the repositorysensitive$GIT_HTTP_USERNAME
git_http_passwordPersonal access token (or password) for establishing an HTTP(S) connection to the repositorysensitive$GIT_HTTP_PASSWORD
repository_urlUrl to be used for the git clone.$GIT_REPOSITORY_URL
branchBranch to be used for the git clone.$BITRISE_GIT_BRANCH
Outputs There are no outputs defined in this step

🙋 Contributing

We welcome pull requests and issues against this repository.

For pull requests, work on your changes in a forked repository and use the Bitrise CLI to run step tests locally.

Learn more about developing steps:

# Functions

LogError sends analytics log using log.RErrorf by setting the stepID and data/build_slug.