Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
95 changes: 95 additions & 0 deletions .github/workflows/Alma_build.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,95 @@
name: alma build workflows

on:
push:
branches:
- 'develop'
paths:
- 'XEngine_Source/**'
- 'XEngine_Release/**'
- '.github/**'

permissions:
contents: read

jobs:
build:
runs-on: ${{ matrix.runner }}
container:
image: almalinux:${{ matrix.version }}
options: --platform ${{ matrix.platform }}
strategy:
matrix:
include:
- arch: amd64
runner: ubuntu-24.04
platform: linux/amd64
artifact: x86-64
version: 9
- arch: amd64
runner: ubuntu-24.04
platform: linux/amd64
artifact: x86-64
version: 10
- arch: arm64
runner: ubuntu-24.04-arm
platform: linux/arm64
artifact: Arm64
version: 9
- arch: arm64
runner: ubuntu-24.04-arm
platform: linux/arm64
artifact: Arm64
version: 10

steps:
- name: Checkout main repository code
uses: actions/checkout@v4

- name: Checkout dependency repository (xengine)
uses: actions/checkout@v4
with:
repository: libxengine/libxengine
path: libxengine

- name: sub module checkout (opensource)
uses: actions/checkout@v4
with:
repository: libxengine/XEngine_OPenSource
path: XEngine_Source/XEngine_DependLibrary

- name: Set TERM variable
run: echo "TERM=xterm" >> $GITHUB_ENV

- name: install system package
run: |
dnf update -y
dnf install gcc g++ make git jq unzip wget -y

- name: install xengine library
run: |
latest_tag=$(curl -s https://api.github.com/repos/libxengine/libxengine/releases/latest | jq -r .tag_name)
wget https://github.com/libxengine/libxengine/releases/download/$latest_tag/XEngine_RockyLinux_${{ matrix.version }}_${{ matrix.artifact }}.zip
unzip ./XEngine_RockyLinux_${{ matrix.version }}_${{ matrix.artifact }}.zip -d ./XEngine_RockyLinux_${{ matrix.version }}_${{ matrix.artifact }}
cd XEngine_RockyLinux_${{ matrix.version }}_${{ matrix.artifact }}

chmod 777 *
./XEngine_LINEnv.sh -i 3

- name: make
run: |
cd XEngine_Source
make RELEASE=1
make FLAGS=InstallAll
make FLAGS=CleanAll
cd ..
- name: test
run: |
cd XEngine_Release
./XEngine_ProxyServiceApp -t

- name: Upload folder as artifact
uses: actions/upload-artifact@v4
with:
name: XEngine_ProxyServiceApp-AlmaLinux_${{ matrix.version }}_${{ matrix.artifact }}
path: XEngine_Release/
102 changes: 102 additions & 0 deletions .github/workflows/Centos_build.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,102 @@
name: centos build workflows

on:
push:
branches:
- 'develop'
paths:
- 'XEngine_Source/**'
- 'XEngine_Release/**'
- '.github/**'

permissions:
contents: read

jobs:
build:
runs-on: ${{ matrix.runner }}
container:
image: quay.io/centos/centos:${{ matrix.stream }}
options: --platform ${{ matrix.platform }}
strategy:
matrix:
include:
- arch: amd64
runner: ubuntu-24.04
platform: linux/amd64
artifact: x86-64
version: 9
stream: stream9
- arch: amd64
runner: ubuntu-24.04
platform: linux/amd64
artifact: x86-64
version: 10
stream: stream10
- arch: arm64
runner: ubuntu-24.04-arm
platform: linux/arm64
artifact: Arm64
version: 9
stream: stream9
- arch: arm64
runner: ubuntu-24.04-arm
platform: linux/arm64
artifact: Arm64
version: 10
stream: stream10

steps:
- name: Checkout main repository code
uses: actions/checkout@v4

- name: Checkout dependency repository (xengine)
uses: actions/checkout@v4
with:
repository: libxengine/libxengine
path: libxengine

- name: sub module checkout (opensource)
uses: actions/checkout@v4
with:
repository: libxengine/XEngine_OPenSource
path: XEngine_Source/XEngine_DependLibrary

- name: install system package
run: |
dnf update -y
dnf install gcc g++ make git jq unzip wget -y

- name: Set TERM variable
run: echo "TERM=xterm" >> $GITHUB_ENV

- name: install xengine library
run: |
latest_tag=$(curl -s https://api.github.com/repos/libxengine/libxengine/releases/latest | jq -r .tag_name)
wget https://github.com/libxengine/libxengine/releases/download/$latest_tag/XEngine_RockyLinux_${{ matrix.version }}_${{ matrix.artifact }}.zip
unzip ./XEngine_RockyLinux_${{ matrix.version }}_${{ matrix.artifact }}.zip -d ./XEngine_RockyLinux_${{ matrix.version }}_${{ matrix.artifact }}
cd XEngine_RockyLinux_${{ matrix.version }}_${{ matrix.artifact }}

chmod 777 *
./XEngine_LINEnv.sh -i 3
- name: make
run: |
cd XEngine_Source
make
make FLAGS=InstallAll
make FLAGS=CleanAll

make RELEASE=1
make FLAGS=InstallAll
make FLAGS=CleanAll
- name: test
run: |
cd XEngine_Release
./XEngine_ProxyServiceApp -t

- name: Upload folder as artifact with CentOS
uses: actions/upload-artifact@v4
with:
name: XEngine_ProxyServiceApp-CentOS_${{ matrix.version }}_${{ matrix.artifact }}
path: XEngine_Release/
retention-days: 1
18 changes: 13 additions & 5 deletions .github/workflows/debian_build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ jobs:
build:
runs-on: ${{ matrix.runner }}
container:
image: debian:bookworm
image: debian:${{ matrix.name }}
options: --platform ${{ matrix.platform }}
strategy:
matrix:
Expand All @@ -25,6 +25,14 @@ jobs:
runner: ubuntu-24.04
platform: linux/amd64
artifact: x86-64
name: bookworm
version: 12
- arch: amd64
runner: ubuntu-24.04
platform: linux/amd64
artifact: x86-64
name: trixie
version: 13

steps:
- name: Checkout main repository code
Expand Down Expand Up @@ -55,9 +63,9 @@ jobs:
- name: install xengine library
run: |
latest_tag=$(curl -s https://api.github.com/repos/libxengine/libxengine/releases/latest | jq -r .tag_name)
wget https://github.com/libxengine/libxengine/releases/download/$latest_tag/XEngine_Debian_12_${{ matrix.artifact }}.zip
unzip ./XEngine_Debian_12_${{ matrix.artifact }}.zip -d ./XEngine_Debian_12_${{ matrix.artifact }}
cd XEngine_Debian_12_${{ matrix.artifact }}
wget https://github.com/libxengine/libxengine/releases/download/$latest_tag/XEngine_Debian_${{ matrix.version }}_${{ matrix.artifact }}.zip
unzip ./XEngine_Debian_${{ matrix.version }}_${{ matrix.artifact }}.zip -d ./XEngine_Debian_${{ matrix.version }}_${{ matrix.artifact }}
cd XEngine_Debian_${{ matrix.version }}_${{ matrix.artifact }}

chmod 777 *
./XEngine_LINEnv.sh -i 3
Expand All @@ -80,6 +88,6 @@ jobs:
- name: Upload folder as artifact
uses: actions/upload-artifact@v4
with:
name: XEngine_ProxyServiceApp-Debian_12_x86-64
name: XEngine_ProxyServiceApp-Debian_${{ matrix.version }}_x86-64
path: XEngine_Release/
retention-days: 1
12 changes: 6 additions & 6 deletions .github/workflows/macbuild.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,8 +14,8 @@ jobs:
strategy:
matrix:
include:
- os: macos-13
- os: macos-14
- os: macos-15-intel
- os: macos-15
runs-on: ${{ matrix.os }}

steps:
Expand Down Expand Up @@ -43,13 +43,13 @@ jobs:
run: /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

- name: Set up Dependency x86_64 Environment
if: matrix.os == 'macos-13'
if: matrix.os == 'macos-15-intel'
run: |
cd libxengine
chmod 777 *
./XEngine_LINEnv.sh -i 3
- name: Set up Dependency Arm64 Environment
if: matrix.os == 'macos-14'
if: matrix.os == 'macos-15'
run: |
latest_tag=$(git ls-remote --tags --sort="v:refname" https://github.com/libxengine/libxengine.git | awk '{print $2}' | sed 's/refs\/tags\///' | tail -n 1)
wget https://github.com/libxengine/libxengine/releases/download/$latest_tag/XEngine_Mac_Arm64.zip
Expand All @@ -76,14 +76,14 @@ jobs:
./XEngine_ProxyServiceApp -t

- name: Upload folder as artifact with mac x64
if: matrix.os == 'macos-13'
if: matrix.os == 'macos-15-intel'
uses: actions/upload-artifact@v4
with:
name: XEngine_ProxyServiceApp-Mac_x86_64
path: XEngine_Release/
retention-days: 1
- name: Upload folder as artifact with mac arm
if: matrix.os == 'macos-14'
if: matrix.os == 'macos-15'
uses: actions/upload-artifact@v4
with:
name: XEngine_ProxyServiceApp-Mac_Arm64
Expand Down
18 changes: 18 additions & 0 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -43,6 +43,24 @@ jobs:
skip_unpack: true
if_no_artifact_found: fail
path: ./XRelease/
- name: Download Alma
uses: dawidd6/action-download-artifact@v6
with:
workflow: Alma_build.yml
workflow_conclusion: success
check_artifacts: false
skip_unpack: true
if_no_artifact_found: fail
path: ./XRelease/
- name: Download Centos
uses: dawidd6/action-download-artifact@v6
with:
workflow: Centos_build.yml
workflow_conclusion: success
check_artifacts: false
skip_unpack: true
if_no_artifact_found: fail
path: ./XRelease/
- name: Download Rockylinux
uses: dawidd6/action-download-artifact@v6
with:
Expand Down
16 changes: 16 additions & 0 deletions CHANGELOG
Original file line number Diff line number Diff line change
@@ -1,3 +1,19 @@
XEngine_ProxyServer V1.15.0.1001

ci:增加了centos和almalinux和debian 13 系统支持
ci:更新了macos 系统版本
更新:第三方库
修改:使用了公用头替换登录协议
修改:启动参数不区分大小写
修复:某些时候读取配置内存溢出问题

ci:add centos and almalinux and debian 13 system support
ci:update macos system
update:depend library
modify:login protocol use protocol header instead
modify:does not case sensitive for start parameter
fixed:sometime memory leak when read configure file
======================================================================================
XEngine_ProxyServer V1.14.0.1001

增加:rocky linux 10 支持
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -56,7 +56,7 @@ int Proxy_NamedTest()
st_ProtocolHdr.byVersion = 0;
st_ProtocolHdr.unPacketSize = sizeof(XENGINE_PROTOCOL_USERAUTH);
st_ProtocolHdr.unOperatorType = ENUM_XENGINE_COMMUNICATION_PROTOCOL_TYPE_AUTH;
st_ProtocolHdr.unOperatorCode = XENGINE_COMMUNICATION_PROTOCOL_OPERATOR_CODE_FORWARD_LOGREQ;
st_ProtocolHdr.unOperatorCode = XENGINE_COMMUNICATION_PROTOCOL_OPERATOR_CODE_AUTH_REQLOGIN;

_tcsxcpy(st_UserAuth.tszUserName, "test");

Expand Down Expand Up @@ -210,7 +210,7 @@ int Proxy_AnonyTest()
st_ProtocolHdr.byVersion = 0;
st_ProtocolHdr.unPacketSize = sizeof(XENGINE_PROTOCOL_USERAUTH);
st_ProtocolHdr.unOperatorType = ENUM_XENGINE_COMMUNICATION_PROTOCOL_TYPE_AUTH;
st_ProtocolHdr.unOperatorCode = XENGINE_COMMUNICATION_PROTOCOL_OPERATOR_CODE_FORWARD_LOGREQ;
st_ProtocolHdr.unOperatorCode = XENGINE_COMMUNICATION_PROTOCOL_OPERATOR_CODE_AUTH_REQLOGIN;

_tcsxcpy(st_UserAuth.tszUserName, "test");

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -71,11 +71,11 @@
</ImportGroup>
<PropertyGroup Label="UserMacros" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<IncludePath>$(XEngine_Include);../../XEngine_Source/XEngine_Depend/XEngine_Module/jsoncpp;$(IncludePath)</IncludePath>
<IncludePath>$(XEngine_Include);../../XEngine_Source/XEngine_DependLibrary/XEngine_Module/jsoncpp;$(IncludePath)</IncludePath>
<LibraryPath>$(XEngine_Lib32);$(LibraryPath)</LibraryPath>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<IncludePath>$(XEngine_Include);../../XEngine_Source/XEngine_Depend/XEngine_Module/jsoncpp;$(IncludePath)</IncludePath>
<IncludePath>$(XEngine_Include);../../XEngine_Source/XEngine_DependLibrary/XEngine_Module/jsoncpp;$(IncludePath)</IncludePath>
<LibraryPath>$(XEngine_Lib64);$(LibraryPath)</LibraryPath>
</PropertyGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
Expand Down
1 change: 1 addition & 0 deletions XEngine_Release/XEngine_Config/XEngine_Version.json
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
{
"XVer": [
"1.14.0.1001 Build20251020",
"1.13.0.1001 Build20250519",
"1.12.0.1001 Build20250325",
"1.11.0.1001 Build20250121",
Expand Down
2 changes: 1 addition & 1 deletion XEngine_Source/XEngine_DependLibrary
Submodule XEngine_DependLibrary updated 27 files
+91 −0 .github/workflows/Alma_build.yml
+95 −0 .github/workflows/Centos_build.yml
+12 −4 .github/workflows/debianbuild.yml
+3 −4 .github/workflows/macbuild.yml
+21 −15 XEngine.sln
+0 −61 XEngine_Application/XEngine_APPModuleTest/Makefile
+0 −184 XEngine_Application/XEngine_APPModuleTest/XEngine_APPModuleHdr.h
+0 −93 XEngine_Application/XEngine_APPModuleTest/XEngine_APPModuleTest.cpp
+10 −6 XEngine_Example/AIApi_APPExample/AIApi_APPExample.cpp
+72 −0 XEngine_Example/Verification_APPExample/Verification_APPExample.cpp
+11 −20 XEngine_Example/Verification_APPExample/Verification_APPExample.vcxproj
+1 −6 XEngine_Example/Verification_APPExample/Verification_APPExample.vcxproj.filters
+0 −0 XEngine_Example/Verification_APPExample/Verification_APPExample.vcxproj.user
+14 −3 XEngine_Module/XEngine_AIApi/AIApi_Chat/AIApi_Chat.cpp
+1 −0 XEngine_Module/XEngine_AIApi/AIApi_Error.h
+7 −3 XEngine_Module/XEngine_Verification/Makefile
+502 −1 XEngine_Module/XEngine_Verification/Verification_Define.h
+20 −1 XEngine_Module/XEngine_Verification/Verification_Error.h
+1,403 −0 XEngine_Module/XEngine_Verification/Verification_XAuth/Verification_XAuthKey.cpp
+36 −0 XEngine_Module/XEngine_Verification/Verification_XAuth/Verification_XAuthKey.h
+639 −0 XEngine_Module/XEngine_Verification/Verification_XAuth/Verification_XAuthNet.cpp
+45 −0 XEngine_Module/XEngine_Verification/Verification_XAuth/Verification_XAuthNet.h
+21 −1 XEngine_Module/XEngine_Verification/XEngine_Verification.def
+5 −1 XEngine_Module/XEngine_Verification/XEngine_Verification.vcxproj
+24 −0 XEngine_Module/XEngine_Verification/XEngine_Verification.vcxproj.filters
+83 −0 XEngine_Module/XEngine_Verification/pch.cpp
+20 −1 XEngine_Module/XEngine_Verification/pch.h
Loading
Loading