buildkitTool top-level property

ToolDefinition buildkitTool
final

Buildkit tool definition.

Implementation

final buildkitTool = ToolDefinition(
  name: 'buildkit',
  description: 'Pipeline-based build orchestration tool',
  version: BuildkitVersionInfo.version,
  versionString: 'BuildKit ${BuildkitVersionInfo.versionLong}',
  mode: ToolMode.multiCommand,
  wiringFile: ToolDefinition.kAutoWiringFile,
  helpTopics: defaultHelpTopics,
  features: const NavigationFeatures(
    projectTraversal: true,
    gitTraversal: true,
    recursiveScan: true,
    interactiveMode: false,
    dryRun: true,
    jsonOutput: false,
    verbose: true,
  ),
  globalOptions: const [
    OptionDefinition.flag(
      name: 'list',
      abbr: 'l',
      description: 'List available pipelines and commands',
    ),
    OptionDefinition.flag(
      name: 'workspace-recursion',
      abbr: 'w',
      description: 'Shell out to sub-workspaces instead of skipping',
    ),
  ],
  commands: [
    // Build tools
    versionerCommand,
    bumpversionCommand,
    bumppubspecCommand,
    compilerCommand,
    runnerCommand,
    cleanupCommand,
    dependenciesCommand,
    publisherCommand,
    statusCommand,
    buildsorterCommand,
    unreferencedCommand,
    executeCommand,
    // Pub commands
    pubgetCommand,
    pubgetallCommand,
    pubupdateCommand,
    pubupdateallCommand,
    // Git tools
    gitCommand,
    gitstatusCommand,
    gitcommitCommand,
    gitpullCommand,
    gitbranchCommand,
    gittagCommand,
    gitcheckoutCommand,
    gitresetCommand,
    gitcleanCommand,
    gitsyncCommand,
    gitpruneCommand,
    gitstashCommand,
    gitunstashCommand,
    gitcompareCommand,
    gitmergeCommand,
    gitsquashCommand,
    gitrebaseCommand,
    // Other
    findProjectCommand,
    dcliCommand,
  ],
  helpFooter: '''
Execution Modes:
  Project Mode (default): Runs from current directory with -s . -r -b defaults
  Workspace Mode:         Runs from workspace root (triggered by -R, -s <path>, -i, -o)

Pipeline Execution:
  Pipelines are defined in buildkit_master.yaml or buildkit.yaml under buildkit.pipelines.
  Run a pipeline by name: buildkit <pipeline-name>

Configuration:
  buildkit_master.yaml — Workspace-level configuration
  buildkit.yaml        — Project-level configuration
''',
);