Skip to content

ghcr?

ghcr? #9

Workflow file for this run

name: Build Skia Artifacts
permissions:
contents: read
packages: read
on:
push:
branches:
- '**'
pull_request:
branches:
- '**'
jobs:
headers:
if: false
name: Headers
runs-on: ubuntu-latest
steps:
- name: Log in to GitHub Container Registry
uses: docker/login-action@v3
with:
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
- name: Checkout
uses: actions/checkout@v4
with:
submodules: recursive
fetch-depth: 0
persist-credentials: true
clean: false
- name: Sync Skia dependencies
run: |
export PATH="${GITHUB_WORKSPACE}/depot_tools:${PATH}"
cd skia
python3 tools/git-sync-deps
- name: Build headers
run: python3 scripts/build.py headers
- name: Upload headers
uses: actions/upload-artifact@v4
with:
name: headers
path: artifacts/headers
windows:
name: Windows (${{ matrix.arch }})
runs-on: windows-latest
strategy:
matrix:
arch:
- x64
#- arm64
env:
DEPOT_TOOLS_WIN_TOOLCHAIN: "0"
steps:
- name: Checkout
uses: actions/checkout@v4
with:
submodules: recursive
fetch-depth: 0
persist-credentials: true
clean: false
- name: Sync Skia dependencies
shell: pwsh
run: |
$env:PATH = "${{ github.workspace }}\depot_tools;" + $env:PATH
Set-Location depot_tools
./update_depot_tools.bat
Set-Location ../skia
../depot_tools/python-bin/python3.bat tools/git-sync-deps
- name: Build ${{ matrix.arch }}
shell: pwsh
run: |
../depot_tools/python-bin/python3.bat scripts/build.py windows ${{ matrix.arch }}
- name: Upload artifact
uses: actions/upload-artifact@v4
with:
name: windows-${{ matrix.arch }}
path: artifacts/windows_${{ matrix.arch }}
linux-all:
name: Linux (all)
runs-on: ubuntu-latest
container:
image: ghcr.io/avaloniaui/clang-cross-builder:latest
credentials:
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
steps:
- name: Checkout
uses: actions/checkout@v4
with:
submodules: recursive
fetch-depth: 0
persist-credentials: true
clean: false
- name: Sync Skia dependencies
run: |
export PATH="${GITHUB_WORKSPACE}/depot_tools:${PATH}"
cd depot_tools
./update_depot_tools
cd ../skia
python3 tools/git-sync-deps
- name: Build (all arches)
env:
CLANG_BUILDER_IMAGE: ghcr.io/avaloniaui/clang-cross-builder:latest
run: scripts/build-linux.sh all
- name: Upload artifacts
uses: actions/upload-artifact@v4
with:
name: linux-all
path: artifacts/linux_*
macos:
name: macOS (${{ matrix.arch }})
runs-on: macos-latest
strategy:
matrix:
arch:
- x64
# - arm64 # disabled for now
steps:
- name: Checkout
uses: actions/checkout@v4
with:
submodules: recursive
fetch-depth: 0
persist-credentials: true
clean: false
- name: Sync Skia dependencies
run: |
export PATH="${GITHUB_WORKSPACE}/depot_tools:${PATH}"
cd depot_tools
./update_depot_tools
cd ../skia
python3 tools/git-sync-deps
- name: Build ${{ matrix.arch }}
run: python3 scripts/build.py macos ${{ matrix.arch }}
- name: Upload artifact
uses: actions/upload-artifact@v4
with:
name: macos-${{ matrix.arch }}
path: artifacts/macos_${{ matrix.arch }}