feat: Install Firebase CLI in CI workflow and simplify SDK generation process
This commit is contained in:
8
.github/workflows/mobile-ci.yml
vendored
8
.github/workflows/mobile-ci.yml
vendored
@@ -78,6 +78,10 @@ jobs:
|
||||
channel: 'stable'
|
||||
cache: true
|
||||
|
||||
- name: 🔧 Install Firebase CLI
|
||||
run: |
|
||||
npm install -g firebase-tools
|
||||
|
||||
- name: 📦 Get Flutter dependencies
|
||||
run: |
|
||||
make mobile-install-ci
|
||||
@@ -118,6 +122,10 @@ jobs:
|
||||
channel: 'stable'
|
||||
cache: true
|
||||
|
||||
- name: 🔧 Install Firebase CLI
|
||||
run: |
|
||||
npm install -g firebase-tools
|
||||
|
||||
- name: 📦 Get Flutter dependencies
|
||||
run: |
|
||||
make mobile-install-ci
|
||||
|
||||
@@ -79,22 +79,8 @@ dataconnect-generate-sdk: dataconnect-file
|
||||
@firebase dataconnect:sdk:generate --project=$(FIREBASE_ALIAS)
|
||||
@echo "✅ Data Connect SDK generation completed for [$(DC_ENV)]."
|
||||
|
||||
# CI-safe SDK generation: tries Firebase CLI if available, otherwise uses pre-generated SDK
|
||||
dataconnect-generate-sdk-ci: dataconnect-file
|
||||
@echo "--> Generating Firebase Data Connect SDK for CI [$(DC_SERVICE)]..."
|
||||
@if command -v firebase >/dev/null 2>&1; then \
|
||||
echo " Firebase CLI found, generating SDK..."; \
|
||||
firebase dataconnect:sdk:generate --project=$(FIREBASE_ALIAS); \
|
||||
echo "✅ Data Connect SDK generation completed for [$(DC_ENV)]."; \
|
||||
else \
|
||||
echo " Firebase CLI not found in CI environment"; \
|
||||
if [ -d "apps/mobile/packages/data_connect/lib/src/dataconnect_generated" ]; then \
|
||||
echo " ✅ Using pre-generated SDK from apps/mobile/packages/data_connect/lib/src/dataconnect_generated"; \
|
||||
else \
|
||||
echo "❌ ERROR: Firebase CLI not available and pre-generated SDK not found!"; \
|
||||
exit 1; \
|
||||
fi; \
|
||||
fi
|
||||
# CI version: same as regular since Firebase CLI is now installed in CI
|
||||
dataconnect-generate-sdk-ci: dataconnect-generate-sdk
|
||||
|
||||
# Unified backend schema update workflow (schema -> deploy -> SDK)
|
||||
dataconnect-sync: dataconnect-file
|
||||
|
||||
Reference in New Issue
Block a user