-
Notifications
You must be signed in to change notification settings - Fork 2
Expand file tree
/
Copy pathstage-release-firebase-app-distribution.yml
More file actions
41 lines (38 loc) · 1.73 KB
/
stage-release-firebase-app-distribution.yml
File metadata and controls
41 lines (38 loc) · 1.73 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
parameters:
applicationEnvironment: '' # e.g. "Staging", "Production"
deploymentEnvironment: '' # e.g. "GooglePlay", "AppStore", "Firebase App Distribution"
androidVariableGroup: ''
artifactFileName: ''
firebaseAppDistributionJson: ""
jobs:
- deployment: Firebase_Android
pool:
vmImage: $(windowsHostedAgentImage)
variables:
- group: ${{ parameters.androidVariableGroup }}
- name: pathToBinary
value: '$(Pipeline.Workspace)/$(AndroidArtifactName)_${{ parameters.applicationEnvironment }}/${{ parameters.artifactFileName }}'
environment: ${{ parameters.deploymentEnvironment }}
strategy:
runOnce:
deploy:
steps:
# Step 1: Install Firebase tools
- script: "npm install -g firebase-tools"
displayName: "Install Firebase Tools"
# Step 2: Download the service connection key file
- task: DownloadSecureFile@1
inputs:
secureFile: ${{ parameters.firebaseAppDistributionJson }}
name: DistributionServiceConnection
displayName: "Download Firebase Service Connection"
# Step 3: Deploy to Firebase App Distribution
- script: |
echo "Deploying to Firebase App Distribution..."
echo "App ID: $(FirebaseAppId)"
echo "Path to binary: $(pathToBinary)"
echo "Path with backslash: $pathWithBackslash"
firebase appdistribution:distribute $(pathToBinary) --app $(FirebaseAppId) --release-notes "FlutterApplicationTemplate" --groups "nventive" --debug
env:
GOOGLE_APPLICATION_CREDENTIALS: $(DistributionServiceConnection.secureFilePath)
displayName: "Deploy to Firebase"