mirror of
https://github.com/oneclickvirt/ecs.git
synced 2025-09-27 19:52:08 +08:00
Compare commits
16 Commits
Author | SHA1 | Date | |
---|---|---|---|
![]() |
b4e9e17925 | ||
![]() |
5de0e9734e | ||
![]() |
465c6031f8 | ||
![]() |
a421e12435 | ||
![]() |
766f978e3e | ||
![]() |
ae9d74c17c | ||
![]() |
958c0c4153 | ||
![]() |
9924bb1e72 | ||
![]() |
a6d28bd72a | ||
![]() |
955b887039 | ||
![]() |
ac3839a8eb | ||
![]() |
4d2c89dc96 | ||
![]() |
e773e4d0fd | ||
![]() |
d0814ee1da | ||
![]() |
c31c978fc8 | ||
![]() |
040a3db6e2 |
10
.github/workflows/main.yaml
vendored
10
.github/workflows/main.yaml
vendored
@@ -8,6 +8,9 @@ on:
|
||||
jobs:
|
||||
goreleaser:
|
||||
runs-on: ubuntu-latest
|
||||
container:
|
||||
# 1.20 是 Windows 7/8 Server 2008/2012 最后一个支持版本
|
||||
image: goreleaser/goreleaser-cross:v1.20
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v3
|
||||
@@ -15,7 +18,7 @@ jobs:
|
||||
fetch-depth: 0
|
||||
|
||||
- name: Set up Go
|
||||
uses: actions/setup-go@v3
|
||||
uses: actions/setup-go@v4
|
||||
with:
|
||||
go-version: 1.22.4
|
||||
|
||||
@@ -27,12 +30,11 @@ jobs:
|
||||
GITHUB_TOKEN: ${{ secrets.GHT }}
|
||||
|
||||
- name: Run GoReleaser
|
||||
uses: goreleaser/goreleaser-action@v4
|
||||
uses: goreleaser/goreleaser-action@v2
|
||||
with:
|
||||
distribution: goreleaser
|
||||
version: latest
|
||||
args: release --clean
|
||||
args: release
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GHT }}
|
||||
GOPRIVATE: github.com/oneclickvirt/security
|
||||
CGO_ENABLED: 0 # 禁用 CGO,强制静态链接
|
||||
|
78
.goreleaser.yaml
Normal file
78
.goreleaser.yaml
Normal file
@@ -0,0 +1,78 @@
|
||||
before:
|
||||
hooks:
|
||||
- go mod tidy -v
|
||||
builds:
|
||||
- id: universal
|
||||
env:
|
||||
- CGO_ENABLED=0
|
||||
ldflags:
|
||||
- -s -w -X main.version={{.Version}} -X main.arch={{.Arch}}
|
||||
goos:
|
||||
- linux
|
||||
- windows
|
||||
- freebsd
|
||||
goarch:
|
||||
- arm
|
||||
- arm64
|
||||
- 386
|
||||
- amd64
|
||||
- mips
|
||||
- mipsle
|
||||
- s390x
|
||||
- riscv64
|
||||
gomips:
|
||||
- softfloat
|
||||
ignore:
|
||||
- goos: windows
|
||||
goarch: arm
|
||||
main: ./
|
||||
binary: goecs
|
||||
- id: darwin-amd64
|
||||
env:
|
||||
- CGO_ENABLED=1
|
||||
- CC=o64-clang
|
||||
- CXX=o64-clang++
|
||||
ldflags:
|
||||
- -s -w -X main.version={{.Version}} -X main.arch={{.Arch}}
|
||||
goos:
|
||||
- darwin
|
||||
goarch:
|
||||
- amd64
|
||||
main: ./
|
||||
binary: goecs
|
||||
- id: darwin-arm64
|
||||
env:
|
||||
- CGO_ENABLED=1
|
||||
- CC=oa64-clang
|
||||
- CXX=oa64-clang++
|
||||
ldflags:
|
||||
- -s -w -X main.version={{.Version}} -X main.arch={{.Arch}}
|
||||
goos:
|
||||
- darwin
|
||||
goarch:
|
||||
- arm64
|
||||
main: ./
|
||||
binary: goecs
|
||||
universal_binaries:
|
||||
- name_template: "goecs"
|
||||
replace: false
|
||||
checksum:
|
||||
name_template: "checksums.txt"
|
||||
snapshot:
|
||||
name_template: "goecs"
|
||||
archives:
|
||||
- name_template: "goecs_{{ .Os }}_{{ .Arch }}"
|
||||
format: zip
|
||||
files:
|
||||
- none*
|
||||
changelog:
|
||||
sort: asc
|
||||
filters:
|
||||
exclude:
|
||||
- "^docs:"
|
||||
- "^test:"
|
||||
- "^chore"
|
||||
- Merge pull request
|
||||
- Merge branch
|
||||
- go mod tidy
|
||||
- New translations
|
12
README.md
12
README.md
@@ -12,11 +12,17 @@ Shell版本: https://github.com/spiritLHLS/ecs
|
||||
|
||||
## 适配系统和架构
|
||||
|
||||
已支持的架构: x86_64、i386、arm64
|
||||
编译支持的架构: amd64、arm、arm64、386、s390x、ppc64、ppc64le、riscv64
|
||||
|
||||
待支持的架构(有依赖包不支持该架构): s390x
|
||||
测试支持的架构: amd64、arm64
|
||||
|
||||
已支持的系统: Linux、Windows
|
||||
更多架构请自行测试
|
||||
|
||||
编译支持的系统: Linux、Windows、FreeBSD、OpenBSD
|
||||
|
||||
测试支持的系统: Linux、Windows
|
||||
|
||||
更多系统请自行测试
|
||||
|
||||
待支持的系统(存在硬件测试BUG未修复): MacOS
|
||||
|
||||
|
14
README_EN.md
14
README_EN.md
@@ -12,13 +12,19 @@ Shell version: https://github.com/spiritLHLS/ecs/blob/main/README_EN.md
|
||||
|
||||
## Supported Systems and Architectures
|
||||
|
||||
Supported architectures: x86_64, i386, arm64
|
||||
Architectures supported for compilation: amd64, arm, arm64, 386, s390x、ppc64、ppc64le、riscv64
|
||||
|
||||
Pending support (due to unsupported dependencies): s390x
|
||||
Tested architectures: amd64, arm64
|
||||
|
||||
Supported systems: Linux, Windows
|
||||
More architectures please test by yourself
|
||||
|
||||
Pending support (due to unresolved hardware testing bugs): MacOS
|
||||
Compilation support: Linux, Windows, FreeBSD, OpenBSD
|
||||
|
||||
Tested on: Linux, Windows
|
||||
|
||||
More systems to be tested
|
||||
|
||||
Systems to be supported (hardware testing bugs not yet fixed): MacOS
|
||||
|
||||
## Features
|
||||
|
||||
|
4
go.mod
4
go.mod
@@ -7,7 +7,7 @@ require (
|
||||
github.com/oneclickvirt/CommonMediaTests v0.0.4-20240704024502
|
||||
github.com/oneclickvirt/UnlockTests v0.0.11-20240704101006
|
||||
github.com/oneclickvirt/backtrace v0.0.4-20240702140722
|
||||
github.com/oneclickvirt/basics v0.0.5-20240702055351
|
||||
github.com/oneclickvirt/basics v0.0.5-20240704113233
|
||||
github.com/oneclickvirt/cputest v0.0.8-20240702070215
|
||||
github.com/oneclickvirt/defaultset v0.0.2-20240624082446
|
||||
github.com/oneclickvirt/disktest v0.0.4-20240704095213
|
||||
@@ -16,7 +16,7 @@ require (
|
||||
github.com/oneclickvirt/nt3 v0.0.3-20240702132013
|
||||
github.com/oneclickvirt/pingtest v0.0.4-20240703142340
|
||||
github.com/oneclickvirt/portchecker v0.0.1-20240624155429
|
||||
github.com/oneclickvirt/security v0.0.4-20240702055848
|
||||
github.com/oneclickvirt/security v0.0.4-20240704114145
|
||||
github.com/oneclickvirt/speedtest v0.0.7-20240704023701
|
||||
)
|
||||
|
||||
|
8
go.sum
8
go.sum
@@ -81,8 +81,8 @@ github.com/oneclickvirt/UnlockTests v0.0.11-20240704101006 h1:dJyfuPFwmueK7x0TC/
|
||||
github.com/oneclickvirt/UnlockTests v0.0.11-20240704101006/go.mod h1:HP3CvAS+AJWxxY+BVbxIOlvaQ87YOSge89vAMG52b5o=
|
||||
github.com/oneclickvirt/backtrace v0.0.4-20240702140722 h1:UJ/VWf+ZbhGarc9HcHMIyenpmX+b2LxkXu0hlLk3Gxs=
|
||||
github.com/oneclickvirt/backtrace v0.0.4-20240702140722/go.mod h1:zvsC7xY/WZqs5KL2JB967OVnuqjNbxu9bW6wXRLo5h8=
|
||||
github.com/oneclickvirt/basics v0.0.5-20240702055351 h1:Ez9iLNAr+A8AA3EdcDh1aB/XVSWjwSKjhgMUySkcSSY=
|
||||
github.com/oneclickvirt/basics v0.0.5-20240702055351/go.mod h1:CjcPkpy/ClTgrwB6YJtBi//lvseHAWYmsbTrOOm+zCs=
|
||||
github.com/oneclickvirt/basics v0.0.5-20240704113233 h1:Mu4c/LJKOOyEDRK9r6g6ehpwivvCaeqecg0IgTjYr04=
|
||||
github.com/oneclickvirt/basics v0.0.5-20240704113233/go.mod h1:P0+c+E5C+Ewur2Zs9N+U3aZECrFeigXsTTzZOv97ShM=
|
||||
github.com/oneclickvirt/cputest v0.0.8-20240702070215 h1:CcFpyVPlQkJ6vjFP17BRuJhh/afiJhOhZ0BW+TtfVDg=
|
||||
github.com/oneclickvirt/cputest v0.0.8-20240702070215/go.mod h1:MmaHN9+XMntI3rLycwj8Ne31fG18IfNoa8N2utDK1CY=
|
||||
github.com/oneclickvirt/defaultset v0.0.2-20240624082446 h1:5Pg3mK/u/vQvSz7anu0nxzrNdELi/AcDAU1mMsmPzyc=
|
||||
@@ -99,8 +99,8 @@ github.com/oneclickvirt/pingtest v0.0.4-20240703142340 h1:012W8Ly6ALISwIL5cYFM8O
|
||||
github.com/oneclickvirt/pingtest v0.0.4-20240703142340/go.mod h1:IU9RzZpS5tfP2kcFd2sw2fE80BgtiMUK8jp6qnN/0cY=
|
||||
github.com/oneclickvirt/portchecker v0.0.1-20240624155429 h1:+wapaOcFrg1iWJDhBKThDzppyIMY7hWxK7F5RBkZg4o=
|
||||
github.com/oneclickvirt/portchecker v0.0.1-20240624155429/go.mod h1:HQxSTrqM8/QFqHMTBZ7S8H9eEO5FkUXU1eb7ZX5Mk+k=
|
||||
github.com/oneclickvirt/security v0.0.4-20240702055848 h1:UCfjfoslcfKhCvJm37jQmhJ+O8d4lL+uvBJVcLAXc2s=
|
||||
github.com/oneclickvirt/security v0.0.4-20240702055848/go.mod h1:YKmO3FRWjhHYJ5rKqz+1H3hB6sCA4gioik7r8GMfyqo=
|
||||
github.com/oneclickvirt/security v0.0.4-20240704114145 h1:+3s2foEUS7Br/oYjEAi+VR0y46lE6jMvXHI1vnRX4aE=
|
||||
github.com/oneclickvirt/security v0.0.4-20240704114145/go.mod h1:ouSxY43DU46HYncAHCjyWbWqVtnP/YJouB/+TwKXnh8=
|
||||
github.com/oneclickvirt/speedtest v0.0.7-20240704023701 h1:F8ChZXf3U1/bUk+dCFt0Gc01LSPLhbBhCeHjkEJ6K88=
|
||||
github.com/oneclickvirt/speedtest v0.0.7-20240704023701/go.mod h1:zd5ZgIGslmtQLQehEfRjyumlvgDHTpCSMchKfKXoASI=
|
||||
github.com/onsi/ginkgo/v2 v2.19.0 h1:9Cnnf7UHo57Hy3k6/m5k3dRfGTMXGvxhHFvkDTCTpvA=
|
||||
|
18
goecs.go
18
goecs.go
@@ -37,7 +37,7 @@ import (
|
||||
)
|
||||
|
||||
var (
|
||||
ecsVersion = "v0.0.39"
|
||||
ecsVersion = "v0.0.47"
|
||||
menuMode bool
|
||||
onlyChinaTest bool
|
||||
input, choice string
|
||||
@@ -251,16 +251,28 @@ func main() {
|
||||
if !enabelUpload {
|
||||
securityTestStatus = false
|
||||
}
|
||||
startTime := time.Now()
|
||||
var (
|
||||
startTime time.Time
|
||||
wg1, wg2 sync.WaitGroup
|
||||
basicInfo, securityInfo, emailInfo, mediaInfo string
|
||||
output, tempOutput string
|
||||
)
|
||||
// 启动一个goroutine来等待信号
|
||||
// 启动一个goroutine来等待信号,内置计时器
|
||||
go func() {
|
||||
startTime = time.Now()
|
||||
// 等待信号
|
||||
<-sig
|
||||
endTime := time.Now()
|
||||
duration := endTime.Sub(startTime)
|
||||
minutes := int(duration.Minutes())
|
||||
seconds := int(duration.Seconds()) % 60
|
||||
currentTime := time.Now().Format("Mon Jan 2 15:04:05 MST 2006")
|
||||
output = utils.PrintAndCapture(func() {
|
||||
utils.PrintCenteredTitle("", width)
|
||||
fmt.Printf("Cost Time : %d min %d sec\n", minutes, seconds)
|
||||
fmt.Printf("Current Time : %s\n", currentTime)
|
||||
utils.PrintCenteredTitle("", width)
|
||||
}, tempOutput, output)
|
||||
utils.ProcessAndUpload(output, filePath, enabelUpload)
|
||||
os.Exit(1) // 使用非零状态码退出,表示意外退出
|
||||
}()
|
||||
|
11
goecs.sh
11
goecs.sh
@@ -80,7 +80,7 @@ goecs_check() {
|
||||
cdn_urls=("https://cdn0.spiritlhl.top/" "http://cdn3.spiritlhl.net/" "http://cdn1.spiritlhl.net/" "http://cdn2.spiritlhl.net/")
|
||||
check_cdn_file
|
||||
case $os in
|
||||
Linux)
|
||||
Linux|FreeBSD)
|
||||
case $arch in
|
||||
"x86_64" | "x86" | "amd64" | "x64")
|
||||
wget -O goecs.tar.gz "${cdn_success_url}https://github.com/oneclickvirt/ecs/releases/download/v${ECS_VERSION}/ecs_${ECS_VERSION}_linux_amd64.tar.gz"
|
||||
@@ -126,6 +126,8 @@ goecs_check() {
|
||||
rm -rf /usr/bin/goecs
|
||||
sleep 1
|
||||
cp goecs /usr/bin/goecs
|
||||
rm -rf README_EN.md
|
||||
rm -rf README.md
|
||||
echo "goecs version:"
|
||||
goecs -v || ./goecs -v
|
||||
}
|
||||
@@ -181,8 +183,7 @@ Check_SysBench() {
|
||||
_yellow "Install sysbench successfully!"
|
||||
else
|
||||
_red "SysBench Moudle install Failure! Try Restart Bench or Manually install it! (/usr/bin/sysbench)"
|
||||
_blue "Will try to test with geekbench5 instead later on"
|
||||
test_cpu_type="gb5"
|
||||
_blue "Will try to test with geekbench5 instead later."
|
||||
fi
|
||||
sleep 3
|
||||
}
|
||||
@@ -274,7 +275,7 @@ env_check() {
|
||||
cdn_urls=("https://cdn0.spiritlhl.top/" "http://cdn3.spiritlhl.net/" "http://cdn1.spiritlhl.net/" "http://cdn2.spiritlhl.net/")
|
||||
check_cdn_file
|
||||
_green "Update system manager."
|
||||
${PACKAGE_UPDATE[int]} command 2>/dev/null
|
||||
${PACKAGE_UPDATE[int]} 2>/dev/null
|
||||
if ! command -v sudo >/dev/null 2>&1; then
|
||||
_green "Installing sudo"
|
||||
${PACKAGE_INSTALL[int]} sudo
|
||||
@@ -313,6 +314,7 @@ env_check() {
|
||||
fi
|
||||
chmod +x /tmp/sysbench.zip
|
||||
unzip /tmp/sysbench.zip -d /tmp
|
||||
Check_SysBench
|
||||
fi
|
||||
fi
|
||||
if ! command -v geekbench >/dev/null 2>&1; then
|
||||
@@ -332,6 +334,7 @@ env_check() {
|
||||
curl -L "${cdn_success_url}https://raw.githubusercontent.com/oneclickvirt/speedtest/main/dspt.sh" -o dspt.sh && chmod +x dspt.sh
|
||||
bash dspt.sh
|
||||
rm -rf dspt.sh
|
||||
rm -rf speedtest.tar.gz
|
||||
_blue "if you want to use golang origin speedtest, you can use"
|
||||
echo "rm -rf /usr/bin/speedtest"
|
||||
echo "rm -rf /usr/bin/speedtest-go"
|
||||
|
@@ -8,7 +8,6 @@ git commit -am"update"
|
||||
|
||||
:push
|
||||
cd %repo_path%
|
||||
|
||||
git push -f origin master
|
||||
if errorlevel 1 (
|
||||
echo Push failed. Retrying in 3 seconds...
|
||||
|
Reference in New Issue
Block a user