Skip to content

New build system

New build system #20

Workflow file for this run

# yaml-language-server: $schema=https://json.schemastore.org/github-workflow.json
# SPDX-FileCopyrightText: 2026 Kaito Udagawa <umireon@kaito.tokyo>
#
# SPDX-License-Identifier: Apache-2.0
name: Plugin CI
# file: .github/workflows/plugin.yml
# author: Kaito Udagawa <umireon@kaito.tokyo>
# date: 2026-06-21
on:
pull_request:
branches: [main]
push:
branches: [main]
tags: ['*']
permissions: {}
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
config:
uses: ./.github/workflows/plugin-config.yml
build-macos:
needs: config
permissions:
contents: read
uses: ./.github/workflows/plugin-build-macos.yml
with:
job-index: 0
environment: ${{ github.event_name == 'push' && 'production-macos' || '' }}
runs-on: ${{ fromJson(needs.config.outputs.configJson).MACOS_RUNS_ON }}
DEVELOPER_DIR: ${{ fromJson(needs.config.outputs.configJson).DEVELOPER_DIR }}
OSX_ARCHITECTURES: ${{ fromJson(needs.config.outputs.configJson).OSX_ARCHITECTURES }}
OSX_DEPLOYMENT_TARGET: ${{ fromJson(needs.config.outputs.configJson).OSX_DEPLOYMENT_TARGET }}
VCPKG_BINARY_SOURCES: ${{ fromJson(needs.config.outputs.configJson).VCPKG_BINARY_SOURCES }}
secrets: inherit
accept-plugin:
name: Accept Plugin CI
if: always()
needs: [build-macos]
runs-on: ubuntu-slim
permissions: {}
steps:
- name: Check the workflow result
env:
BUILD_MACOS_RESULT: ${{ needs.build-macos.result }}
run: |
[[ "$BUILD_MACOS_RESULT" == 'success' ]]
create-release:
if: github.event_name == 'push' && startsWith(github.ref, 'refs/tags/')
needs: [accept-plugin]
permissions:
artifact-metadata: write
attestations: write
contents: write
id-token: write
uses: ./.github/workflows/plugin-release.yml
with:
environment: production-release