Arguments class

Comprehensive Firebase App Distribution arguments for automated app testing.

Extends PublisherArguments to provide Firebase-specific configuration for distributing applications to testers and testing groups. Supports advanced features like release notes, tester management, and group-based distribution.

Key capabilities:

  • Firebase App Distribution integration
  • Individual and group tester management
  • Release notes and documentation
  • Email and file-based distribution lists
  • APK and AAB binary support
  • Automated testing workflows

Example usage:

final args = Arguments(
  variables,
  filePath: '/path/to/app.apk',
  appId: '1:123456789:android:abcdef',
  binaryType: 'apk',
  releaseNotes: 'New features and bug fixes',
  groups: 'internal-qa,external-beta',
);
Inheritance

Constructors

Arguments(Variables variables, {required String filePath, required String appId, required String binaryType, String? releaseNotes, String? releaseNotesFile, String? testers, String? testersFile, String? groups, String? groupsFile, String? cliToken})
Creates a new Firebase App Distribution arguments instance.
Arguments.defaultConfigs(String appId, ArgResults? globalResults)
Creates default Firebase configuration for an app.
factory
Arguments.fromArgResults(ArgResults results, ArgResults? globalResults)
Creates Arguments instance from command-line arguments.
factory
Arguments.fromJson(Map<String, dynamic> json, {required Variables variables})
Creates Arguments instance from JSON configuration.
factory

Properties

appId String
Firebase application identifier for the target app.
final
argumentBuilder List<String>
Builds the Firebase CLI command arguments list.
getter/setter pairinherited-setteroverride-getter
arguments Future<List<String>>
Processes variables in arguments and returns the final command-line arguments.
no setterinherited
binaryType String
The type of application binary being published.
finalinherited
cliToken String?
Token to login in Firebase's CL Server
final
filePath String
The file system path to the application binary to be published.
getter/setter pairinherited
groups String?
Comma-separated list of tester group aliases.
final
groupsFile String?
Path to a file containing tester group aliases.
final
hashCode int
The hash code for this object.
no setterinherited
logger ColorizeLogger
Logger instance for outputting colored messages.
getter/setter pairinherited
parent PublisherJob
Reference to the parent publisher job that contains this publisher.
getter/setter pairinherited
publisher String
The name identifier of the publisher platform.
finalinherited
releaseNotes String?
Release notes text to include with the distribution.
final
releaseNotesFile String?
Path to a file containing release notes content.
final
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
testers String?
Comma-separated list of tester email addresses.
final
testersFile String?
Path to a file containing tester email addresses.
final
variables Variables
Variable processor for substituting placeholders in arguments.
finalinherited

Methods

noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
printJob() Future
Prints job configuration information to the console.
inherited
processFilesArgs() Future<void>
Processes and validates file arguments before publishing.
inherited
publish() Future<int>
Initiates the application publishing process.
inherited
toJson() Map<String, dynamic>
Serializes Arguments instance to JSON format.
override
toString() String
A string representation of this object.
inherited

Operators

operator ==(Object other) bool
The equality operator.
inherited

Static Properties

parser ↔ ArgParser
Command-line argument parser for Firebase App Distribution.
getter/setter pair