Skip to content

Flutter Self Service Index

keyonghan edited this page Dec 20, 2023 · 10 revisions

Flutter Self Service Index

Flutter provides multiple functionality through self-service services. Most of these services are available to any member of the Flutter GitHub organization.

Audiences

Name Description
Flutter contributors Anyone contributing to the flutter organization independently of membership to the organization.
Flutter organization members Anyone with write access to the flutter organization resources.
Googlers Members of the Flutter Organization that are also Googlers.
Flutter organization administrators Members of the Flutter organization that have write access to the organization's settings.

Infrastructure

Service Description Audience Documentation Location
.ci.yaml Configuration file to instruct the Flutter Infrastructure which tasks to use to validate commits in a given repository. ".ci.yaml" is read from the top level folder of every supported repository. Flutter contributors Link Top level folder of the GitHub repositories. E.g. flutter/flutter.
Engine build configurations Configuration files to describe Flutter Engine builds and tests. Flutter contributors Link engine/ci/builders in the flutter/engine repository contains all the current configuration files.
Autosubmit GitHub application that auto-submits pull requests that meet the approval criteria. Flutter organization administrators Link The application code is available in the flutter/cocoon repository.
FirebaseLab tests Special type of tests configured through .ci.yaml that use resources from FirebaseLab Flutter contributors Link These configurations go directly in the .ci.yaml file of flutter/flutter repository.
Codesigning Add metadata to engine artifacts for code signing infrastructure to sign them. Flutter contributors Link GN files and global generator scripts in the flutter/engine repository.
Emulators support Using android emulators from tests. Flutter contributors Link Flutter Github Wiki page under the “Android Development” Section.
Rerun GitHub presubmit test using command line Run presubmit tasks using `reset-try-task` end point and gcloud CLI. Googlers Link Source code is available here
Rerun postsubmit test from Flutter build dashboard Re-run postsubmit tasks from the go/flutter-dashboard. Googlers Link Source code is available go/flutter-dashboard
Run a test multiple times in parallel via LED Run a shard test against a pull request to validate changes/fixes in parallel. Googlers Link N/A
Create a CIPD package Create and add the package build scripts to cocoon to enable auto building and uploading to flutter CIPD namespaces. Flutter contributors Link Flutter public CIPD namespace: flutter
View Infra SLO metrics DataSite with links to a collection of Engineering Productivity dashboards including infrastructure, release and rolls. Googlers Link N/A

Release

Service Description Audience Documentation Location
Create non flutter release candidate branches Self service to create release candidate branches used by products different than flutter Googlers Link N/A
Request 1P cherry picks Request approvals for cherry picks to release candidate branches Googlers Link flutter/flutter
G3 Fixes Apply G3 fixes that are automatically applied during the roll process. Googlers Link N/A
Single command releases Creating a third party flutter release with multi party approvals. Release Engineering Link N/A

Security

Service Description Audience Documentation Location
Vulnerability scanning and fixes validation Automatic scanning of c, c++ third party dependencies and vulnerability. fix validation. Flutter organization members Link Engine github security tab.
Request write access to non-prod GCP projects Googlers Link N/A
Rolling non-auto-updating 3p mirrored deps Dependencies on mirrors that do not automatically roll changes from their upstream might need to be manually rolled Googlers Link N/A

Googlers can access the internal version using go/flutter-self-service

Flutter Wiki

Process

Framework repo

The Flutter CLI Tool

Engine repo

Packages repo

Engineering Productivity

User documentation

Clone this wiki locally