From acf99a3ca896d4007a21208571f24d06fb39ccea Mon Sep 17 00:00:00 2001 From: ditatompel Date: Tue, 11 Jun 2024 01:38:30 +0700 Subject: [PATCH] chore(ci): Release action (test) --- .github/workflows/release.yml | 59 +++++++++++++++++++++++++++++++++++ 1 file changed, 59 insertions(+) create mode 100644 .github/workflows/release.yml diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml new file mode 100644 index 0000000..842f8db --- /dev/null +++ b/.github/workflows/release.yml @@ -0,0 +1,59 @@ +name: "Release Binaries" + +on: + release: + types: [created] + +jobs: + build_binaries: + runs-on: ubuntu-latest + strategy: + matrix: + goos: [linux] + goarch: [amd64, arm64] + + steps: + - name: Check out source code + uses: actions/checkout@v4 + + - name: setup NodeJS + uses: actions/setup-node@v4 + with: + node-version: "20" + registry-url: "https://registry.npmjs.org" + + - name: Setup Go + uses: actions/setup-go@v5 + with: + go-version: 1.22.x + + # Need to build the UI here before build the server binary with go-release-action + - name: Build UI + run: make ui + + - name: Build server binary + uses: wangyoucao577/go-release-action@v1 + with: + github_token: ${{ secrets.ACTION_TOKEN }} + goos: ${{ matrix.goos }} + goarch: ${{ matrix.goarch }} + overwrite: true + pre_command: export CGO_ENABLED=0 + ldflags: -s -w + build_flags: -tags server + project_path: . + binary_name: server + extra_files: LICENSE README.md + + - name: Build client binary + uses: wangyoucao577/go-release-action@v1 + with: + github_token: ${{ secrets.ACTION_TOKEN }} + goos: ${{ matrix.goos }} + goarch: ${{ matrix.goarch }} + overwrite: true + pre_command: export CGO_ENABLED=0 + ldflags: -s -w + binary_name: client + project_path: . + extra_files: LICENSE README.md