123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136 |
- name: Google Fonts QA
- on:
- pull_request:
- branches:
- - main
- jobs:
- diffbrowsers:
- name: Build Google Fonts
- runs-on: ${{ matrix.os }}
- strategy:
- matrix:
- python-version: ['3.10']
- os: [windows-latest, macos-12, ubuntu-latest]
- steps:
- - name: Cancel previous
- uses: styfle/cancel-workflow-action@0.11.0
- with:
- access_token: ${{ github.token }}
-
- - uses: actions/checkout@v1
- - name: Set up Python 3.10
- uses: actions/setup-python@v4.4.0
- with:
- python-version: '3.10'
- - name: Install packages
- run: |
- pip install gftools[qa] pytest
- shell: bash
- - name: Setup Chrome
- uses: browser-actions/setup-chrome@v1.6.2
- with:
- chrome-version: '127.0.6509.0'
- - name: Setup Chrome Driver
- uses: nanasess/setup-chromedriver@v2.2.2
- - name: Setup Firefox
- uses: browser-actions/setup-firefox@latest
- - name: Setup Firefox Driver
- uses: browser-actions/setup-geckodriver@latest
- with:
- token: ${{ secrets.GITHUB_TOKEN }}
- - name: Run Diffbrowsers
- run: |
- mkdir out
- python -m youseedee 0x078A
- chromedriver --url-base=/wd/hub &
- python3 .ci/run.py --render
- env:
- PYTHONIOENCODING: 'utf-8'
- PYTHONUTF8: '1'
- shell: bash
- - name: Check file existence
- id: check_files
- uses: andstor/file-existence-action@v2.0.0
- with:
- files: "out"
- - name: Upload check results
- if: steps.check_files.outputs.files_exists == 'true'
- uses: actions/upload-artifact@v3
- with:
- name: qa
- path: out/
- diffenator:
- name: Diffenate fonts
- runs-on: ubuntu-latest
- continue-on-error: true
- steps:
- - name: Cancel previous
- uses: styfle/cancel-workflow-action@0.11.0
- with:
- access_token: ${{ github.token }}
-
- - uses: actions/checkout@v1
- - name: Set up Python 3.10
- uses: actions/setup-python@v4.4.0
- with:
- python-version: '3.10'
- - name: Install packages
- # The --pre flag below will ensure we use the latest Font Bakery pre-releases
- # and benefit from its newest checks:
- run: |
- pip install --upgrade pip
- pip install --pre fontbakery[googlefonts]
- pip install gftools[qa] pytest
- shell: bash
- - name: Run Diffenator and Fontbakery
- run: |
- mkdir out
- python -m youseedee 0x078A
- python3 .ci/run.py --pr-number $PR_NUMBER --pr-url-body https://www.github.com/google/fonts/pull/
- env:
- PYTHONIOENCODING: 'utf-8'
- PYTHONUTF8: '1'
- GH_TOKEN: ${{ github.token }}
- PR_NUMBER: ${{ github.event.number }}
- shell: bash
-
- - name: Check file existence
- id: check_files
- uses: andstor/file-existence-action@v2.0.0
- with:
- files: "out"
- - name: Upload check results
- if: steps.check_files.outputs.files_exists == 'true'
- uses: actions/upload-artifact@v3
- with:
- name: qa
- path: out/
- ftxvalidator:
- name: Run ftxvalidator on new/changed fonts
- runs-on: macos-latest
- steps:
- - uses: actions/checkout@v1
- - name: Download and install
- run: |
- ${{secrets.OBTAIN_FONTTOOLS}}
- hdiutil attach font_tools.dmg
- sudo installer -pkg /Volumes/macOS\ Font\ Tools/macOS\ Font\ Tools.pkg -target /
- hdiutil detach /Volumes/macOS\ Font\ Tools
- - name: Set up Python 3.10
- uses: actions/setup-python@v4.4.0
- with:
- python-version: '3.10'
- - name: Test font with ftxvalidator
- run: python3 .ci/ftxvalidator.py
-
|