Files
home/Apps/claude-desktop-debian/.github/workflows/build-arm64.yml
2025-10-08 10:35:48 +02:00

49 lines
1.5 KiB
YAML

name: Build Package ARM64 (Reusable)
on:
workflow_call:
inputs:
build_flags:
description: 'Flags to pass to build.sh (e.g., "--build appimage --clean no")'
required: false
type: string
default: '' # Default is no extra flags
artifact_suffix:
description: 'Suffix for the artifact name (e.g., deb, appimage)'
required: true
type: string
jobs:
build:
# Use an ARM runner
runs-on: ubuntu-22.04-arm # Or your self-hosted ARM runner label
steps:
# Checkout code is needed within the reusable workflow itself
- name: Checkout repository
uses: actions/checkout@v4
- name: Install FUSE for AppImageTool
run: |
sudo apt-get update
sudo apt-get install -y libfuse2
- name: Make build script executable
run: chmod +x ./build.sh
- name: Run build script
run: |
echo "Running ARM64 build with flags: ${{ inputs.build_flags }}"
# No sudo needed if runner user has permissions or build.sh handles it internally
./build.sh ${{ inputs.build_flags }}
# Upload the built artifact for the release job
- name: Upload ARM64 Artifact
uses: actions/upload-artifact@v4
with:
name: package-arm64-${{ inputs.artifact_suffix }} # Unique name using suffix
path: | # Adjust path based on expected output
claude-desktop_*.deb
claude-desktop-*.AppImage
claude-desktop-*.AppImage.zsync
if-no-files-found: error # Fail if build didn't produce output