vsts-flutter-tasks
                                
                                 vsts-flutter-tasks copied to clipboard
                                
                                    vsts-flutter-tasks copied to clipboard
                            
                            
                            
                        Flutter build tasks for Azure DevOps Pipelines/TFS.
Flutter for Azure DevOps
Flutter build task for Azure DevOps.
Installation
Installation can be done using Visual Studio MarketPlace.
Source Code
Source code can be found on Github.
Usage
Add the tasks to your build definition.
Install

Installs the Flutter SDK onto the running agent if not already installed. Then uses it for following tasks.
- Select the channel:stable (default),beta, ordev.
- Select the versionof the SDK to install:latest (default),custom. Ifcustomis specified, acustom versionmust be set.
- (Optional). Set the custom version(in a<M>.<m>.<p>semver format) if needed.
Build

Build the given mobile application project. You must call the Flutter Install task, set a FlutterToolPath environment variable, or use the optional Flutter SDK Path task entry that points to your flutter/bin folder before execution. All the application bundles are created into the build/outputs folder of your project.
- Select the project source directory(that contains topubspec.yamlfile).
- Select the targetplatform:Android (default),iOS, orAllfor both.
- (Optional). Set flutter sdk pathif using a local agent with a pre-installed Flutter SDK, can specify the path to utilize it. Otherwise use Flutter Install.
- (Optional). Set package name(like1.2.3) that will override the manifest's one.
- (Optional). Set package number(like12) that will override the manifest's one.
- (Optional). Set build flavour(likedevelopment) to specify a build flavour. Must match Android Gradle flavor definition or XCode scheme.
- (Optional). Set debugif you wish to override the default release mode for the build.
- (Optional). Set Additional argumentsif you wish to adds custom arguments to thebuildcommand.
- (Android).(Optional). Set platformfor the Android target:android-arm (default),android-arm64.
- (iOS).(Optional). Set platformfor the iOS target:device (default),simulator.
- (iOS).(Optional). Codesign the application bundle (only available on device builds, and activated by default). Warning: you must install a valid certificate before build with the Install an Apple Certificatetask
Test

Launch tests and publish a report as build test results.
- Select the project source directory(that contains topubspec.yamlfile).
- (Optional). Set test nameas a regular expression matching substrings of the names of tests to run.
- (Optional). Set Test plain nameas a plain-text substring of the names of tests to run.
- (Optional). Set Test plain nameas a plain-text substring of the names of tests to run.
- (Optional). Set update goldens: whethermatchesGoldenFile()calls within your test methods should update the golden files rather than test for an existing match.
- (Optional). The number of concurrenttest processes to run. (defaults to6)
command
Launch a Flutter command with custom arguments.
FAQ
Flutter command isn't recognized ?
Make sure that you have a Flutter Install at the beginning of your definition.
Can I run a custom Flutter command ?
Yes, right after the Flutter Install task, a FlutterToolPath environment variable points to the bin of the Flutter SDK directory. You just have to use $(FlutterToolPath) in your following tasks.
Can I run Dart program ?
Yes, actually a Dart runtime is embedded with Flutter tools (in the /cache/dart-sdk/bin subdirectory).
A task example :
- task: CmdLine@2
  displayName: 'Execute Dart program'
  inputs:
    script: '$(FlutterToolPath)/cache/dart-sdk/bin/dart program.dart arg1 arg2'
    workingDirectory: 'src'