Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
22 commits
Select commit Hold shift + click to select a range
9b4960f
Initial import of flutter/website-cms into repository
parlough May 12, 2026
fe8f17a
Add sites/www to pub workspace
parlough May 12, 2026
c3cbb85
Add support for the site from the dash_site tool
parlough May 12, 2026
7bb243a
Set up building, serving, and cleaning in dash_site tool
parlough May 12, 2026
03672b6
Fix image asset loading and transformation issues
parlough May 12, 2026
531a113
Set up and separate GitHub actions workflows
parlough May 12, 2026
0fd5cb7
Use combined stage and deploy setup
parlough May 13, 2026
092f5cf
Adjust root AGENTS.md file
parlough May 13, 2026
65b8b47
Update workflow display name
parlough May 13, 2026
9de68e2
Enable serving both sites at the same time
parlough May 13, 2026
f0a3460
Avoid losing the firebase deploy output
parlough May 14, 2026
e7cc2a3
Update deploy and stage to rely on separate triggers
parlough May 14, 2026
c1ef951
Move stage and deploy logic to Dart for easier maintainence
parlough May 14, 2026
307a190
Fix and simplify _SITE substitution
parlough May 14, 2026
bf82133
Hook up different Firebase emulator ports per site
parlough May 14, 2026
3552dee
Clean up wording of PR comments
parlough May 14, 2026
e76efef
Adjust workflow group name for marketing site
parlough May 14, 2026
ccc5fae
Rename dart test workflows
parlough May 14, 2026
8be0955
Fix conditional running of dart test workflow
parlough May 14, 2026
ea0c449
Update dash_site test-dart command to run site-specific tests
parlough May 14, 2026
ad98f4f
Remove strange tracking state
parlough May 14, 2026
152adca
Clean up comments on stage-preview command
parlough May 14, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
67 changes: 67 additions & 0 deletions .github/workflows/dart.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,67 @@
name: Dart code

on:
push:
branches:
- main
paths:
- '**/*.dart'
- '**/pubspec.yaml'
- '**/pubspec.lock'
- '**/analysis_options.yaml'
- 'packages/**'
- 'tool/dash_site/**'
- '.github/workflows/dart.yml'
pull_request:
branches:
- main
paths:
- '**/*.dart'
- '**/pubspec.yaml'
- '**/pubspec.lock'
- '**/analysis_options.yaml'
- 'packages/**'
- 'tool/dash_site/**'
- '.github/workflows/dart.yml'
schedule:
- cron: "0 0 * * 0"

permissions: read-all

concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: ${{ github.event_name == 'pull_request' }}

jobs:
test:
name: Analyze and test Dart (${{ matrix.name }})
runs-on: ubuntu-latest
if: github.repository == 'flutter/website'
strategy:
fail-fast: false
matrix:
include:
- name: "Beta channel"
branch: beta
experimental: false
- name: "Stable channel"
branch: stable
experimental: true
continue-on-error: ${{ matrix.experimental }}
steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd
- uses: subosito/flutter-action@e938fdf56512cc96ef2f93601a5a40bde3801046
with:
channel: ${{ matrix.branch }}
- name: Fetch Dart dependencies
run: dart pub get
continue-on-error: ${{ matrix.experimental }}
- name: Check Dart code formatting
run: dart run dash_site format-dart --check
continue-on-error: ${{ matrix.experimental }}
- name: Analyze Dart code
run: dart run dash_site analyze-dart
continue-on-error: ${{ matrix.experimental }}
- name: Run Dart tests
run: dart run dash_site test-dart
continue-on-error: ${{ matrix.experimental }}
89 changes: 89 additions & 0 deletions .github/workflows/docs.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,89 @@
name: Docs site

on:
push:
branches:
- main
paths:
- 'sites/docs/**'
- 'examples/**'
- 'packages/excerpter/**'
- 'firebase.json'
- 'tool/dash_site/**'
- 'tool/config/linkcheck-skip-list.txt'
- 'pubspec.yaml'
- 'pubspec.lock'
- 'analysis_options.yaml'
- '.github/workflows/docs.yml'
pull_request:
branches:
- main
paths:
- 'sites/docs/**'
- 'examples/**'
- 'packages/excerpter/**'
- 'firebase.json'
- 'tool/dash_site/**'
- 'tool/config/linkcheck-skip-list.txt'
- 'pubspec.yaml'
- 'pubspec.lock'
- 'analysis_options.yaml'
- '.github/workflows/docs.yml'
schedule:
- cron: "0 0 * * 0"

permissions: read-all

concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: ${{ github.event_name == 'pull_request' }}

jobs:
excerpts:
name: Check code excerpts
runs-on: ubuntu-latest
if: github.repository == 'flutter/website'
steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd
- uses: dart-lang/setup-dart@65eb853c7ba17dde3be364c3d2858773e7144260
with:
sdk: beta
- name: Fetch Dart dependencies
run: dart pub get
- name: Check if excerpts are up to date
run: dart run dash_site --site=docs refresh-excerpts --fail-on-update --dry-run

linkcheck:
name: Build and check links
runs-on: ubuntu-latest
if: github.repository == 'flutter/website'
timeout-minutes: 30
steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd
- uses: dart-lang/setup-dart@65eb853c7ba17dde3be364c3d2858773e7144260
with:
sdk: beta
- name: Fetch Dart dependencies
run: dart pub get
- name: Install firebase-tools
run: curl -sL https://firebase.tools | bash
- name: Build site
run: dart run dash_site --site=docs build
- name: Check for broken Markdown link references
run: dart run dash_site --site=docs check-link-references
- name: Check for broken internal links
run: dart run dash_site --site=docs check-links

firebase-validate:
name: Validate Firebase configuration
runs-on: ubuntu-latest
if: github.repository == 'flutter/website'
steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd
- uses: dart-lang/setup-dart@65eb853c7ba17dde3be364c3d2858773e7144260
with:
sdk: beta
- name: Fetch Dart dependencies
run: dart pub get
- name: Validate the firebase.json file
run: dart run dash_site --site=docs verify-firebase-json
97 changes: 0 additions & 97 deletions .github/workflows/test.yml

This file was deleted.

69 changes: 69 additions & 0 deletions .github/workflows/www.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,69 @@
name: Marketing site

on:
push:
branches:
- main
paths:
- 'sites/www/**'
- 'tool/dash_site/**'
- 'tool/config/linkcheck-skip-list.txt'
- 'pubspec.yaml'
- 'pubspec.lock'
- 'analysis_options.yaml'
- '.github/workflows/www.yml'
pull_request:
branches:
- main
paths:
- 'sites/www/**'
- 'tool/dash_site/**'
- 'tool/config/linkcheck-skip-list.txt'
- 'pubspec.yaml'
- 'pubspec.lock'
- 'analysis_options.yaml'
- '.github/workflows/www.yml'
schedule:
- cron: "0 0 * * 0"

permissions: read-all

concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: ${{ github.event_name == 'pull_request' }}

jobs:
linkcheck:
name: Build and check links
runs-on: ubuntu-latest
if: github.repository == 'flutter/website'
timeout-minutes: 30
steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd
- uses: dart-lang/setup-dart@65eb853c7ba17dde3be364c3d2858773e7144260
with:
sdk: beta
- name: Fetch Dart dependencies
run: dart pub get
- name: Install firebase-tools
run: curl -sL https://firebase.tools | bash
- name: Build site
run: dart run dash_site --site=www build
- name: Check for broken Markdown link references
run: dart run dash_site --site=www check-link-references
- name: Check for broken internal links
run: dart run dash_site --site=www check-links

firebase-validate:
name: Validate Firebase configuration
runs-on: ubuntu-latest
if: github.repository == 'flutter/website'
steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd
- uses: dart-lang/setup-dart@65eb853c7ba17dde3be364c3d2858773e7144260
with:
sdk: beta
- name: Fetch Dart dependencies
run: dart pub get
- name: Validate the firebase.json file
run: dart run dash_site --site=www verify-firebase-json
Loading
Loading