-
Notifications
You must be signed in to change notification settings - Fork 273
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Ubuntu v3 ctest #523
Merged
Merged
Ubuntu v3 ctest #523
Changes from all commits
Commits
Show all changes
24 commits
Select commit
Hold shift + click to select a range
d167172
Ubuntu v3 ctest
KjellKod c9f58a2
Update ctest.yml for matrix run
KjellKod b2788fe
Windows test ctest.yml
KjellKod 0d3d962
Update ctest.yml
KjellKod 8594693
seperate fatal runner for Windows
KjellKod 4e4b5e1
Merge branch 'master' into Ubuntu-ctest-v3
KjellKod 2b1493b
Update buildAndRunTests.yml
KjellKod c7b9756
Update ctest.yml
KjellKod 3cda9b2
checkoutv4 with git tag and history depth
KjellKod ecf4386
Hack fail windows check CMakeLists.txt
KjellKod fa9c5bc
Debug log - sigh debugging by gitaction ctest.yml
KjellKod a7e4c6a
Update ctest.yml
KjellKod 65ac7eb
Path fix for windows ctest.yml
KjellKod f1a5339
Update ctest.yml
KjellKod 031758d
Update ctest.yml
KjellKod 1406143
Update ctest.yml
KjellKod 5bb0a3f
cmake configure with windows default shell
KjellKod 1d0ff6b
Update CMakeLists.txt
KjellKod e361bc7
fix log checking for seg fault
KjellKod 5eba781
Update ctest.yml
KjellKod ee9adc7
Update ctest.yml
KjellKod 2125cbe
Update ctest.yml
KjellKod 6312161
Update ctest.yml
KjellKod 76a3a89
Update ctest.yml
KjellKod File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,90 +1,87 @@ | ||
name: matrix (ubuntu, macos, windows) ctest | ||
|
||
name: matrix (ubuntu, macos, windows) ctes | ||
on: | ||
push: | ||
paths-ignore: | ||
- docs/** | ||
- '**.md' | ||
- '**.markdown' | ||
branches: [ master ] | ||
- "**.md" | ||
- "**.markdown" | ||
branches: | ||
- master | ||
pull_request: | ||
paths-ignore: | ||
- docs/** | ||
- '**.md' | ||
- '**.markdown' | ||
branches: [ master ] | ||
|
||
- "**.md" | ||
- "**.markdown" | ||
branches: | ||
- master | ||
env: | ||
# Customize the CMake build type here (Release, Debug, RelWithDebInfo, etc.) | ||
BUILD_TYPE: Release | ||
|
||
# https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#example-only-cancel-in-progress-jobs-or-runs-for-the-current-workflow | ||
# if you have to do a quick fix and the CI is already running your new commit will kill already | ||
# going processes before starting new ones | ||
concurrency: | ||
group: ${{ github.workflow }}-${{ github.ref }} | ||
cancel-in-progress: true | ||
|
||
jobs: | ||
build: | ||
strategy: | ||
matrix: | ||
os: [ubuntu-latest, macos-latest, windows-latest] | ||
os: | ||
- ubuntu-latest | ||
- macos-latest | ||
- windows-latest | ||
runs-on: ${{ matrix.os }} | ||
|
||
# The CMake configure and build commands are platform agnostic and should work equally | ||
# well on Windows or Mac. You can convert this to a matrix build if you need | ||
# cross-platform coverage. | ||
# See: https://docs.github.com/en/free-pro-team@latest/actions/learn-github-actions/managing-complex-workflows#using-a-build-matrix | ||
#runs-on: ubuntu-latest | ||
#runs-on: ${{ matrix.os }} | ||
|
||
steps: | ||
- uses: actions/checkout@v3 | ||
|
||
- name: Run Linux Build | ||
if: matrix.os == 'ubuntu-latest' | ||
run: echo "Ubuntu Latest" > release_ubuntu | ||
|
||
- name: Run Mac Build | ||
if: matrix.os == 'macos-latest' | ||
run: echo "MacOS Latest" > release_mac | ||
|
||
- name: Run Windows Build | ||
if: matrix.os == 'windows-latest' | ||
run: echo "Windows Latest" > release_windows | ||
# checkout full depth of history. | ||
- uses: actions/checkout@v4 | ||
with: | ||
fetch-depth: 0 | ||
|
||
- name: Create Build Environment | ||
# Some projects don't allow in-source building, so create a separate build directory | ||
# We'll use this as our working directory for all subsequent commands | ||
run: cmake -E make_directory ${{github.workspace}}/build | ||
|
||
- name: Configure CMake | ||
# Use a bash shell so we can use the same syntax for environment variable | ||
# access regardless of the host operating system | ||
shell: bash | ||
working-directory: ${{github.workspace}}/build | ||
# Note the current convention is to use the -S and -B options here to specify source | ||
# and build directories, but this is only available with CMake 3.13 and higher. | ||
# The CMake binaries on the Github Actions machines are (as of this writing) 3.12 | ||
run: cmake $GITHUB_WORKSPACE -DCMAKE_BUILD_TYPE=$BUILD_TYPE -DADD_G3LOG_UNIT_TEST=ON | ||
|
||
- name: Build | ||
working-directory: ${{github.workspace}}/build | ||
shell: bash | ||
# Execute the build. You can specify a specific target with "--target <NAME>" | ||
run: cmake --build . --config $BUILD_TYPE | ||
- name: Run Linux Build | ||
if: matrix.os == 'ubuntu-latest' | ||
run: echo "Ubuntu Latest" > release_ubuntu | ||
|
||
- name: Run Mac Build | ||
if: matrix.os == 'macos-latest' | ||
run: echo "MacOS Latest" > release_mac | ||
|
||
- name: Run Windows Build | ||
if: matrix.os == 'windows-latest' | ||
run: echo "Windows Latest" > release_windows | ||
|
||
- name: Create Build Environment | ||
run: cmake -E make_directory ${{github.workspace}}/build | ||
|
||
- name: Configure Linux/OSX CMake | ||
if: matrix.os == 'ubuntu-latest' || matrix.os == 'macos-latest' | ||
shell: bash | ||
working-directory: ${{github.workspace}}/build | ||
run: cmake $GITHUB_WORKSPACE -DCMAKE_BUILD_TYPE=$BUILD_TYPE | ||
-DADD_G3LOG_UNIT_TEST=ON | ||
|
||
- name: Test | ||
working-directory: ${{github.workspace}}/build | ||
shell: bash | ||
# Execute tests defined by the CMake configuration. | ||
# See https://cmake.org/cmake/help/latest/manual/ctest.1.html for more detail | ||
run: ctest -C $BUILD_TYP | ||
- name: Configure Windows CMake | ||
if: matrix.os == 'windows-latest' | ||
shell: cmd | ||
working-directory: ${{github.workspace}}/build | ||
run: ls && cmake -DCMAKE_BUILD_TYPE=$BUILD_TYPE -DADD_G3LOG_UNIT_TEST=ON .. | ||
|
||
- name: Build Linux/OSx | ||
working-directory: ${{github.workspace}}/build | ||
shell: bash | ||
run: cmake --build . --config $BUILD_TYPE | ||
|
||
- name: Fatal Exit Example | ||
working-directory: ${{github.workspace}}/build | ||
if: matrix.os == 'ubuntu-latest' || matrix.os == 'macos-latest' || matrix.os == 'windows-latest' | ||
shell: bash | ||
# hacky / crude and effective | ||
run: ./g3log-FATAL-sigsegv || true && echo -e "\n\n=======================\n\nverifying SIGSEGV existed in stackdump\n\n\n\n" && cat /tmp/g3log*FATAL*.log | grep "SIGSEGV" | ||
- name: Test | ||
working-directory: ${{github.workspace}}/build | ||
shell: bash | ||
run: ctest -C $BUILD_TYP | ||
|
||
- name: Fatal Exit Example Linux/OSX | ||
working-directory: ${{github.workspace}}/build | ||
if: matrix.os == 'ubuntu-latest' || matrix.os == 'macos-latest' | ||
shell: bash | ||
run: ./g3log-FATAL-sigsegv || true && echo -e | ||
"\n\nverifying SIGSEGV existed in stackdump\n\n\n\n" && cat /tmp/*3log*FATAL*.log && cat /tmp/g3log*FATAL*.log | grep "SIGSEGV" | ||
|
||
- name: Fatal Exit Example Windows | ||
working-directory: ${{github.workspace}}/build | ||
if: matrix.os == 'windows-latest' | ||
shell: bash | ||
run: ./Release/g3log-FATAL-sigsegv.exe || true && echo -e "\n\nverifying SIGSEGV - EXCEPTION_ACCESS_VIOLATION existed in | ||
stackdump\n\n\n\n" && cat *3log*FATAL*.log && cat *3log*FATAL*.log | grep "EXCEPTION_ACCESS_VIOLATION" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
git fetch-debth was needed or else the git history is not available and calculating the version in the cmake build won't work.