mirror of
https://github.com/pimalaya/himalaya.git
synced 2026-06-16 04:17:56 +08:00
add build-on-demand workflow
This commit is contained in:
@@ -0,0 +1,59 @@
|
||||
name: build-on-demand
|
||||
|
||||
on:
|
||||
workflow_dispatch:
|
||||
inputs:
|
||||
target:
|
||||
description: "Target"
|
||||
required: true
|
||||
type: choice
|
||||
options:
|
||||
- aarch64-apple-darwin
|
||||
- aarch64-unknown-linux-musl
|
||||
- armv6l-unknown-linux-musleabihf
|
||||
- armv7l-unknown-linux-musleabihf
|
||||
- i686-unknown-linux-musl
|
||||
- i686-w64-mingw32
|
||||
- x86_64-apple-darwin
|
||||
- x86_64-unknown-linux-musl
|
||||
- x86_64-w64-mingw32
|
||||
defaultFeatures:
|
||||
description: "Enable default cargo features"
|
||||
default: true
|
||||
type: bool
|
||||
features:
|
||||
description: "Cargo features (comma-separated)"
|
||||
type: string
|
||||
|
||||
jobs:
|
||||
build-on-demand:
|
||||
runs-on: ${{ inputs.target == "x86_64-apple-darwin" && "macos-13" || inputs.target == "aarch64-apple-darwin" && "macos-14" || "ubuntu-latest" }}
|
||||
steps:
|
||||
- name: Checkout code
|
||||
uses: actions/checkout@v4
|
||||
- name: Install Nix
|
||||
uses: cachix/install-nix-action@v27
|
||||
with:
|
||||
nix_path: nixpkgs=channel:nixos-24.05
|
||||
enable_kvm: true
|
||||
- name: Cache Nix store
|
||||
uses: cachix/cachix-action@v15
|
||||
with:
|
||||
name: soywod
|
||||
authToken: "${{ secrets.CACHIX_AUTH_TOKEN }}"
|
||||
extraPullNames: nix-community
|
||||
- name: Build release
|
||||
env:
|
||||
NIXPKGS_ALLOW_UNSUPPORTED_SYSTEM: 1
|
||||
run: |
|
||||
nix-build \
|
||||
--argstr target ${{ inputs.target }} \
|
||||
--arg defaultFeatures ${{ inputs.defaultFeatures }} \
|
||||
--argstr features ${{ inputs.features }}
|
||||
- name: Upload release artifact
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: "himalaya.${{ inputs.target }}"
|
||||
path: |
|
||||
result/bin/himalaya*
|
||||
result/bin/share
|
||||
@@ -10,28 +10,24 @@ jobs:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
include:
|
||||
- os: ubuntu-latest
|
||||
target: x86_64-unknown-linux-gnu
|
||||
- os: ubuntu-latest
|
||||
target: x86_64-unknown-linux-musl
|
||||
- os: ubuntu-latest
|
||||
target: aarch64-unknown-linux-gnu
|
||||
- os: ubuntu-latest
|
||||
target: aarch64-unknown-linux-musl
|
||||
- os: ubuntu-latest
|
||||
target: i686-unknown-linux-gnu
|
||||
- os: ubuntu-latest
|
||||
target: i686-unknown-linux-musl
|
||||
- os: ubuntu-latest
|
||||
target: arm-unknown-linux-gnueabihf
|
||||
- os: ubuntu-latest
|
||||
target: armv7-unknown-linux-gnueabihf
|
||||
- os: ubuntu-latest
|
||||
target: x86_64-w64-mingw32
|
||||
- os: macos-13
|
||||
target: x86_64-apple-darwin
|
||||
- os: macos-14
|
||||
target: aarch64-apple-darwin
|
||||
- target: aarch64-apple-darwin
|
||||
os: macos-14
|
||||
- target: aarch64-unknown-linux-musl
|
||||
os: ubuntu-latest
|
||||
- target: armv6l-unknown-linux-musleabihf
|
||||
os: ubuntu-latest
|
||||
- target: armv7l-unknown-linux-musleabihf
|
||||
os: ubuntu-latest
|
||||
- target: i686-unknown-linux-musl
|
||||
os: ubuntu-latest
|
||||
- target: i686-w64-mingw32
|
||||
os: ubuntu-latest
|
||||
- target: x86_64-apple-darwin
|
||||
os: macos-13
|
||||
- target: x86_64-unknown-linux-musl
|
||||
os: ubuntu-latest
|
||||
- target: x86_64-w64-mingw32
|
||||
os: ubuntu-latest
|
||||
steps:
|
||||
- name: Checkout code
|
||||
uses: actions/checkout@v4
|
||||
|
||||
Reference in New Issue
Block a user