Skip to content

Bookings: Multiple selection support #40717

Bookings: Multiple selection support

Bookings: Multiple selection support #40717

Workflow file for this run

name: Screenshots
on:
pull_request:
types: [opened, synchronize, reopened, labeled, unlabeled]
env:
CONFIGURE_ENCRYPTION_KEY: ${{ secrets.CONFIGURE_ENCRYPTION_KEY }}
jobs:
build:
name: Build Application
if: contains(github.event.pull_request.labels.*.name, 'generate screenshots')
runs-on: macos-15
steps:
- name: "Check out Project"
uses: actions/checkout@v4
- name: "Set up Ruby"
uses: ruby/setup-ruby@v1
with:
bundler-cache: true
- name: Install App Dependencies
run: bundle exec rake dependencies
- name: Compile the App
run: bundle exec fastlane build_screenshots
- name: Archive Build Products
uses: actions/upload-artifact@v4
with:
name: screenshot-build-products
path: fastlane/DerivedData/Build/Products/Debug-iphonesimulator/
retention-days: 1
capture:
name: Capture
needs: build
runs-on: macos-15
strategy:
matrix:
language: [ar-SA, de-DE, en-US, es-ES, fr-FR, he, id, it, ja, ko, nl-NL, pt-BR, ru, sv, tr, zh-Hans, zh-Hant]
mode: [dark, light]
steps:
- uses: actions/checkout@v4
- name: "Set up Ruby"
uses: ruby/setup-ruby@v1
with:
bundler-cache: true
- name: Install Fastlane Dependencies
run: bundle exec fastlane run configure_apply
- name: Download Build Products
uses: actions/download-artifact@v4
with:
name: screenshot-build-products
path: fastlane/DerivedData/Build/Products/Debug-iphonesimulator/
- name: Generate Screenshots
run: |
bundle exec fastlane take_screenshots languages:${{ matrix.language }} mode:${{ matrix.mode }}
- name: Store Logs
if: always()
uses: actions/upload-artifact@v4
with:
name: "screenshot-log-${{ matrix.language }}-${{ matrix.mode }}"
path: fastlane/logs
- name: Archive Generated Screenshots
uses: actions/upload-artifact@v4
with:
name: "screenshots-${{ matrix.language }}-${{ matrix.mode }}"
path: fastlane/screenshots/
process:
name: "Process Screenshots"
needs: capture
runs-on: macos-15
env:
BUNDLE_WITH: screenshots
steps:
- uses: actions/checkout@v4
- name: Install Native Dependencies
run: |
brew install imagemagick@7
brew link imagemagick@7 --force
brew install automattic/build-tools/drawText
- name: "Set up Ruby"
uses: ruby/setup-ruby@v1
with:
bundler-cache: true
- name: Install Fastlane Dependencies
run: bundle exec fastlane run configure_apply
- name: Download Generated Screenshots
uses: actions/download-artifact@v4
with:
pattern: "screenshots-*"
path: fastlane/screenshots/
merge-multiple: true
- name: Generate Screenshot Summary
run: |
bundle exec fastlane create_screenshot_summary
- name: Upload Screenshot Summary
uses: actions/upload-artifact@v4
with:
name: screenshot-summary
path: fastlane/screenshots/screenshots.html
- name: Archive Raw Screenshots
uses: actions/upload-artifact@v4
with:
name: raw-screenshots
path: fastlane/screenshots
- name: Setup Git LFS
run: |
# Install Git LFS if not available
if ! command -v git-lfs &> /dev/null; then
echo "Installing Git LFS..."
brew install git-lfs
fi
git lfs install && git lfs fetch && git lfs pull
- name: Generate Promo Screenshots
run: |
bundle exec fastlane create_promo_screenshots force:true
- name: Archive Promo Screenshots
uses: actions/upload-artifact@v4
with:
name: promo-screenshots
path: fastlane/promo_screenshots