docker-flutter-sdk/.gitea/workflows/update-check.yaml
Mathias Beaulieu-Duncan 34c649cbda Add Android and Linux desktop SDK variants with matrix pipelines
Adds Dockerfile.android (Flutter + Android SDK/JDK 17) and
Dockerfile.linux (Flutter + clang/cmake/GTK3 for desktop builds).
Publish and Scout pipelines now use matrix strategy to build all
three variants in parallel. Registry secrets updated to
REGISTRY_USERNAME/REGISTRY_PASSWORD. Update-check adds explicit
stable channel filter.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-02 00:57:40 -05:00

50 lines
1.9 KiB
YAML

name: Check for Flutter SDK Updates
on:
schedule:
- cron: '0 8 * * *'
workflow_dispatch:
jobs:
check-update:
runs-on: ubuntu-latest
steps:
- name: Get latest Flutter stable version
id: flutter
run: |
RESPONSE=$(curl -fsSL https://storage.googleapis.com/flutter_infra_release/releases/releases_linux.json)
LATEST=$(echo "$RESPONSE" | jq -r '.current_release.stable as $hash | .releases[] | select(.hash == $hash and .channel == "stable") | .version')
echo "version=${LATEST}" >> $GITHUB_OUTPUT
echo "Latest Flutter stable: ${LATEST}"
- name: Check if release already exists
id: existing
run: |
VERSION="${{ steps.flutter.outputs.version }}"
STATUS=$(curl -s -o /dev/null -w "%{http_code}" \
"${{ github.server_url }}/api/v1/repos/${{ github.repository }}/releases/tags/${VERSION}")
if [ "$STATUS" = "200" ]; then
echo "exists=true" >> $GITHUB_OUTPUT
echo "Release ${VERSION} already exists, skipping"
else
echo "exists=false" >> $GITHUB_OUTPUT
echo "Release ${VERSION} not found, will create"
fi
- name: Create release for new version
if: steps.existing.outputs.exists == 'false' && steps.flutter.outputs.version != ''
run: |
VERSION="${{ steps.flutter.outputs.version }}"
echo "Creating release for Flutter ${VERSION}"
curl -fsSL -X POST \
-H "Authorization: token ${{ secrets.GITEA_TOKEN }}" \
-H "Content-Type: application/json" \
"${{ github.server_url }}/api/v1/repos/${{ github.repository }}/releases" \
-d "{
\"tag_name\": \"${VERSION}\",
\"name\": \"Flutter SDK ${VERSION}\",
\"body\": \"Automated release for Flutter stable ${VERSION}\",
\"draft\": false,
\"prerelease\": false
}"