Skip to content

aoifemcl15/fastlane-plugin-clean_testflight_testers

 
 

Repository files navigation

clean_testflight_testers plugin

fastlane Plugin Badge

Getting Started

This project is a fastlane plugin. Due to incompatiblity with the App Store Connect API specifically around beta tester metrics, this plugin has a dependency on a fork of the fastlane repo - https://github.com/Xjkstar/fastlane.git.

This is a fork of https://github.com/fastlane-community/fastlane-plugin-clean_testflight_testers and includes a couple of improvements:

  1. Ensures the plugin still runs if it encounters a tester with no available metrics
  2. Uses the build version, instead of app version string for oldest build comparison
  3. Uses new fields from the App Store Connect API to read beta teser metrics, eg. installed build - this is why the plugin requires https://github.com/Xjkstar/fastlane.git.

You can point to this version of the plugin by adding gem 'fastlane-plugin-clean_testflight_testers', :git => 'https://github.com/aoifemcl15/fastlane-plugin-clean_testflight_testers' to your PluginFile. Additionally, you will also need to add gem "fastlane", :git => 'https://github.com/Xjkstar/fastlane.git' in your Gemfile.

About clean_testflight_testers

screenshot.png

Automatically remove TestFlight testers that are not actually testing your app

Just add the following to your fastlane/Fastfile

# Default setup
lane :clean do
  clean_testflight_testers
end

# This won't delete out inactive testers, but just print them
lane :clean do
  clean_testflight_testers(dry_run: true)
end

# Specify a custom number for what's "inactive"
lane :clean do
  clean_testflight_testers(days_of_inactivity: 120) # 120 days, so about 4 months
end

# Specify an oldest build number for what's "inactive"
lane :clean do
  clean_testflight_testers(oldest_build_number: 999) # users who are have got a build prior to 999 should be removed
end

# Provide custom app identifier / username
lane :clean do
  clean_testflight_testers(username: "apple@krausefx.com", app_identifier: "best.lane"")
end

The plugin will remove all testers that either:

  • Received a TestFlight email, but didn't accept the invite within the last 30 days
  • Installed the app within the last 30 days, but didn't launch it once

Unfortunately the iTunes Connect UI/API doesn't expose the timestamp of the last user session, so we can't really detect the last time someone used the app. The above rules will still help you, remove a big part of inactive testers.

This plugin could also be smarter, and compare the time stamp of the last build, and compare it with the latest tester activity, feel free to submit a PR for this feature 👍

Issues and Feedback

Make sure to update to the latest fastlane.

For any other issues and feedback about this plugin, please submit it to this repository.

Troubleshooting

If you have trouble using plugins, check out the Plugins Troubleshooting guide.

Using fastlane Plugins

For more information about how the fastlane plugin system works, check out the Plugins documentation.

About fastlane

fastlane is the easiest way to automate beta deployments and releases for your iOS and Android apps. To learn more, check out fastlane.tools.

About

Automatically remove TestFlight testers that are not actually testing your app

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Ruby 100.0%