fix1
All checks were successful
ci/woodpecker/push/woodpecker Pipeline was successful

This commit is contained in:
2025-10-04 15:17:38 +08:00
parent 2fe7abe901
commit 4ff84858c3
2 changed files with 84 additions and 5 deletions

View File

@@ -1,11 +1,79 @@
# .woodpecker.yml
# 在 macOS ARM64 的本地 exec agent 上跑一组检查
steps:
- name: hello-macos
- name: env-info
image: /bin/zsh
when:
platform: darwin/arm64
event: [push, manual, pull_request]
commands:
- 'set -e'
- 'echo "Agent platform: ${CI_SYSTEM_PLATFORM}"'
- 'sw_vers'
- 'xcodebuild -version || true'
- |
set -e
echo "== Agent =="
echo "Host: ${HOST:-unknown}"
echo "Platform: ${CI_SYSTEM_PLATFORM}"
echo "Backend: ${CI_SYSTEM_BACKEND}"
echo "Agent name: ${CI_AGENT_NAME:-unknown}"
echo
echo "== OS =="
sw_vers
uname -a
echo
echo "== Toolchains =="
xcodebuild -version || true
xcrun -sdk macosx --show-sdk-version || true
swift --version || true
clang --version || true
echo
echo "== GPU (Metal) =="
system_profiler SPDisplaysDataType | sed -n '1,120p' || true
# 如未装完整 Xcode/CLT下面 metal 编译可能跳过
xcrun -sdk macosx --find metal >/dev/null 2>&1 && echo "metal is available" || echo "metal not found"
- name: swift-hello
image: /bin/zsh
when:
platform: darwin/arm64
event: [push, manual, pull_request]
commands:
- |
set -e
cat > hello.swift <<'SWIFT'
import Foundation
print("Hello from Swift on \(ProcessInfo.processInfo.operatingSystemVersionString)")
SWIFT
swiftc hello.swift -o hello
./hello
- name: metal-compile
image: /bin/zsh
when:
platform: darwin/arm64
event: [push, manual, pull_request]
commands:
- |
set -e
if xcrun -sdk macosx --find metal >/dev/null 2>&1; then
cat > shader.metal <<'METAL'
using namespace metal;
kernel void k(device float* in [[buffer(0)]],
device float* out [[buffer(1)]],
uint id [[thread_position_in_grid]]) { out[id] = in[id] * 2.0; }
METAL
xcrun -sdk macosx metal -c shader.metal -o shader.air
xcrun -sdk macosx metallib shader.air -o shader.metallib
ls -lh shader.*
else
echo "Skipping Metal compile because Xcode CLI tools (metal) are not available."
fi
- name: brew-check
image: /bin/zsh
when:
platform: darwin/arm64
event: [push, manual, pull_request]
commands:
- |
set -e
brew --version || true
which brew || true