Skip to content

Commit b73e417

Browse files
author
MHSanaei
committed
3x-ui
0 parents  commit b73e417

File tree

133 files changed

+61908
-0
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

133 files changed

+61908
-0
lines changed

.github/dependabot.yml

+10
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
version: 2
2+
updates:
3+
- package-ecosystem: "gomod" # See documentation for possible values
4+
directory: "/" # Location of package manifests
5+
schedule:
6+
interval: "daily"
7+
- package-ecosystem: "github-actions"
8+
directory: "/"
9+
schedule:
10+
interval: "daily"

.github/workflows/release.yml

+146
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,146 @@
1+
name: Release 3X-ui
2+
on:
3+
push:
4+
tags:
5+
- "*"
6+
workflow_dispatch:
7+
jobs:
8+
release:
9+
runs-on: ubuntu-20.04
10+
outputs:
11+
upload_url: ${{ steps.create_release.outputs.upload_url }}
12+
steps:
13+
- name: Create Release
14+
id: create_release
15+
uses: actions/create-release@v1
16+
env:
17+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
18+
with:
19+
tag_name: ${{ github.ref }}
20+
release_name: ${{ github.ref }}
21+
draft: true
22+
prerelease: true
23+
linuxamd64build:
24+
name: build x-ui amd64 version
25+
needs: release
26+
runs-on: ubuntu-20.04
27+
steps:
28+
- uses: actions/checkout@v3
29+
- name: Set up Go
30+
uses: actions/setup-go@v3
31+
with:
32+
go-version: 1.19
33+
- name: build linux amd64 version
34+
run: |
35+
CGO_ENABLED=1 GOOS=linux GOARCH=amd64 go build -o xui-release -v main.go
36+
mkdir x-ui
37+
cp xui-release x-ui/xui-release
38+
cp x-ui.service x-ui/x-ui.service
39+
cp x-ui.sh x-ui/x-ui.sh
40+
cd x-ui
41+
mv xui-release x-ui
42+
mkdir bin
43+
cd bin
44+
wget https://github.com/XTLS/Xray-core/releases/latest/download/Xray-linux-64.zip
45+
unzip Xray-linux-64.zip
46+
rm -f Xray-linux-64.zip geoip.dat geosite.dat
47+
wget https://github.com/Loyalsoldier/v2ray-rules-dat/releases/latest/download/geoip.dat
48+
wget https://github.com/Loyalsoldier/v2ray-rules-dat/releases/latest/download/geosite.dat
49+
mv xray xray-linux-amd64
50+
cd ..
51+
cd ..
52+
- name: package
53+
run: tar -zcvf x-ui-linux-amd64.tar.gz x-ui
54+
- name: upload
55+
uses: actions/upload-release-asset@v1
56+
env:
57+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
58+
with:
59+
upload_url: ${{ needs.release.outputs.upload_url }}
60+
asset_path: x-ui-linux-amd64.tar.gz
61+
asset_name: x-ui-linux-amd64.tar.gz
62+
asset_content_type: application/gzip
63+
linuxarm64build:
64+
name: build x-ui arm64 version
65+
needs: release
66+
runs-on: ubuntu-20.04
67+
steps:
68+
- uses: actions/checkout@v3
69+
- name: Set up Go
70+
uses: actions/setup-go@v3
71+
with:
72+
go-version: 1.19
73+
- name: build linux arm64 version
74+
run: |
75+
sudo apt-get update
76+
sudo apt install gcc-aarch64-linux-gnu
77+
CGO_ENABLED=1 GOOS=linux GOARCH=arm64 CC=aarch64-linux-gnu-gcc go build -o xui-release -v main.go
78+
mkdir x-ui
79+
cp xui-release x-ui/xui-release
80+
cp x-ui.service x-ui/x-ui.service
81+
cp x-ui.sh x-ui/x-ui.sh
82+
cd x-ui
83+
mv xui-release x-ui
84+
mkdir bin
85+
cd bin
86+
wget https://github.com/XTLS/Xray-core/releases/latest/download/Xray-linux-arm64-v8a.zip
87+
unzip Xray-linux-arm64-v8a.zip
88+
rm -f Xray-linux-arm64-v8a.zip geoip.dat geosite.dat
89+
wget https://github.com/Loyalsoldier/v2ray-rules-dat/releases/latest/download/geoip.dat
90+
wget https://github.com/Loyalsoldier/v2ray-rules-dat/releases/latest/download/geosite.dat
91+
mv xray xray-linux-arm64
92+
cd ..
93+
cd ..
94+
- name: package
95+
run: tar -zcvf x-ui-linux-arm64.tar.gz x-ui
96+
- name: upload
97+
uses: actions/upload-release-asset@v1
98+
env:
99+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
100+
with:
101+
upload_url: ${{ needs.release.outputs.upload_url }}
102+
asset_path: x-ui-linux-arm64.tar.gz
103+
asset_name: x-ui-linux-arm64.tar.gz
104+
asset_content_type: application/gzip
105+
linuxs390xbuild:
106+
name: build x-ui s390x version
107+
needs: release
108+
runs-on: ubuntu-20.04
109+
steps:
110+
- uses: actions/checkout@v3
111+
- name: Set up Go
112+
uses: actions/setup-go@v3
113+
with:
114+
go-version: 1.19
115+
- name: build linux s390x version
116+
run: |
117+
sudo apt-get update
118+
sudo apt install gcc-s390x-linux-gnu -y
119+
CGO_ENABLED=1 GOOS=linux GOARCH=s390x CC=s390x-linux-gnu-gcc go build -o xui-release -v main.go
120+
mkdir x-ui
121+
cp xui-release x-ui/xui-release
122+
cp x-ui.service x-ui/x-ui.service
123+
cp x-ui.sh x-ui/x-ui.sh
124+
cd x-ui
125+
mv xui-release x-ui
126+
mkdir bin
127+
cd bin
128+
wget https://github.com/XTLS/Xray-core/releases/latest/download/Xray-linux-s390x.zip
129+
unzip Xray-linux-s390x.zip
130+
rm -f Xray-linux-s390x.zip geoip.dat geosite.dat
131+
wget https://github.com/Loyalsoldier/v2ray-rules-dat/releases/latest/download/geoip.dat
132+
wget https://github.com/Loyalsoldier/v2ray-rules-dat/releases/latest/download/geosite.dat
133+
mv xray xray-linux-s390x
134+
cd ..
135+
cd ..
136+
- name: package
137+
run: tar -zcvf x-ui-linux-s390x.tar.gz x-ui
138+
- name: upload
139+
uses: actions/upload-release-asset@v1
140+
env:
141+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
142+
with:
143+
upload_url: ${{ needs.release.outputs.upload_url }}
144+
asset_path: x-ui-linux-s390x.tar.gz
145+
asset_name: x-ui-linux-s390x.tar.gz
146+
asset_content_type: application/gzip

.gitignore

+13
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
.idea
2+
tmp
3+
bin/xray-darwin-arm64
4+
bin/config.json
5+
dist/
6+
x-ui-*.tar.gz
7+
/x-ui
8+
/release.sh
9+
.sync*
10+
main
11+
release/
12+
access.log
13+
.cache

0 commit comments

Comments
 (0)