| name: "Install Flutter" |
| description: "Installs a pinned version of Flutter" |
| runs: |
| using: "composite" |
| steps: |
| - name: "Clone Flutter" |
| # This uses a pinned version of Flutter rather than `stable` so that it is |
| # not subject to out-of-band failures when new releases happen. It does |
| # not use the auto-rolled pin because there's no way for the autoroller |
| # to test the actual release flow, so changes would still show up in |
| # post-submit. A manually-rolled pin means that any changes here must be |
| # made deliberately, so that the person updating it knows to watch the |
| # next actual auto-release to ensure that it works, and knows to revert |
| # the change if it doesn't. |
| shell: bash |
| run: | |
| cd $HOME |
| git clone https://github.com/flutter/flutter.git --depth 1 -b 3.44.0 _flutter |
| cd $GITHUB_WORKSPACE |
| |
| # GITHUB_PATH write is safe here as it only appends a hardcoded, trusted path ($HOME/_flutter/bin) with no user-controlled input. |
| - name: "Add Flutter to Path" |
| shell: bash |
| run: echo "$HOME/_flutter/bin" >> $GITHUB_PATH # zizmor: ignore[github-env] |