Misaka No пре 3 година
родитељ
комит
cf10ff67e3
1 измењених фајлова са 134 додато и 0 уклоњено
  1. 134 0
      .github/workflows/release.yml

+ 134 - 0
.github/workflows/release.yml

@@ -0,0 +1,134 @@
+name: Release X-ui
+on:
+  push:
+    tags:
+      - 0.*
+  workflow_dispatch:
+
+jobs:
+  release:
+    runs-on: ubuntu-latest
+    outputs:
+      upload_url: ${{ steps.create_release.outputs.upload_url }}
+    steps:
+      - name: Create Release
+        id: create_release
+        uses: actions/create-release@v1
+        env:
+          GITHUB_TOKEN: ${{ secrets.GAYHUB_TOKEN }}
+        with:
+          tag_name: ${{ github.ref }}
+          release_name: ${{ github.ref }}
+          draft: false
+          prerelease: true
+  linuxamd64build:
+    name: build x-ui amd64 version
+    needs: release
+    runs-on: ubuntu-latest
+    steps:
+      - uses: actions/checkout@v2
+      - name: Set up Go
+        uses: actions/setup-go@v2
+        with:
+          go-version: 1.18
+      - name: build linux amd64 version
+        run: |
+          CGO_ENABLED=1 GOOS=linux GOARCH=amd64 go build -o xui-release -v main.go
+          mkdir x-ui
+          cp xui-release x-ui/xui-release
+          cp x-ui.service x-ui/x-ui.service
+          cp x-ui.sh x-ui/x-ui.sh
+          cd x-ui
+          mv xui-release x-ui
+          mkdir bin
+          cd bin
+          wget https://github.com/XTLS/Xray-core/releases/download/v1.5.4/Xray-linux-64.zip
+          unzip Xray-linux-64.zip
+          rm -f Xray-linux-64.zip
+          cd ..
+          cd ..
+      - name: package
+        run: tar -zcvf x-ui-linux-amd64.tar.gz x-ui
+      - name: upload
+        uses: actions/upload-release-asset@v1
+        env:
+          GITHUB_TOKEN: ${{ secrets.GAYHUB_TOKEN }}
+        with:
+          upload_url: ${{ needs.release.outputs.upload_url }}
+          asset_path: x-ui-linux-amd64.tar.gz
+          asset_name: x-ui-linux-amd64.tar.gz
+          asset_content_type: application/gzip
+  linuxarm64build:
+    name: build x-ui arm64 version
+    needs: release
+    runs-on: ubuntu-latest
+    steps:
+      - uses: actions/checkout@v2
+      - name: Set up Go
+        uses: actions/setup-go@v2
+        with:
+          go-version: 1.18
+      - name: build linux arm64 version
+        run: |
+          GOOS=linux GOARCH=arm64 go build -o xui-release -v main.go
+          mkdir x-ui
+          cp xui-release x-ui/xui-release
+          cp x-ui.service x-ui/x-ui.service
+          cp x-ui.sh x-ui/x-ui.sh
+          cd x-ui
+          mv xui-release x-ui
+          mkdir bin
+          cd bin
+          wget https://github.com/XTLS/Xray-core/releases/download/v1.5.4/Xray-linux-arm64-v8a.zip
+          unzip Xray-linux-arm64-v8a.zip
+          rm -f Xray-linux-arm64-v8a.zip
+          cd ..
+          cd ..
+      - name: package
+        run: tar -zcvf x-ui-linux-arm64.tar.gz x-ui
+      - name: upload
+        uses: actions/upload-release-asset@v1
+        env:
+          GITHUB_TOKEN: ${{ secrets.GAYHUB_TOKEN }}
+        with:
+          upload_url: ${{ needs.release.outputs.upload_url }}
+          asset_path: x-ui-linux-arm64.tar.gz
+          asset_name: x-ui-linux-arm64.tar.gz
+          asset_content_type: application/gzip
+  linuxs390xbuild:
+    name: build x-ui s390x version
+    needs: release
+    runs-on: ubuntu-latest
+    steps:
+      - uses: actions/checkout@v2
+      - name: Set up Go
+        uses: actions/setup-go@v2
+        with:
+          go-version: 1.18
+      - name: build linux s390x version
+        run: |
+          GOOS=linux GOARCH=s390x go build -o xui-release -v main.go
+          mkdir x-ui
+          cp xui-release x-ui/xui-release
+          cp x-ui.service x-ui/x-ui.service
+          cp x-ui.sh x-ui/x-ui.sh
+          cd x-ui
+          mv xui-release x-ui
+          mkdir bin
+          cd bin
+          wget https://github.com/XTLS/Xray-core/releases/download/v1.5.4/Xray-linux-s390x.zip
+          unzip Xray-linux-s390x.zip
+          rm -f Xray-linux-s390x.zip
+          cd ..
+          cd ..
+      - name: package
+        run: tar -zcvf x-ui-linux-s390x.tar.gz x-ui
+      - name: upload
+        uses: actions/upload-release-asset@v1
+        env:
+          GITHUB_TOKEN: ${{ secrets.GAYHUB_TOKEN }}
+        with:
+          upload_url: ${{ needs.release.outputs.upload_url }}
+          asset_path: x-ui-linux-s390x.tar.gz
+          asset_name: x-ui-linux-s390x.tar.gz
+          asset_content_type: application/gzip