Skip to content

Merge pull request #83 from taotieren/update-cmake #153

Merge pull request #83 from taotieren/update-cmake

Merge pull request #83 from taotieren/update-cmake #153

Workflow file for this run

name: Windows
on: [push, pull_request]
env:
PlatformToolset: v142
# build platform, i.e. x86, x64, Any CPU. This setting is optional.
Platform: x64
# build Configuration, i.e. Debug, Release, etc.
Configuration: Release
jobs:
build:
# For a list of available runner types, refer to
# https://help.github.com/en/actions/reference/workflow-syntax-for-github-actions#jobsjob_idruns-on
runs-on: windows-latest
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Configure GIT
working-directory: ${{env.GITHUB_WORKSPACE}}
shell: cmd
run: |
git config --local core.autocrlf true
git config --local advice.detachedHead false
git submodule update --init --recursive
- name: Setup python
uses: actions/setup-python@v5
with:
python-version: '3.x' # Version range or exact version of a Python version to use, using SemVer's version range syntax
architecture: 'x64' # optional x64 or x86. Defaults to x64 if not specified
- name: Create new environment variables
working-directory: ${{env.GITHUB_WORKSPACE}}
shell: cmd
run: |
python -c "import os; print('GIT_REPOSITORY=' + os.path.split(os.getenv('GITHUB_REPOSITORY'))[1]);" >> %GITHUB_ENV%
python -c "import os; print('GIT_BRANCH=' + os.path.split(os.getenv('GITHUB_REF'))[1]);" >> %GITHUB_ENV%
echo GITHUB_WORKFLOW=%GITHUB_WORKFLOW%>> %GITHUB_ENV%
- name: List environment variables for debugging
working-directory: ${{env.GITHUB_WORKSPACE}}
shell: cmd
run: |
set
- name: Deploy 'tests not available' badge before building
#uses: exuanbo/actions-deploy-gist@v1
uses: end2endzone/actions-deploy-gist@main
if: github.event_name != 'pull_request'
with:
token: ${{ secrets.BADGES }}
gist_id: 58cf6c72c08e706335337d5ef9ca48e8
gist_file_name: ${{env.GIT_REPOSITORY}}.${{env.GIT_BRANCH}}.${{env.GITHUB_WORKFLOW}}.json
file_path: ./ci/github/tests_not_available.badge.json
- name: Install Google Test
working-directory: ${{env.GITHUB_WORKSPACE}}
shell: cmd
run: call ci\github\install_googletest.bat
- name: Install RapidAssist
working-directory: ${{env.GITHUB_WORKSPACE}}
shell: cmd
run: call ci\github\install_rapidassist.bat
- name: Build bin2cpp
working-directory: ${{env.GITHUB_WORKSPACE}}
shell: cmd
run: call ci\github\install_bin2cpp.bat
- name: Run unit tests
id: unit_tests
working-directory: ${{env.GITHUB_WORKSPACE}}
shell: cmd
run: call ci\github\test_script.bat
- name: Search unit test report file
if: success() || steps.unit_tests.conclusion == 'failure'
working-directory: ${{env.GITHUB_WORKSPACE}}
shell: cmd
run: |
for /f "tokens=* usebackq" %%f in (`dir/b/s build\bin\${{env.configuration}}\bin2cpp_unittest.*.xml`) do (set UNITTEST_REPORT_PATH=%%f)
echo UNITTEST_REPORT_PATH=%UNITTEST_REPORT_PATH%
echo UNITTEST_REPORT_PATH=%UNITTEST_REPORT_PATH%>> %GITHUB_ENV%
- name: Create test badge
if: success() || steps.unit_tests.conclusion == 'failure'
working-directory: ${{env.GITHUB_WORKSPACE}}
run: python ci\github\maketestbadge.py ${{env.UNITTEST_REPORT_PATH}}
- name: Deploy test badge to gist
if: success() || steps.unit_tests.conclusion == 'failure'
#uses: exuanbo/actions-deploy-gist@v1
uses: end2endzone/actions-deploy-gist@main
with:
token: ${{ secrets.BADGES }}
gist_id: 58cf6c72c08e706335337d5ef9ca48e8
gist_file_name: ${{env.GIT_REPOSITORY}}.${{env.GIT_BRANCH}}.${{env.GITHUB_WORKFLOW}}.json
file_path: ./badge.json
- name: Archive test results
if: success() || steps.unit_tests.conclusion == 'failure'
uses: actions/[email protected]
with:
name: unit-test-results
path: build\bin\${{env.Configuration}}\bin2cpp_unittest.*.xml
- name: Get bin2cpp version
working-directory: ${{env.GITHUB_WORKSPACE}}
shell: cmd
run: |
set /p BIN2CPP_VERSION=<"build\version"
echo BIN2CPP_VERSION=%BIN2CPP_VERSION%
echo BIN2CPP_VERSION=%BIN2CPP_VERSION%>> %GITHUB_ENV%
- name: Archive installation packages
if: success() || steps.unit_tests.conclusion == 'failure'
uses: actions/[email protected]
with:
name: Installation packages.
path: build/bin2cpp-${{env.BIN2CPP_VERSION}}-*.*