diff --git a/.github/workflows/build.sh b/.github/workflows/build.sh new file mode 100644 index 0000000..cc19540 --- /dev/null +++ b/.github/workflows/build.sh @@ -0,0 +1,28 @@ +#!/bin/sh + +set -eux + +PROJECT_ROOT="/go/src/github.com/${GITHUB_REPOSITORY}" + +mkdir -p $PROJECT_ROOT +rmdir $PROJECT_ROOT +ln -s $GITHUB_WORKSPACE $PROJECT_ROOT +cd $PROJECT_ROOT +go get -v ./... +go get github.com/GeertJohan/go.rice/rice + +EXT='' + +if [ $GOOS == 'windows' ]; then +EXT='.exe' +fi + +if [ -x "./build.sh" ]; then + OUTPUT=`./build.sh "${CMD_PATH}"` +else + rice embed-go + go build "${CMD_PATH}" + OUTPUT="${PROJECT_NAME}${EXT}" +fi + +echo ${OUTPUT} \ No newline at end of file diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml new file mode 100644 index 0000000..69f2548 --- /dev/null +++ b/.github/workflows/release.yml @@ -0,0 +1,87 @@ +on: release +name: Build Release +jobs: + release-linux-386: + name: release linux/386 + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@master + - name: compile and release + uses: ngs/go-release.action@v1.0.1 + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + GOARCH: "386" + GOOS: linux + EXTRA_FILES: "LICENSE" + release-linux-amd64: + name: release linux/amd64 + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@master + - name: compile and release + uses: ngs/go-release.action@v1.0.1 + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + GOARCH: amd64 + GOOS: linux + EXTRA_FILES: "LICENSE" + release-linux-arm: + name: release linux/386 + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@master + - name: compile and release + uses: ngs/go-release.action@v1.0.1 + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + GOARCH: "arm" + GOOS: linux + EXTRA_FILES: "LICENSE" + release-linux-arm64: + name: release linux/amd64 + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@master + - name: compile and release + uses: ngs/go-release.action@v1.0.1 + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + GOARCH: arm64 + GOOS: linux + EXTRA_FILES: "LICENSE" + release-darwin-amd64: + name: release darwin/amd64 + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@master + - name: compile and release + uses: ngs/go-release.action@v1.0.1 + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + GOARCH: amd64 + GOOS: darwin + EXTRA_FILES: "LICENSE" + release-windows-386: + name: release windows/386 + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@master + - name: compile and release + uses: ngs/go-release.action@v1.0.1 + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + GOARCH: "386" + GOOS: windows + EXTRA_FILES: "LICENSE" + release-windows-amd64: + name: release windows/amd64 + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@master + - name: compile and release + uses: ngs/go-release.action@v1.0.1 + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + GOARCH: amd64 + GOOS: windows + EXTRA_FILES: "LICENSE"