Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Easily build and deploy with latest Flutter build tasks for Azure DevOps Pipelines Tasks

License

NotificationsYou must be signed in to change notification settings

tiksangng/azure-flutter-tasks

 
 

Repository files navigation

LatestFlutter tasks forAzure DevOps.

Initially afork maintained by me of the awesome work done by original authorGithub. As per people's request, this is now a separate repo as this is now an advanced/latest extension with more features.

NOTE : I will no longer maintain my fork instead this repository will be updated, as this has developed into a lot more than the original extension.

Support

PRs are always welcome. Feel free to create an issue if you face any problem.

Don't forget to star this repo, thanks 👍

Buy Me A Coffee


Installation & Usage

Installation can be done usingVisual Studio MarketPlace. Add the tasks to your build definition.


Pipeline Tasks

Install

Installs theFlutter SDK onto the running agent if not already installed. Then uses it for following tasks.

  • Select theRelease Url Mode:auto (default),custom. Ifcustom is specified, aCustom (Flutter SDK Install Url) must be set.
  • Select thechannel:stable (default),beta, ordev.
  • Select theversion of the SDK to install:latest (default),custom. Ifcustom is specified, acustomVersion must be set.
  • (Optional). Set thecustomVersion (in a<M>.<m>.<p> semver format) if needed.
  • (Optional). Set theCustom (Flutter SDK Install Url) to release install url likehttps://storage.googleapis.com/flutter_infra_release/releases/stable/macos/flutter_macos_2.2.1-stable.zip or any other available on (https://flutter.dev/docs/development/tools/sdk/releases?tab=windows).
  • (Optional). Set thecustomArch (example 'arm64') if needed.

Build

Build the given mobile application project. You must call theFlutter Install task or use the optionalflutterDirectory task input that points to yourflutter/bin folder before execution. All application bundles are created in thebuild/outputs folder of your project.

  • Select theprojectDirectory that contains thepubspec.yaml file.
  • Select thetarget platform. Options are:apk (default),aab,ios,ipa,web,all mobile (all mobile platforms only),desktop (windows),desktop (macos),desktop (linux),all desktop (all desktop platforms only) ,all (all platforms).
  • (Optional). SetflutterDirectory to set path to the Flutter SDK if you were not usingFlutter Install task before this one
  • (Optional). SetbuildName (like1.2.3) that will override the manifest's one.
  • (Optional). SetbuildNumber (like12) that will override the manifest's one. Use$(Build.BuildNumber) to use build number as auto incremental number.
  • (Optional). SetbuildFlavour (likedevelopment) to specify a build flavour. Must match Android Gradle flavor definition or XCode scheme.
  • (Optional). SetentryPoint to override the main entry point file of the application. Default is 'lib/main.dart'.
  • (Optional). SetverboseMode if you wish to get detailed verbose log output for diagnoses purposes. Default isfalse.
  • (Optional). SetdebugMode if you wish to override the default release mode for the build. Default isfalse.
  • (Optional). SetdartDefine compile-time variables, use as :foo=bar (use 'dartDefineMulti' for multiple args)"
  • (Optional). SetdartDefineMulti compile-time variables, use as (space separated) :foo=bar key1=val1 key2=val2 (use for multiple --dart-define arguments)"
  • (Optional). SetextraArgs if you want to pass more official/custom command arguments,Space Separated. Example: "--no-tree-shake-icons --publish-to-play"
  • (Android).(Optional). SetapkTargetPlatform for the Android platform architecture target:default(default set by Flutter sdk)android-arm ,android-arm64,android-x86,android-x64,custom.
  • (Android).(Optional). SetcustomApkTargetPosition for thecustom target platform architecture, provide your own combination (comma separated) of valid values.Example likeandroid-arm,android-arm64,android-x64
  • (Android).(Optional). Set the build modesplitPerAbi to compile the code into an APK per target ABI. Otherwise the build will result in a single APK.
  • (iOS).(Optional). SetiosTargetPlatform for the iOS target:device (default),simulator.
  • (iOS).(Optional). SetiosCodesign to configure whenever the bundle odesign the application bundle (only available on device builds, and activated by default).Warning: you must install a valid certificate before build with theInstall an Apple Certificatetask
  • (ipa).(Optional). Set the path of yourpath/to/ExportOptions.plist to configure--export-options-plist. This flag cannot be combined with '--split-debug-info'. Optionally export an IPA with these options. See 'xcodebuild -h' for available exportOptionsPlist keys.

Test

Launch tests and publish a report as build test results.

  • Select theprojectDirectory that contains topubspec.yaml file.
  • (Optional). SettestName as a regular expression matching substrings of the names of tests to run.
  • (Optional). SettestPlainName as a plain-text substring of the names of tests to run.
  • (Optional). SetupdateGoldens: whethermatchesGoldenFile() calls within your test methods should update the golden files rather than test for an existing match.
  • (Optional). SetgenerateCodeCoverageReport to generate code coverage report based on tests in the project. The report file is located in the specifiedprojectDirectory incoverage/lcov.info.
  • (Optional). Setconcurrency to specify the number of concurrent test processes to run. Default is6.
  • (Optional). SetextraArgs if you want to pass more official/custom command arguments,Comma Separated. Example: "--no-sound-null-safety,--dart-define=<foo=bar>"

Analyze

Launch analyze on flutter directory.

  • Select theprojectDirectory that contains thepubspec.yaml file.
  • (Optional). SetpubGet if you wish to runpub get command before analyze. Default istrue.
  • (Optional). SetextraArgs if you want to pass more official/custom command arguments. Example: "--fatal-infos --fatal-warnings"

Command

Launch a Flutter command with custom arguments.

  • Set thearguments to your custom valid flutter command.
  • Select theprojectDirectory that contains thepubspec.yaml file.
  • (Optional). SetflutterDirectory to set path to the Flutter SDK if you were not usingFlutter Install task before this one

Env

Task to create the environment variablesFlutterToolPath,FlutterPubCachePath andDartToolPath.

  • Pick theFlutter path from either toCustom Path orFile Path.
  • Select theCustom Path to give a path string like "$(Agent.ToolsDirectory)/<yourPath>/flutter"
  • Select theFile Path to set path to the Flutter SDK

NOTE : Do not give path to 'bin' folder


Environment Variables

Environment variables created by theInstall orEnv tasks are :

  • $(FlutterToolPath) - can be used as "$(FlutterToolPath)/flutter packages get"
  • $(FlutterPubCachePath) can be used as "$(FlutterPubCachePath)/pubver set $(Version)"
  • $(DartToolPath) - can be used as "$(DartToolPath)/dart prog.dart arg1"

FAQ

First, please read theWIKI and thenFAQs before opening any new issues.

Flutter command isn't recognized ?

Make sure that you have aFlutter Install at the beginning of your definition.

Can I run a custom Flutter command ?

Yes, right after theFlutter Install task, aFlutterToolPath environment variable points to thebin of the Flutter SDK directory. You just have to use$(FlutterToolPath) in your following tasks. Example: "$(FlutterToolPath)/flutter packages get"

Can I run Dart program ?

Yes, right after theFlutter Install task, aDartToolPath environment variable points to thebin of the Dart SDK directory. You just have to use$(DartToolPath) in your following tasks. Example: "$(DartToolPath)/dart program.dart arg1 arg2"

Can I access Flutter's pub-cache ?

Yes, right after theFlutter Install task, aFlutterPubCachePath environment variable points to thepub-cache directory that Flutter installs all depdencies. You just have to use$(FlutterPubCachePath) in your following tasks. Example: "$(FlutterPubCachePath)/pubver set $(Version)"

Facing error - "No toolchains found in the NDK toolchains folder for ABI with prefix: arm-linux-androideabi" ?

Read this issue#16 for solution or thisstackoverflow

How to run "Integeration Tests" ?

Read thiswiki for steps, thanks to@maksymgendin for the help.

IOS build fail "Provisional Profile Errors" ?

Read this#35 for help

Any IOS or Android Examples (Setup Guide/YAML config)

Read this issue#37 and thiswiki setup


Improve

First, please read theWIKI and thenFAQs before opening any new issues.Help me by reporting bugs, creating PRs,submit new ideas for features or anything else that you want to share.

More

Check out my other usefulFlutter packages onpub.devor moreDevOps extensions onmarketplace

Source Code

Source code can be found onGithub.

Previous fork :Github

Original repo :Github.


License

MIT

About

Easily build and deploy with latest Flutter build tasks for Azure DevOps Pipelines Tasks

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • JavaScript48.9%
  • TypeScript41.3%
  • Dart7.1%
  • Shell1.2%
  • Other1.5%

[8]ページ先頭

©2009-2025 Movatter.jp