c0f18a41a1
CI / server-core-test (push) Has been skipped
CI / device-agent-test (push) Has been skipped
CI / dashboard-test (push) Has been skipped
CI / build-server-core (push) Successful in 3m44s
CI / build-device-agent (push) Successful in 1m38s
CI / build-dashboard (push) Successful in 3m39s
CI / build-docs (push) Successful in 51s
CI / release (push) Successful in 46s
- persist-credentials: false on all workflows (prevent Gitea overwriting insteadOf URL) - Replace matrix strategy in build_device_agent.yaml with sequential builds (act_runner v0.6.1 ParallelExecutor crash) - Build all 3 platforms (linux/amd64, linux/arm64, windows/amd64) in single step
59 lines
1.8 KiB
YAML
59 lines
1.8 KiB
YAML
name: Build Device Agent
|
|
|
|
on:
|
|
workflow_call:
|
|
|
|
jobs:
|
|
cross-build:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- name: Configure git auth for submodules
|
|
run: git config --global url."https://x-access-token:${{ secrets.BUILD_TOKEN }}@git.datadunia.com/".insteadOf "https://git.datadunia.com/"
|
|
|
|
- uses: actions/checkout@v4
|
|
with:
|
|
submodules: true
|
|
fetch-depth: 0
|
|
token: ${{ secrets.BUILD_TOKEN }}
|
|
persist-credentials: false
|
|
|
|
- uses: actions/setup-go@v5
|
|
with:
|
|
go-version: '1.26'
|
|
|
|
- name: Build all platforms
|
|
working-directory: apps/device-agent
|
|
shell: bash
|
|
run: |
|
|
set -e
|
|
mkdir -p bin
|
|
for PAIR in linux/amd64 linux/arm64 windows/amd64; do
|
|
GOOS="${PAIR%%/*}"
|
|
GOARCH="${PAIR##*/}"
|
|
EXT=""
|
|
if [ "$GOOS" = "windows" ]; then EXT=".exe"; fi
|
|
OUT="bin/nexus-device-agent-${GOOS}-${GOARCH}${EXT}"
|
|
echo "Building $OUT ..."
|
|
CGO_ENABLED=0 GOOS="$GOOS" GOARCH="$GOARCH" go build -o "$OUT" .
|
|
done
|
|
echo "=== Build output ==="
|
|
ls -la bin/
|
|
|
|
- name: Upload linux/amd64
|
|
uses: actions/upload-artifact@v3
|
|
with:
|
|
name: nexus-device-agent-linux-amd64
|
|
path: apps/device-agent/bin/nexus-device-agent-linux-amd64
|
|
|
|
- name: Upload linux/arm64
|
|
uses: actions/upload-artifact@v3
|
|
with:
|
|
name: nexus-device-agent-linux-arm64
|
|
path: apps/device-agent/bin/nexus-device-agent-linux-arm64
|
|
|
|
- name: Upload windows/amd64
|
|
uses: actions/upload-artifact@v3
|
|
with:
|
|
name: nexus-device-agent-windows-amd64
|
|
path: apps/device-agent/bin/nexus-device-agent-windows-amd64.exe
|