From aaabce27a09899c86a97018fb7cfc9db3488c096 Mon Sep 17 00:00:00 2001 From: XMuli Date: Sun, 12 Mar 2023 15:49:12 +0800 Subject: [PATCH] CI: add Windows x64 and Linux's *.deb build --- .github/workflows/LinuxDeb.yml | 132 +++++++++++++++++++++++++++++++++ .github/workflows/Windows.yml | 8 +- 2 files changed, 136 insertions(+), 4 deletions(-) create mode 100644 .github/workflows/LinuxDeb.yml diff --git a/.github/workflows/LinuxDeb.yml b/.github/workflows/LinuxDeb.yml new file mode 100644 index 0000000..afc8be9 --- /dev/null +++ b/.github/workflows/LinuxDeb.yml @@ -0,0 +1,132 @@ +name: LinuxDeb +on: + push: + paths-ignore: + # - '**' + - 'README.md' + pull_request: + paths-ignore: + - 'README.md' +jobs: + build: + name: Build + # 运行平台, ubuntu-latest 目前是 Ubuntu 20.04 + # 参考文档 https://github.com/actions/virtual-environments/blob/main/images/linux/Ubuntu2004-Readme.md + runs-on: ${{ matrix.os }} + strategy: + matrix: # 矩阵配置 + qt_ver: [5.15.2] # 参考: https://mirrors.cloud.tencent.com/qt/online/qtsdkrepository/linux_x64/desktop/qt5_5152 + qt_target: [desktop] + qt_arch: [gcc_64] + arch: [amd64] # arm64 + os: [ubuntu-20.04] + env: + targetName: Flipped + targetLowerName: flipped + targetOS: debian + + steps: + - name: Install Qt + uses: jurplel/install-qt-action@v3 + with: + version: ${{ matrix.qt_ver }} + arch: ${{ matrix.qt_arch }} + set-env: true + + - uses: actions/checkout@v2 + with: + fetch-depth: 1 + + - name: pull 3rdparty code + run: | + cd ${{github.workspace}} + git submodule init + git submodule update + + - name: NameVersion + id: NameVersion + if: startsWith(github.event.ref, 'refs/tags/') + shell: pwsh + run: | + $systemInfo="${{ env.targetOS }}-${{ matrix.arch }}-x64" + $productVersion="${{ github.ref }}".substring("refs/tags/v".length) + # $productName="${{ env.targetName }}-$productVersion-beta-$systemInfo" + $productDebName="${{ env.targetLowerName }}-$productVersion" + + echo "systemInfo=$systemInfo" | Out-File -FilePath $env:GITHUB_ENV -Encoding utf8 -Append + echo "productVersion=$productVersion" | Out-File -FilePath $env:GITHUB_ENV -Encoding utf8 -Append + # echo "productName=$productName" | Out-File -FilePath $env:GITHUB_ENV -Encoding utf8 -Append + echo "productDebName=$productDebName" | Out-File -FilePath $env:GITHUB_ENV -Encoding utf8 -Append + + # 安装一些包 # libqt5*-dev + # sudo apt install wget tar dh-make debmake lintian cmake qtbase5-dev qt5-default libqt5x11extras5-dev libqt5svg5-dev libqt5*-dev + - name: AptInstallTool + id: AptInstallTool + if: startsWith(github.event.ref, 'refs/tags/') + shell: bash + run: | + sudo apt clean + sudo apt update + sudo apt install wget tar dh-make debmake lintian cmake devscripts qtbase5-dev qt5-default libqt5*-dev + + # tag 打包 .deb,无动态库 + - name: DebPackage + id: DebPackage + if: startsWith(github.event.ref, 'refs/tags/') + shell: bash + run: | + echo "-------------- debug 0 --------------" + pwd + + echo $PATH + + cd .. + cp -r ${{ env.targetName }} ${{ env.productDebName }} + tar -cvzf ${{ env.productDebName }}.tar.gz ${{ env.productDebName }} + + echo "-------------- debug 1 --------------" + ls -al + + cat >> ~/.bashrc <