mozc #166
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: ci | |
on: | |
push: | |
branches: | |
- master | |
pull_request: | |
workflow_dispatch: | |
jobs: | |
build: | |
runs-on: ${{ matrix.os }} | |
strategy: | |
fail-fast: false | |
matrix: | |
os: [macos-14, macos-13] | |
include: | |
- { os: macos-14, arch: arm64 } | |
- { os: macos-13, arch: x86_64 } | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
submodules: recursive | |
- uses: actions/setup-python@v5 | |
with: | |
python-version: '3.12' | |
- name: Install dependencies | |
run: | | |
brew install \ | |
extra-cmake-modules \ | |
ninja \ | |
go | |
wget https://github.com/fcitx-contrib/fcitx5-macos-prebuilder/releases/download/latest/marisa-${{ matrix.arch }}.tar.bz2 | |
sudo tar xjvf marisa-${{ matrix.arch }}.tar.bz2 -C /usr/local bin/marisa-build | |
pip install dirhash | |
- name: Download and install Fcitx5.app | |
run: | | |
wget https://github.com/fcitx-contrib/fcitx5-macos/releases/download/latest/Fcitx5-${{ matrix.arch }}.tar.bz2 | |
sudo tar xjvf Fcitx5-${{ matrix.arch }}.tar.bz2 -C "/Library/Input Methods" | |
- name: Build all | |
run: ./all.sh ${{ matrix.arch }} | |
- name: Upload arch-specific artifact | |
uses: actions/upload-artifact@v4 | |
with: | |
name: artifact-${{ matrix.arch }} | |
path: | | |
build/*-${{ matrix.arch }}.tar.bz2 | |
- name: Upload arch-unspecific artifact | |
if: ${{ matrix.os == 'macos-14' }} | |
uses: actions/upload-artifact@v4 | |
with: | |
name: artifact | |
path: | | |
build/*-any.tar.bz2 | |
- name: Check validity | |
run: ./check-validity.sh | |
- name: Generate meta-${{ matrix.arch }}.json | |
run: | | |
python generate-meta.py | |
- name: Upload meta-${{ matrix.arch }}.json | |
uses: actions/upload-artifact@v4 | |
with: | |
name: meta-${{ matrix.arch }}.json | |
path: | | |
meta-${{ matrix.arch }}.json | |
- name: Setup tmate session | |
if: ${{ failure() }} | |
uses: mxschmitt/action-tmate@v3 | |
compare: | |
needs: build | |
if: ${{ github.ref != 'refs/heads/master' }} | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Download artifact | |
uses: actions/download-artifact@v4 | |
with: | |
merge-multiple: true | |
- name: Compare | |
run: python compare-arches.py > summary.md | |
- name: Find comment | |
uses: peter-evans/find-comment@v3 | |
id: fc | |
with: | |
issue-number: ${{ github.event.pull_request.number }} | |
comment-author: 'github-actions[bot]' | |
body-includes: "Arch comparison" | |
- name: Create or update comment | |
uses: peter-evans/create-or-update-comment@v4 | |
with: | |
issue-number: ${{ github.event.pull_request.number }} | |
comment-id: ${{ steps.fc.outputs.comment-id }} | |
body-path: summary.md | |
edit-mode: replace | |
release: | |
needs: build | |
if: ${{ github.ref == 'refs/heads/master' }} | |
runs-on: ubuntu-latest | |
steps: | |
- name: Download artifact | |
uses: actions/download-artifact@v4 | |
with: | |
merge-multiple: true | |
- name: Release | |
uses: 'marvinpinto/action-automatic-releases@latest' | |
with: | |
repo_token: ${{ secrets.GITHUB_TOKEN }} | |
automatic_release_tag: latest | |
prerelease: true | |
title: "Nightly Build" | |
files: | | |
*.tar.bz2 | |
meta-arm64.json | |
meta-x86_64.json |