Skip to content

Use NetworkError for all API errors in the logic and application layers, regardless of login method #39661

Use NetworkError for all API errors in the logic and application layers, regardless of login method

Use NetworkError for all API errors in the logic and application layers, regardless of login method #39661

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