From e12d0f54bbde068c81dd038f97b246ff5b346c62 Mon Sep 17 00:00:00 2001 From: msojocs Date: Sun, 27 Aug 2023 08:46:23 +0800 Subject: [PATCH 1/4] ci: cpp --- .github/workflows/release.yml | 19 +++-- CMakeLists.txt | 34 ++++----- node/.github/workflows/release.yml | 113 +++++++++++++++++++++++++++++ 3 files changed, 143 insertions(+), 23 deletions(-) create mode 100644 node/.github/workflows/release.yml diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index eacf3f0..ef19f84 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -50,14 +50,20 @@ jobs: echo "tag result: $tag - $name" echo "::set-output name=tag::$tag" echo "::set-output name=name::$name" + + - name: Configure the project + uses: threeal/cmake-action@v1.3.0 + + - name: Build the project + run: cmake --build build - - name: Compress + - name: Upload prepare run: | ls -l + echo "------------------------" + ls -l build mkdir -p tmp/build - sudo rm -rf test - tar -zcf compiler.tar.gz * - mv compiler.tar.gz tmp/build + mv build/{wcc,wcsc} tmp/build cd tmp/build ls -l @@ -99,7 +105,7 @@ jobs: run: | wget -q https://github.com/TheAssassin/pyuploadtool/releases/download/continuous/pyuploadtool-x86_64.AppImage chmod +x pyuploadtool-x86_64.AppImage - ./pyuploadtool-x86_64.AppImage **build/*.tar.gz + ./pyuploadtool-x86_64.AppImage tmp/build/wcc tmp/build/wcsc - name: Release uses: softprops/action-gh-release@v1 @@ -110,4 +116,5 @@ jobs: name: ${{ steps.tag.outputs.name }} tag_name: ${{ steps.tag.outputs.tag }} files: | - **build/*.tar.gz + tmp/build/wcc + tmp/build/wcsc diff --git a/CMakeLists.txt b/CMakeLists.txt index 76be89e..904b154 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -72,26 +72,26 @@ add_executable(wcsc src/utils/string_utils.cpp src/utils/file.cpp ) -add_executable( - resolve_path - test/resolve_path.cpp - src/wxml/dom_lib/common.cpp - ) +# add_executable( +# resolve_path +# test/resolve_path.cpp +# src/wxml/dom_lib/common.cpp +# ) add_executable(test1 test/test.cpp ) -add_executable( - transit_table - test/transit_table.cpp - src/wxml/expr_lib/base.cpp - src/wxml/expr_lib/bnf.cpp - src/wxml/expr_lib/common.cpp - src/wxml/expr_lib/expr_syntax_tree.cpp - src/wxml/expr_lib/parser.cpp - src/wxml/expr_lib/token.cpp - src/wxml/expr_lib/tokenizer.cpp - src/wxml/expr_lib/transit_table.cpp - ) +# add_executable( +# transit_table +# test/transit_table.cpp +# src/wxml/expr_lib/base.cpp +# src/wxml/expr_lib/bnf.cpp +# src/wxml/expr_lib/common.cpp +# src/wxml/expr_lib/expr_syntax_tree.cpp +# src/wxml/expr_lib/parser.cpp +# src/wxml/expr_lib/token.cpp +# src/wxml/expr_lib/tokenizer.cpp +# src/wxml/expr_lib/transit_table.cpp +# ) add_test(transit_table_test $ diff --git a/node/.github/workflows/release.yml b/node/.github/workflows/release.yml new file mode 100644 index 0000000..eacf3f0 --- /dev/null +++ b/node/.github/workflows/release.yml @@ -0,0 +1,113 @@ +# This workflow will do a clean installation of node dependencies, cache/restore them, build the source code and run tests across different versions of node +# For more information see: https://help.github.com/actions/language-and-framework-guides/using-nodejs-with-github-actions + +name: Build Packages + +on: + release: + types: [published] + push: + tags: + - v* + branches: [ master, dev, 45-snap-version] + pull_request: + branches: [ master ] + # # Allows you to run this workflow manually from the Actions tab + # workflow_dispatch: + +jobs: + build: + name: Build Base Packages + runs-on: ubuntu-latest + + strategy: + matrix: + node-version: [16.x] + ARCH: ['x86_64'] + # See supported Node.js release schedule at https://nodejs.org/en/about/releases/ + + steps: + - uses: actions/checkout@v2 + with: + submodules: 'recursive' + - name: Use Node.js ${{ matrix.node-version }} + uses: actions/setup-node@v2 + + - name: Prepare + run: | + cd compiler && npm install + echo "$UID, $GID" + + - name: Generate TAG + id: Tag + run: | + tag='continuous' + name='Continuous Build' + if [ 'true' == ${{ startsWith(github.ref, 'refs/tags/') }} ];then + tag='${{ github.ref_name }}' + name='${{ github.ref_name }}' + fi + echo "tag result: $tag - $name" + echo "::set-output name=tag::$tag" + echo "::set-output name=name::$name" + + - name: Compress + run: | + ls -l + mkdir -p tmp/build + sudo rm -rf test + tar -zcf compiler.tar.gz * + mv compiler.tar.gz tmp/build + cd tmp/build + ls -l + + - name: Upload artifact + uses: actions/upload-artifact@v2.3.1 + with: + # Artifact name + name: wechat-devtools-${{ matrix.ARCH }}.build + path: tmp/build + + upload: + name: Create release and upload artifacts + needs: + - build + runs-on: ubuntu-latest + steps: + - name: Download artifacts + uses: actions/download-artifact@v2 + - name: Inspect directory after downloading artifacts + run: ls -alFR + + - name: Generate TAG + id: Tag + run: | + tag='continuous' + name='Continuous Build' + if [ 'true' == ${{ startsWith(github.ref, 'refs/tags/') }} ];then + tag='${{ github.ref_name }}' + name='${{ github.ref_name }}' + fi + echo "tag result: $tag - $name" + echo "::set-output name=tag::$tag" + echo "::set-output name=name::$name" + + - name: Create release and upload artifacts + if: startsWith(github.ref, 'refs/heads/') + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + run: | + wget -q https://github.com/TheAssassin/pyuploadtool/releases/download/continuous/pyuploadtool-x86_64.AppImage + chmod +x pyuploadtool-x86_64.AppImage + ./pyuploadtool-x86_64.AppImage **build/*.tar.gz + + - name: Release + uses: softprops/action-gh-release@v1 + if: startsWith(github.ref, 'refs/tags/') + with: + # note you'll typically need to create a personal access token + # with permissions to create releases in the other repo + name: ${{ steps.tag.outputs.name }} + tag_name: ${{ steps.tag.outputs.tag }} + files: | + **build/*.tar.gz From 0850b856a34427edeeae4871293f451be6fa94eb Mon Sep 17 00:00:00 2001 From: msojocs Date: Sun, 27 Aug 2023 08:46:51 +0800 Subject: [PATCH 2/4] ci: enable --- .github/workflows/release.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index ef19f84..ab3f6a4 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -9,7 +9,7 @@ on: push: tags: - v* - branches: [ master, dev, 45-snap-version] + branches: [ master, dev, ci] pull_request: branches: [ master ] # # Allows you to run this workflow manually from the Actions tab From 4efce80dac0c2a14f534313690cd13886e040264 Mon Sep 17 00:00:00 2001 From: msojocs Date: Sun, 27 Aug 2023 08:49:56 +0800 Subject: [PATCH 3/4] ci: fix fuse --- .github/workflows/release.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index ab3f6a4..35adc00 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -103,6 +103,7 @@ jobs: env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} run: | + sudo apt install -y fuse wget -q https://github.com/TheAssassin/pyuploadtool/releases/download/continuous/pyuploadtool-x86_64.AppImage chmod +x pyuploadtool-x86_64.AppImage ./pyuploadtool-x86_64.AppImage tmp/build/wcc tmp/build/wcsc From a8df24641be459bfdf90d2f4efde11663dc7bed5 Mon Sep 17 00:00:00 2001 From: msojocs Date: Sun, 27 Aug 2023 08:58:10 +0800 Subject: [PATCH 4/4] ci: fix upload dir --- .github/workflows/release.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 35adc00..8a6eeaa 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -106,7 +106,7 @@ jobs: sudo apt install -y fuse wget -q https://github.com/TheAssassin/pyuploadtool/releases/download/continuous/pyuploadtool-x86_64.AppImage chmod +x pyuploadtool-x86_64.AppImage - ./pyuploadtool-x86_64.AppImage tmp/build/wcc tmp/build/wcsc + ./pyuploadtool-x86_64.AppImage **build/wcc **build/wcsc - name: Release uses: softprops/action-gh-release@v1 @@ -117,5 +117,5 @@ jobs: name: ${{ steps.tag.outputs.name }} tag_name: ${{ steps.tag.outputs.tag }} files: | - tmp/build/wcc - tmp/build/wcsc + **build/wcc + **build/wcsc