1+ name : centos build workflows
2+
3+ on :
4+ push :
5+ branches :
6+ - ' master'
7+ paths :
8+ - ' XEngine_Source/**'
9+ - ' XEngine_Release/**'
10+ - ' .github/**'
11+
12+ permissions :
13+ contents : read
14+
15+ jobs :
16+ build :
17+ runs-on : ${{ matrix.runner }}
18+ container :
19+ image : centos:${{ matrix.stream }}
20+ options : --platform ${{ matrix.platform }}
21+ strategy :
22+ matrix :
23+ include :
24+ - arch : amd64
25+ runner : ubuntu-24.04
26+ platform : linux/amd64
27+ artifact : x86-64
28+ version : 9
29+ stream : stream9
30+ - arch : amd64
31+ runner : ubuntu-24.04
32+ platform : linux/amd64
33+ artifact : x86-64
34+ version : 10
35+ stream : stream10
36+ - arch : arm64
37+ runner : ubuntu-24.04-arm
38+ platform : linux/arm64
39+ artifact : Arm64
40+ version : 9
41+ stream : stream9
42+ - arch : arm64
43+ runner : ubuntu-24.04-arm
44+ platform : linux/arm64
45+ artifact : Arm64
46+ version : 10
47+ stream : stream10
48+
49+ steps :
50+ - name : Checkout main repository code
51+ uses : actions/checkout@v4
52+
53+ - name : Checkout dependency repository (xengine)
54+ uses : actions/checkout@v4
55+ with :
56+ repository : libxengine/libxengine
57+ path : libxengine
58+
59+ - name : sub module checkout (opensource)
60+ uses : actions/checkout@v4
61+ with :
62+ repository : libxengine/XEngine_OPenSource
63+ path : XEngine_Source/XEngine_DependLibrary
64+
65+ - name : install system package
66+ run : |
67+ dnf update -y
68+ dnf install gcc g++ make git jq unzip wget -y
69+
70+ - name : Set TERM variable
71+ run : echo "TERM=xterm" >> $GITHUB_ENV
72+
73+ - name : install xengine library
74+ run : |
75+ latest_tag=$(curl -s https://api.github.com/repos/libxengine/libxengine/releases/latest | jq -r .tag_name)
76+ wget https://github.com/libxengine/libxengine/releases/download/$latest_tag/XEngine_RockyLinux_${{ matrix.version }}_${{ matrix.artifact }}.zip
77+ unzip ./XEngine_RockyLinux_${{ matrix.version }}_${{ matrix.artifact }}.zip -d ./XEngine_RockyLinux_${{ matrix.version }}_${{ matrix.artifact }}
78+ cd XEngine_RockyLinux_${{ matrix.version }}_${{ matrix.artifact }}
79+
80+ chmod 777 *
81+ ./XEngine_LINEnv.sh -i 3
82+ - name : make
83+ run : |
84+ cd XEngine_Source
85+ make
86+ make FLAGS=InstallAll
87+ make FLAGS=CleanAll
88+
89+ make RELEASE=1
90+ make FLAGS=InstallAll
91+ make FLAGS=CleanAll
92+ cd ..
93+ - name : test
94+ run : |
95+ cd XEngine_Release
96+ ./XEngine_CenterApp -t
97+ ./XEngine_Http2App -t
98+ ./XEngine_HttpApp -t
99+ ./XEngine_SimpleApp -t
100+ ./XEngine_WebSocketApp -t
0 commit comments