run method

  1. @override
Future? run()
override

Executes the GitHub Releases publishing workflow.

Parses command-line arguments, creates Arguments instance, and initiates the GitHub publishing process. Handles the complete release workflow including validation, file processing, and GitHub API integration.

Process flow:

  1. Parse and validate command-line arguments
  2. Create Arguments instance with configuration
  3. Execute GitHub API release operations
  4. Handle results and error conditions

Returns Future that completes with the exit code:

  • 0 = Success (release created/updated with assets)
  • Non-zero = Error (release or upload failed)

Throws exception if required arguments are missing or invalid.

Implementation

@override
Future? run() =>
    github.Arguments.fromArgResults(argResults!, globalResults).publish();