diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index f6687720..4961a2a0 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -8,10 +8,10 @@ on: jobs: release: - runs-on: ubuntu-latest strategy: matrix: go: [1.17] + platform: [ubuntu-latest, macos-11] steps: - name: Arm Build run: | @@ -90,9 +90,14 @@ jobs: go get github.com/go-bindata/go-bindata/... go get github.com/elazarl/go-bindata-assetfs/... - - name: Make Artifacts + - name: Make Artifacts Linux + if: matrix.platform == 'ubuntu-latest' run: | make artifacts + - name: Make Artifacts MacOS + if: matrix.platform == 'macos-11' + run: | + make artifacts-macos - name: Push to Station (@Silicon Valley) uses: nogsantos/scp-deploy@master diff --git a/Makefile b/Makefile index dbf65246..38bf34af 100644 --- a/Makefile +++ b/Makefile @@ -275,6 +275,32 @@ artifacts: clean ls -l dist/release/ dist/release/yao-${VERSION}-linux-amd64 version +.PHONY: artifacts-macos +artifacts-macos: clean + mkdir -p dist/release + +# UI制品 + sed -ie "s/url('\/icon/url('\/xiang\/icon/g" ../ui/public/icon/md_icon.css + cd ../ui && npm install && npm run build + +# 静态文件打包 + mkdir -p .tmp/data + cp -r ../ui/dist .tmp/data/ui + cp -r xiang .tmp/data/ + go-bindata -fs -pkg data -o data/bindata.go -prefix ".tmp/data/" .tmp/data/... + rm -rf .tmp/data + rm -rf .tmp/ui + +# 制品 + mkdir -p dist + CGO_ENABLED=1 CGO_ENABLED=1 GOOS=darwin GOARCH=amd64 go build -v -o dist/yao-${VERSION}-darwin-amd64 + + mkdir -p dist/release + mv dist/yao-*-* dist/release/ + chmod +x dist/release/yao-*-* + ls -l dist/release/ + dist/release/yao-${VERSION}-linux-amd64 version + .PHONY: win32 win32: bindata GOOS=windows GOARCH=386 go build -v -o .tmp/xiang-windows-386 diff --git a/build/arm.sh b/build/arm.sh new file mode 100755 index 00000000..935a35c3 --- /dev/null +++ b/build/arm.sh @@ -0,0 +1,6 @@ +# /bin/bash +go clean --cache +CC=aarch64-linux-gnu-gcc CXX=aarch64-linux-gnu-g++ \ + CGO_ENABLED=1 GOOS=linux GOARCH=arm64 \ + go build -ldflags="-extldflags=-static" -v -o ./yao-arm64 + diff --git a/share/const.go b/share/const.go index 8f7a03ac..b4946b32 100644 --- a/share/const.go +++ b/share/const.go @@ -4,6 +4,7 @@ package share // session -> freeport fix bug // 更新制品目录 -> ui/downloads // Arm64 制品 -> arm build test +// MacOS 制品 // VERSION 版本号 const VERSION = "0.9.1" diff --git a/shell/arm.sh b/shell/arm.sh deleted file mode 100755 index 93a814a5..00000000 --- a/shell/arm.sh +++ /dev/null @@ -1,13 +0,0 @@ -# /bin/bash -# V8 -go clean --cache -# cp ../gou/go.mod ../gou/go.mod.bak -# echo "replace rogchap.com/v8go => ../v8go" >> ../gou/go.mod - -CC=aarch64-linux-gnu-gcc CXX=aarch64-linux-gnu-g++ \ -CGO_ENABLED=1 GOOS=linux GOARCH=arm64 \ -go build -ldflags="-extldflags=-static" -v -o ./yao-arm64 - -# cp ../gou/go.mod.bak ../gou/go.mod -# rm ../gou/go.mod.bak - diff --git a/shell/install.sh b/shell/install.sh deleted file mode 100755 index 16954898..00000000 --- a/shell/install.sh +++ /dev/null @@ -1,69 +0,0 @@ - #!/bin/bash -VERSION="0.9.0" -URL="https://release.yaoapps.com/download" - -function macos(){ - tmpdir=$(dirname $(mktemp -u)) - curl "$URL/yao-$VERSION-darwin-amd64" --output "$tmpdir/yao-$VERSION" - ls -l $tmpdir/yao-$VERSION - rmOldVersion - sudo mv $tmpdir/yao-$VERSION /usr/local/bin/yao - sudo chmod +x /usr/local/bin/yao - echo "" - echo /usr/local/bin/yao - /usr/local/bin/yao version - echo "DONE" -} - -function linux(){ - tmpdir=$(dirname $(mktemp -u)) - curl "$URL/yao-$VERSION-linux-amd64" --output "$tmpdir/yao-$VERSION" - ls -l $tmpdir/yao-$VERSION - rmOldVersion - sudo mv $tmpdir/yao-$VERSION /usr/local/bin/yao - sudo chmod +x /usr/local/bin/yao - echo "" - echo /usr/local/bin/yao - /usr/local/bin/yao version - echo "DONE" -} - - -function rmOldVersion() { - if command -v /usr/local/bin/yao &> /dev/null - then - sudo mv /usr/local/bin/yao /usr/local/bin/yao.bak - fi -} - -function rmOldVersionWin() { - if command -v /usr/local/bin/yao &> /dev/null - then - mv /usr/local/bin/yao /usr/local/bin/yao.bak - fi -} - -function windows(){ - tmpdir=$(dirname $(mktemp -u)) - curl "$URL/yao-$VERSION-windows-386" --output "$tmpdir/yao-$VERSION" - ls -l $tmpdir/yao-$VERSION - rmOldVersionWin - mv $tmpdir/yao-$VERSION /usr/local/bin/yao - chmod +x /usr/local/bin/yao - echo "" - echo /usr/local/bin/yao - /usr/local/bin/yao version - echo "DONE" -} - - -if [ "$(uname)" = "Darwin" ];then -macos -elif [ "$(expr substr $(uname -s) 1 5)" = "Linux" ];then -linux -elif [ "$(expr substr $(uname -s) 1 9)" = "CYGWIN_NT" ];then -windows -else -echo $(uname -s) "does not support" -fi -