Skip to content

Update release.yml (#168) #67

Update release.yml (#168)

Update release.yml (#168) #67

Workflow file for this run

# Copyright 2025 Google LLC
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
name: Release
on:
push: # Trigger on pushes to main
branches:
- main
jobs:
release:
runs-on: ubuntu-latest
permissions:
contents: write
id-token: write # Needed for Firebase deployment
env:
GOOGLE_MAPS_JS_SAMPLES_KEY: "${{ secrets.GOOGLE_MAPS_JS_SAMPLES_KEY }}"
steps:
- name: Checkout code (dist branch)
uses: actions/checkout@v3
with:
repository: ${{ github.repository }} # Be explicit
ref: dist # Checkout the dist branch
token: ${{ secrets.GH_MERGE_TOKEN }} # Use the PAT
- name: Clear Git config cache (Global) # Keep this!
run: |
git config --global --unset-all user.name || true
git config --global --unset-all user.email || true
- name: Set Git Identity # Keep this!
run: |
git config --global user.name 'googlemaps-bot'
git config --global user.email '[email protected]'
- name: Merge main into dist
run: |
git fetch origin main:main # Fetch main
git merge --no-ff --allow-unrelated-histories -m "Merge main into dist" main # Merge main into dist
- uses: actions/cache@v3
with:
path: ~/.npm
key: ${{ runner.os }}-node-${{ hashFiles('**/package-lock.json') }}
restore-keys: |
${{ runner.os }}-node
- uses: actions/setup-node@v3
with:
node-version: '22.x'
- run: npm i
- run: npm run build-all
- uses: google-github-actions/auth@v1
with:
credentials_json: ${{ secrets.FIREBASE_SERVICE_ACCOUNT_KEY }}
- name: Install Firebase CLI
run: npm install -g firebase-tools
- name: Deploy to Firebase Hosting
run: firebase deploy --only hosting
- name: Commit and Push Changes (to dist)
run: |
git add dist
if git diff --staged --quiet; then
echo "No changes to commit"
else
git commit -m "Update dist folder [skip ci]"
git push origin dist
fi