From cbbc8259e86267020642af9d2a303b8025d568c5 Mon Sep 17 00:00:00 2001 From: ljw <84855512@qq.com> Date: Fri, 27 Sep 2024 14:24:17 +0800 Subject: [PATCH] up build docker --- .github/workflows/build.yml | 32 ++++++++++++++++---------------- 1 file changed, 16 insertions(+), 16 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 303b96b..882c58e 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -52,7 +52,7 @@ jobs: swag init -g cmd/apimain.go --output docs/api --instanceName api --exclude http/controller/admin swag init -g cmd/apimain.go --output docs/admin --instanceName admin --exclude http/controller/api - - name: Build for ${{ matrix.goos }}-${{ matrix.goarch }} + - name: Build for ${{ matrix.job.goos }}-${{ matrix.job.platform }} run: | mkdir release -p cp -ar resources release/ @@ -60,41 +60,41 @@ jobs: cp -ar conf release/ mkdir -p release/data mkdir -p release/runtime - if [ "${{ matrix.goos }}" = "windows" ]; then + if [ "${{ matrix.job.goos }}" = "windows" ]; then sudo apt-get install gcc-mingw-w64-x86-64 zip -y - GOOS=${{ matrix.goos }} GOARCH=${{ matrix.goarch }} CC=x86_64-w64-mingw32-gcc CGO_LDFLAGS="-static" CGO_ENABLED=1 go build -ldflags "-s -w" -o ./release/apimain.exe ./cmd/apimain.go - zip -r ${{ matrix.goos}}-${{ matrix.goarch }}.zip ./release + GOOS=${{ matrix.job.goos }} GOARCH=${{ matrix.job.platform }} CC=x86_64-w64-mingw32-gcc CGO_LDFLAGS="-static" CGO_ENABLED=1 go build -ldflags "-s -w" -o ./release/apimain.exe ./cmd/apimain.go + zip -r ${{ matrix.job.goos}}-${{ matrix.job.platform }}.zip ./release else - if [ "${{ matrix.platform }}" = "arm64v8" ]; then + if [ "${{ matrix.job.platform }}" = "arm64v8" ]; then wget https://musl.cc/aarch64-linux-musl-cross.tgz tar -xvzf aarch64-linux-musl-cross.tgz export PATH=$PATH:$PWD/aarch64-linux-musl-cross/bin - GOOS=${{ matrix.goos }} GOARCH=${{ matrix.goarch }} CC=aarch64-linux-musl-gcc CGO_LDFLAGS="-static" CGO_ENABLED=1 go build -ldflags "-s -w" -o ./release/apimain ./cmd/apimain.go + GOOS=${{ matrix.job.goos }} GOARCH=${{ matrix.job.platform }} CC=aarch64-linux-musl-gcc CGO_LDFLAGS="-static" CGO_ENABLED=1 go build -ldflags "-s -w" -o ./release/apimain ./cmd/apimain.go else sudo apt-get install musl musl-dev musl-tools -y - GOOS=${{ matrix.goos }} GOARCH=${{ matrix.goarch }} CC=musl-gcc CGO_LDFLAGS="-static" CGO_ENABLED=1 go build -ldflags "-s -w" -o ./release/apimain ./cmd/apimain.go + GOOS=${{ matrix.job.goos }} GOARCH=${{ matrix.job.platform }} CC=musl-gcc CGO_LDFLAGS="-static" CGO_ENABLED=1 go build -ldflags "-s -w" -o ./release/apimain ./cmd/apimain.go fi - tar -czf ${{ matrix.goos}}-${{ matrix.goarch }}.tar.gz ./release + tar -czf ${{ matrix.job.goos}}-${{ matrix.job.platform }}.tar.gz ./release fi - name: Upload artifact uses: actions/upload-artifact@v4 with: - name: rustdesk-api-${{ matrix.goos }}-${{ matrix.goarch }} + name: rustdesk-api-${{ matrix.job.goos }}-${{ matrix.job.platform }} path: | - ${{ matrix.goos}}-${{ matrix.goarch }}.tar.gz - ${{ matrix.goos}}-${{ matrix.goarch }}.zip + ${{ matrix.job.goos}}-${{ matrix.job.platform }}.tar.gz + ${{ matrix.job.goos}}-${{ matrix.job.platform }}.zip - name: Upload to GitHub Release uses: softprops/action-gh-release@v2 with: files: | - ${{ matrix.goos}}-${{ matrix.goarch }}.tar.gz - ${{ matrix.goos}}-${{ matrix.goarch }}.zip + ${{ matrix.job.goos}}-${{ matrix.job.platform }}.tar.gz + ${{ matrix.job.goos}}-${{ matrix.job.platform }}.zip env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} docker: - name: Push Docker Image ${{ matrix.platform }} + name: Push Docker Image ${{ matrix.job.platform }} needs: build runs-on: ubuntu-latest strategy: @@ -120,13 +120,13 @@ jobs: - name: Download binaries uses: actions/download-artifact@v3 with: - name: rustdesk-api-${{ matrix.goos }}-${{ matrix.goarch }} + name: rustdesk-api-${{ matrix.job.goos }}-${{ matrix.job.platform }} path: ./ - name: Unzip binaries run: | mkdir release -p - tar -xzf rustdesk-api-${{ matrix.goos }}-${{ matrix.goarch }}.tar.gz -C release/ + tar -xzf rustdesk-api-${{ matrix.job.goos }}-${{ matrix.job.platform }}.tar.gz -C release/ - name: Build and push Docker image uses: docker/build-push-action@v5