name: Pull Request Pipeline on: pull_request: jobs: lint: runs-on: ubuntu-latest steps: - name: Checkout code uses: actions/checkout@v4 # Required for Flutter action - name: Install jq run: | apt-get update apt-get install -y jq - name: Set up Flutter uses: subosito/flutter-action@v2 with: channel: stable - name: Get dependencies run: | git config --global --add safe.directory '*' flutter pub get - name: Analyze Formatting run: flutter analyze lib test test: runs-on: ubuntu-latest container: #image: ghcr.io/cirruslabs/flutter:stable image: cimg/node:22.11 steps: # - name: Install Node # run: | # apt-get update # apt-get install -y nodejs npm - name: Checkout code uses: actions/checkout@v4 # Required for Flutter action # - name: Install jq # run: | # apt-get update # apt-get install -y jq - name: Set up Flutter uses: subosito/flutter-action@v2 with: channel: stable - name: Get dependencies run: | git config --global --add safe.directory '*' flutter pub get - name: Run tests run: flutter test localizations: runs-on: ubuntu-latest steps: - name: Checkout code uses: actions/checkout@v4 # Required for Flutter action - name: Install jq run: | apt-get update apt-get install -y jq - name: Set up Flutter uses: subosito/flutter-action@v2 with: channel: stable - name: Get dependencies run: | git config --global --add safe.directory '*' flutter pub get - name: Check for untranslated messages run: | flutter gen-l10n --no-use-deferred-loading UNTRANSLATED_FILE=lib/l10n/untranslated_messages.json if [ ! -f "$UNTRANSLATED_FILE" ]; then echo "Expected $UNTRANSLATED_FILE to be generated, but it does not exist." exit 1 fi CONTENT=$(tr -d '[:space:]' < "$UNTRANSLATED_FILE") if [ "$CONTENT" != "{}" ]; then echo "Found untranslated messages:" cat "$UNTRANSLATED_FILE" exit 1 fi echo "All messages translated."