Repo documentation for dart

Table of Contents

Recipe Modules

Recipes

Recipe Modules

recipe_modules / bisect_build

DEPS: depot_tools/gitiles, recipe_engine/buildbucket, recipe_engine/properties, recipe_engine/runtime, recipe_engine/step

class BisectApi(RecipeApi):

def get_base_build(self):

def is_bisecting(self):

@property
def is_enabled(self):

def schedule(self, repo_url, reason, is_experimental=False):

recipe_modules / build

DEPS: build/goma, depot_tools/depot_tools, recipe_engine/context, recipe_engine/file, recipe_engine/path, recipe_engine/properties, recipe_engine/step

class BuildApi(RecipeApi):

Recipe module for building the Dart SDK with and without goma.

def build(self, name=‘build dart’, args=None):

Builds dart using the specified args

def gn(self, name=‘gn’, args=None):

Runs gn.py using the specified args

@property
def python(self):

recipe_modules / dart

DEPS: bisect_build, build, depot_tools/bot_update, depot_tools/depot_tools, depot_tools/gclient, depot_tools/git, depot_tools/gsutil, depot_tools/tryserver, recipe_engine/buildbucket, recipe_engine/cipd, recipe_engine/context, recipe_engine/file, recipe_engine/isolated, recipe_engine/json, recipe_engine/path, recipe_engine/platform, recipe_engine/properties, recipe_engine/raw_io, recipe_engine/runtime, recipe_engine/service_account, recipe_engine/step, recipe_engine/swarming

class DartApi(RecipeApi):

Recipe module for code commonly used in dart recipes.

Shouldn't be used elsewhere.

def checkout(self, clobber=False, custom_vars={}):

Checks out the dart code and prepares it for building.

def collect_all(self, steps):

Collects the results of a sharded test run.

def dart_executable(self):

Returns the path to the checked-in SDK dart executable.

def delete_debug_log(self):

Deletes the debug log file

def get_secret(self, name):

Decrypts the specified secret and returns the location of the result

def has_infra_failure(self, failure):

Returns whether failure is an aggregated failure that directly or indirectly contains an InfraFailure.

def kill_tasks(self, ok_ret=‘any’):

Kills leftover tasks from previous runs or steps.

def read_debug_log(self):

Reads the debug log file

def shard(self, name, isolate_hash, test_args, os, cpu=‘x86-64’, pool=‘dart.tests’, num_shards=0, last_shard_is_local=False, cipd_ensure_file=None, ignore_failure=False):

Runs test.py in the given isolate, sharded over several swarming tasks. Returns the created tasks, which can be collected with collect_all().

def test(self, test_data):

Reads the test-matrix.json file in the checkout and runs each step listed in the file.

def upload_isolate(self, isolate_fileset):

Builds an isolate

Recipes

recipes / bisect_build:tests/tests

DEPS: bisect_build, depot_tools/gitiles, recipe_engine/buildbucket, recipe_engine/properties, recipe_engine/step

def RunSteps(api, current_failure, is_experimental):

recipes / build:tests/test_build

DEPS: build, recipe_engine/properties, recipe_engine/step

def RunSteps(api):

recipes / build:tests/test_gn

DEPS: build, recipe_engine/properties, recipe_engine/step

def RunSteps(api):

recipes / build:tests/test_python

DEPS: build, recipe_engine/file, recipe_engine/properties, recipe_engine/step

def RunSteps(api):

recipes / cron/cron

DEPS: depot_tools/gitiles, recipe_engine/buildbucket, recipe_engine/properties

def RunSteps(api, properties):

recipes / dart/cbuild

DEPS: depot_tools/gitiles, depot_tools/gsutil, fuchsia/gerrit, recipe_engine/buildbucket, recipe_engine/json, recipe_engine/properties, recipe_engine/raw_io, recipe_engine/runtime, recipe_engine/step

A recipe that processes go/dart-cbuild results.

The cbuild uploads files to a GCS bucket (one per SDK commit). This recipe reads those files and starts a synthethic build of the “google” builder with the same outcome as the cbuild and a link to the cbuild results. Then it comments on the gerrit change for the commit, if any. Finally, the result is deleted from the GCS bucket so that it won't be processed again by the next run.

def RunSteps(api):

recipes / dart/chocolatey

DEPS: dart, recipe_engine/context, recipe_engine/file, recipe_engine/path, recipe_engine/platform, recipe_engine/properties, recipe_engine/step, recipe_engine/url

def RunSteps(api):

recipes / dart/docker

DEPS: dart, depot_tools/git, recipe_engine/context, recipe_engine/path, recipe_engine/properties, recipe_engine/step

def RunSteps(api):

recipes / dart/external

DEPS: recipe_engine/buildbucket, recipe_engine/properties, recipe_engine/step

A recipe to create synthethic builds for non-Luci builds.

This recipe is meant to be triggered by other recipes that process results from non-Luci build and test infrastructure. It can be used to provide that infrastructure with a Luci builder that can be shown on Luci consoles (Milo).

Builds will have the outcome passed to this recipe as an input property and a link to the external build results (also an input property).

def RunSteps(api, properties):

recipes / dart/flutter_engine

DEPS: build/goma, bisect_build, depot_tools/bot_update, depot_tools/depot_tools, depot_tools/gclient, depot_tools/gitiles, recipe_engine/buildbucket, recipe_engine/cipd, recipe_engine/context, recipe_engine/file, recipe_engine/json, recipe_engine/path, recipe_engine/platform, recipe_engine/properties, recipe_engine/runtime, recipe_engine/step

def AnalyzeDartUI(api, engine_src):

def Build(api, engine_src, config, *targets):

def BuildAndTest(api, start_dir, engine_src, flutter_rev):

def BuildLinux(api, engine_src):

def BuildLinuxAndroidArm(api, engine_src):

def BuildLinuxAndroidx86(api, engine_src):

def CopyArtifacts(api, engine_src, cached_dest, file_paths):

def GetCheckout(api, start_dir, engine_src):

def KillTasks(api, engine_src, ok_ret=‘any’):

Kills leftover tasks from previous runs or steps.

def RunGN(api, engine_src, *args):

def RunSteps(api):

def TestEngine(api, engine_src):

def TestFlutter(api, start_dir, engine_src, just_built_dart_sdk):

def TestObservatory(api, engine_src):

def UpdateCachedEngineArtifacts(api, flutter, engine_src):

recipes / dart/forward_branch

DEPS: dart, depot_tools/git, recipe_engine/buildbucket, recipe_engine/path, recipe_engine/properties, recipe_engine/raw_io, recipe_engine/step

def RunSteps(api):

recipes / dart/gclient

DEPS: depot_tools/gclient, depot_tools/tryserver, recipe_engine/buildbucket, recipe_engine/properties

def RunSteps(api):

recipes / dart/linearize

DEPS: dart, depot_tools/git, depot_tools/gitiles, recipe_engine/buildbucket, recipe_engine/context, recipe_engine/file, recipe_engine/json, recipe_engine/path, recipe_engine/properties

def RunSteps(api):

recipes / dart/neo

DEPS: bisect_build, dart, depot_tools/gitiles, depot_tools/osx_sdk, recipe_engine/buildbucket, recipe_engine/context, recipe_engine/path, recipe_engine/properties, recipe_engine/raw_io, recipe_engine/step

def RunSteps(api, properties):

recipes / dart/package_co19

DEPS: depot_tools/git, recipe_engine/buildbucket, recipe_engine/cipd, recipe_engine/path, recipe_engine/properties, recipe_engine/step

def RunSteps(api):

recipes / dart/package_dart_ci

DEPS: depot_tools/git, recipe_engine/buildbucket, recipe_engine/cipd, recipe_engine/context, recipe_engine/path, recipe_engine/step

def RunSteps(api):

recipes / dart:examples/example

DEPS: build, dart, depot_tools/tryserver, recipe_engine/buildbucket, recipe_engine/file, recipe_engine/json, recipe_engine/path, recipe_engine/platform, recipe_engine/properties, recipe_engine/raw_io, recipe_engine/runtime, recipe_engine/step, recipe_engine/swarming

def RunSteps(api):

recipes / dart:examples/example-get_secret

DEPS: dart, recipe_engine/platform

def RunSteps(api):

recipes / presubmit/presubmit

DEPS: depot_tools/gclient, depot_tools/presubmit, depot_tools/tryserver, recipe_engine/buildbucket, recipe_engine/context, recipe_engine/json, recipe_engine/path

def RunSteps(api):

recipes / roller/lkgr

DEPS: depot_tools/bot_update, depot_tools/gclient, depot_tools/git, recipe_engine/context, recipe_engine/json, recipe_engine/path, recipe_engine/properties, recipe_engine/raw_io, recipe_engine/runtime, recipe_engine/step

def RunSteps(api, properties):

recipes / roller/roll_to_dev

DEPS: depot_tools/bot_update, depot_tools/gclient, depot_tools/git, depot_tools/gitiles, recipe_engine/context, recipe_engine/file, recipe_engine/path, recipe_engine/properties, recipe_engine/runtime, recipe_engine/step, recipe_engine/time

def RunSteps(api, properties):