10
10
jobs :
11
11
12
12
build :
13
- name : Build
13
+ name : Build 🧬
14
14
runs-on : ubuntu-latest
15
15
steps :
16
16
17
- - name : Checkout
17
+ - name : Checkout code 🥏
18
18
uses : actions/checkout@v3
19
19
20
20
- name : Setup go1.22+
21
21
uses : actions/setup-go@v4
22
22
with :
23
23
go-version : ' >=1.22'
24
24
25
- - name : Build
25
+ - name : 🏗️ Make
26
26
run : |
27
27
# outputs firestack.aar and firestack-arm.aar; also see: "Obj" below
28
28
./make-aar nogo debug
29
29
shell : bash
30
30
31
- - name : Test
31
+ - name : 🧪 Test
32
32
if : success()
33
33
run : |
34
34
go env
35
35
# go test -v -race -bench=. -benchtime=100ms ./...
36
36
echo "::notice::success"
37
37
38
- - name : Vet
38
+ - name : 🧹 Vet
39
39
run : |
40
40
# github.com/actions/setup-go/issues/27
41
41
export PATH=${PATH}:`go env GOPATH`/bin
@@ -47,49 +47,51 @@ jobs:
47
47
nilaway ./...
48
48
shell : bash
49
49
50
- - name : Obj
50
+ - name : 💿 Obj
51
51
run : |
52
52
wget --tries=2 --waitretry=3 --no-dns-cache https://github.com/Zxilly/go-size-analyzer/releases/download/v1.0.8/go-size-analyzer_1.0.8_linux_amd64.deb -O gsa.deb
53
53
sudo dpkg -i gsa.deb
54
- # s/tun2socks.aar/firestack.aar; see: make-aar
55
- unzip firestack-arm .aar
54
+ # s/tun2socks* .aar/firestack* .aar; see: make-aar
55
+ unzip firestack-debug .aar
56
56
gsa jni/arm64-v8a/*.so -f text --verbose
57
57
shell : bash
58
58
59
59
# github.com/actions/upload-artifact
60
- - name : Upload artifacts
61
- uses : actions/upload-artifact@v3
60
+ - name : 🚀 Upload
61
+ uses : actions/upload-artifact@v4
62
62
if : success()
63
63
with :
64
- name : firestack-aar-${{ github.sha }}
65
- path : firestack.aar
66
- if-no-files-found : error
64
+ name : firestack-aar-${{ github.sha }} # must be unique
65
+ path : firestack*.aar # see: make-aar
66
+ retention-days : 52 # 0-90; 90 is max
67
+ if-no-files-found : error # error, warn (default), ignore
68
+ compression-level : 9 # 0-9; 9 is max
67
69
68
70
checker :
69
- name : Security checker
71
+ name : 🔐 Security checker
70
72
runs-on : ubuntu-latest
71
73
permissions :
72
74
security-events : write
73
75
id-token : write
74
76
env :
75
77
GO111MODULE : on
76
78
steps :
77
- - name : " Checkout code "
78
- uses : actions/checkout@v3
79
+ - name : 🥏 Checkout
80
+ uses : actions/checkout@v4
79
81
80
- - name : Gosec Scanner
82
+ - name : 🕵️ Gosec Scanner
81
83
uses : securego/gosec@master
82
84
with :
83
85
# we let the report trigger content trigger a failure using the GitHub Security features.
84
86
args : ' -no-fail -fmt sarif -out results.sarif ./...'
85
- - name : " Upload to code-scanning"
87
+ - name : 📡 Upload to code-scanning
86
88
uses : github/codeql-action/upload-sarif@v3
87
89
with :
88
90
sarif_file : results.sarif
89
91
90
92
# from: github.com/golangci/golangci-lint-action
91
93
golangci-lint :
92
- name : Linter
94
+ name : 🧭 Lint
93
95
runs-on : ubuntu-latest
94
96
permissions :
95
97
# Required: allow read access to the content for analysis.
@@ -99,14 +101,14 @@ jobs:
99
101
# Optional: Allow write access to checks to allow the action to annotate code in the PR.
100
102
checks : write
101
103
steps :
102
- - name : " Checkout code "
103
- uses : actions/checkout@v3
104
- - name : Set up Go
104
+ - name : 🥏 Checkout
105
+ uses : actions/checkout@v4
106
+ - name : 🐼 Set up Go
105
107
uses : actions/setup-go@v4
106
108
with :
107
109
go-version : ' >=1.22'
108
110
cache : false
109
- - name : Lint
111
+ - name : 🏅 Lint
110
112
uses : golangci/golangci-lint-action@v3.7.0
111
113
with :
112
114
args : --config=.golangci.yml --issues-exit-code=0
0 commit comments