From 9c67395334700cd34cdfe8fc84a974008e30f32f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=BC=98=E7=94=9F?= Date: Mon, 12 Dec 2022 12:16:40 +0800 Subject: [PATCH] feat(build): add support on Loongnix-Server (loong64) (#6233) Makefile, .github/workflow: add tests, targets for GOARCH=loong64 (Loongnix) Signed-off-by: ysicing --- .github/workflows/cross-loong64.yml | 57 +++++++++++++++++++++++++++++ Makefile | 3 ++ 2 files changed, 60 insertions(+) create mode 100644 .github/workflows/cross-loong64.yml diff --git a/.github/workflows/cross-loong64.yml b/.github/workflows/cross-loong64.yml new file mode 100644 index 000000000..9ee70059a --- /dev/null +++ b/.github/workflows/cross-loong64.yml @@ -0,0 +1,57 @@ +name: Loongnix-Cross + +on: + push: + branches: + - main + pull_request: + branches: + - '*' + - 'release-branch/*' + +concurrency: + group: ${{ github.workflow }}-$${{ github.head_ref || github.run_id }} + cancel-in-progress: true + +jobs: + build: + runs-on: ubuntu-latest + + if: "!contains(github.event.head_commit.message, '[ci skip]')" + + steps: + - name: Check out code into the Go module directory + uses: actions/checkout@v3 + + - name: Set up Go + uses: actions/setup-go@v3 + with: + go-version-file: go.mod + id: go + + - name: Loongnix build cmd + env: + GOOS: linux + GOARCH: loong64 + run: go build ./cmd/... + + - name: Loongnix build tests + env: + GOOS: linux + GOARCH: loong64 + run: for d in $(go list -f '{{if .TestGoFiles}}{{.Dir}}{{end}}' ./... ); do (echo $d; cd $d && go test -c ); done + + - uses: k0kubun/action-slack@v2.0.0 + with: + payload: | + { + "attachments": [{ + "text": "${{ job.status }}: ${{ github.workflow }} " + + "() " + + "of ${{ github.repository }}@" + "${{ github.ref }}".split('/').reverse()[0] + " by ${{ github.event.head_commit.committer.name }}", + "color": "danger" + }] + } + env: + SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }} + if: failure() && github.event_name == 'push' diff --git a/Makefile b/Makefile index 14a74af76..36489cb73 100644 --- a/Makefile +++ b/Makefile @@ -35,6 +35,9 @@ buildlinuxarm: buildwasm: GOOS=js GOARCH=wasm ./tool/go install ./cmd/tsconnect/wasm ./cmd/tailscale/cli +buildlinuxloong64: + GOOS=linux GOARCH=loong64 ./tool/go install tailscale.com/cmd/tailscale tailscale.com/cmd/tailscaled + buildmultiarchimage: ./build_docker.sh