Welcome to mirror list, hosted at ThFree Co, Russian Federation.

release.yml « workflows « .github - github.com/MHSanaei/3x-ui.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
blob: 46ed5faa5877bb484b0342c410f43b2ad9f1c18b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
name: Release 3X-ui
on:
  push:
    tags:
      - "*"
  workflow_dispatch:
jobs:
  release:
    runs-on: ubuntu-20.04
    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.GITHUB_TOKEN }}
        with:
          tag_name: ${{ github.ref }}
          release_name: ${{ github.ref }}
          draft: true
          prerelease: true
  linuxamd64build:
    name: build x-ui amd64 version
    needs: release
    runs-on: ubuntu-20.04
    steps:
      - uses: actions/checkout@v3
      - name: Set up Go
        uses: actions/setup-go@v3
        with:
          go-version: '1.20'
      - 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/latest/download/Xray-linux-64.zip
          unzip Xray-linux-64.zip
          rm -f Xray-linux-64.zip geoip.dat geosite.dat
          wget https://github.com/Loyalsoldier/v2ray-rules-dat/releases/latest/download/geoip.dat
          wget https://github.com/Loyalsoldier/v2ray-rules-dat/releases/latest/download/geosite.dat
          mv xray xray-linux-amd64
          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.GITHUB_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-20.04
    steps:
      - uses: actions/checkout@v3
      - name: Set up Go
        uses: actions/setup-go@v3
        with:
          go-version: '1.20'
      - name: build linux arm64 version
        run: |
          sudo apt-get update
          sudo apt install gcc-aarch64-linux-gnu
          CGO_ENABLED=1 GOOS=linux GOARCH=arm64 CC=aarch64-linux-gnu-gcc 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/latest/download/Xray-linux-arm64-v8a.zip
          unzip Xray-linux-arm64-v8a.zip
          rm -f Xray-linux-arm64-v8a.zip geoip.dat geosite.dat
          wget https://github.com/Loyalsoldier/v2ray-rules-dat/releases/latest/download/geoip.dat
          wget https://github.com/Loyalsoldier/v2ray-rules-dat/releases/latest/download/geosite.dat
          mv xray xray-linux-arm64
          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.GITHUB_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-20.04
    steps:
      - uses: actions/checkout@v3
      - name: Set up Go
        uses: actions/setup-go@v3
        with:
          go-version: '1.20'
      - name: build linux s390x version
        run: |
          sudo apt-get update
          sudo apt install gcc-s390x-linux-gnu -y
          CGO_ENABLED=1 GOOS=linux GOARCH=s390x CC=s390x-linux-gnu-gcc 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/latest/download/Xray-linux-s390x.zip
          unzip Xray-linux-s390x.zip
          rm -f Xray-linux-s390x.zip geoip.dat geosite.dat
          wget https://github.com/Loyalsoldier/v2ray-rules-dat/releases/latest/download/geoip.dat
          wget https://github.com/Loyalsoldier/v2ray-rules-dat/releases/latest/download/geosite.dat
          mv xray xray-linux-s390x
          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.GITHUB_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