Skip to content

Commit

Permalink
Merge pull request #59 from simpsont-oci/improve_ci_debugging_output
Browse files Browse the repository at this point in the history
Improve CI Debugging Output
  • Loading branch information
simpsont-oci authored Nov 23, 2022
2 parents 90b7128 + 582ed4e commit be35d70
Show file tree
Hide file tree
Showing 6 changed files with 51 additions and 23 deletions.
53 changes: 34 additions & 19 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -27,28 +27,28 @@ jobs:
- master
- latest-release
m:
- {os: ubuntu-latest, dds_security: 1}
- {os: ubuntu-latest, dds_security: 0}
- {os: macos-latest, dds_security: 1}
- {os: macos-latest, dds_security: 0}
- {os: ubuntu-20.04, dds_security: 1}
- {os: ubuntu-20.04, dds_security: 0}
- {os: macos-11, dds_security: 1}
- {os: macos-11, dds_security: 0}
- {os: windows-2019, dds_security: 1}
- {os: windows-2019, dds_security: 0}
include:
- node_version: 8
opendds_branch: latest-release
m: {os: ubuntu-latest, security: 0}
m: {os: ubuntu-20.04, security: 0}
- node_version: 8
opendds_branch: latest-release
m: {os: windows-2019, security: 0}
- node_version: 10
opendds_branch: latest-release
m: {os: ubuntu-latest, security: 1}
m: {os: ubuntu-20.04, security: 1}
- node_version: 10
opendds_branch: latest-release
m: {os: windows-2019, security: 1}
- node_version: 12
opendds_branch: latest-release
m: {os: ubuntu-latest, security: 1}
m: {os: ubuntu-20.04, security: 1}
- node_version: 12
opendds_branch: latest-release
m: {os: windows-2019, security: 1}
Expand Down Expand Up @@ -81,12 +81,12 @@ jobs:
with:
node-version: ${{ matrix.node_version }}
- name: 'Install ssl and xerces (ubuntu)'
if: ${{ matrix.m.dds_security == 1 && matrix.m.os == 'ubuntu-latest' }}
if: ${{ matrix.m.dds_security == 1 && matrix.m.os == 'ubuntu-20.04' }}
run: |-
sudo apt-get update
sudo apt-get -y install libssl-dev libxerces-c-dev
- name: 'Install xerces (macos)'
if: ${{ matrix.m.dds_security == 1 && matrix.m.os == 'macos-latest' }}
if: ${{ matrix.m.dds_security == 1 && matrix.m.os == 'macos-11' }}
run: |
brew install xerces-c
- name: 'Install openssl and xerces (windows)'
Expand All @@ -101,12 +101,12 @@ jobs:
uses: ilammy/msvc-dev-cmd@v1
- name: 'Set Up Problem Matcher (windows)'
if: ${{ matrix.m.os == 'windows-2019' }}
uses: ammaraskar/msvc-problem-matcher@0.1
uses: ammaraskar/msvc-problem-matcher@0.2.0
- name: 'Set Up Problem Matcher (ubuntu / macos)'
if: ${{ matrix.m.os == 'ubuntu-latest' || matrix.m.os == 'macos-latest' }}
uses: ammaraskar/gcc-problem-matcher@0.1
if: ${{ matrix.m.os == 'ubuntu-20.04' || matrix.m.os == 'macos-11' }}
uses: ammaraskar/gcc-problem-matcher@0.2.0
- name: 'Set environment variables (ubuntu / macos)'
if: ${{ matrix.m.os == 'ubuntu-latest' || matrix.m.os == 'macos-latest' }}
if: ${{ matrix.m.os == 'ubuntu-20.04' || matrix.m.os == 'macos-11' }}
shell: bash
run: |-
echo "ACE_ROOT=$GITHUB_WORKSPACE/ACE_TAO/ACE" >> $GITHUB_ENV
Expand All @@ -115,15 +115,15 @@ jobs:
echo "MPC_ROOT=$GITHUB_WORKSPACE/MPC" >> $GITHUB_ENV
echo "npm_config_devdir=$GITHUB_WORKSPACE/opendds-node-gyp-devdir" >> $GITHUB_ENV
echo "LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$GITHUB_WORKSPACE/ACE_TAO/ACE/lib:$GITHUB_WORKSPACE/OpenDDS/lib" >> $GITHUB_ENV
if [ ${{ matrix.node_version }} == 16 ]; then
if [ ${{ matrix.node_version }} >= 16 ]; then
CONFIG_OPTIONS+=" --std=c++14";
else
CONFIG_OPTIONS+=" --std=c++11";
fi
if [ ${{ matrix.m.dds_security }} == 1 ]; then
CONFIG_OPTIONS+=" --security";
BUILD_TARGETS+=" OpenDDS_Security";
if [ '${{ matrix.m.os }}' == 'macos-latest' ]; then
if [ '${{ matrix.m.os }}' == 'macos-11' ]; then
CONFIG_OPTIONS+=" --xerces3=$(brew --prefix xerces-c) --openssl=/usr/local/opt/openssl@1.1"
fi
fi
Expand All @@ -147,8 +147,9 @@ jobs:
fi
echo "CONFIG_OPTIONS=$CONFIG_OPTIONS" >> $GITHUB_ENV
echo "BUILD_TARGETS=DCPSInfoRepo_Main;OpenDDS_Rtps_Udp$BUILD_TARGETS" >> $GITHUB_ENV
echo "ACE_TEST_LOG_STUCK_STACKS=1" >> $GITHUB_ENV
- name: 'Configure & Build OpenDDS (ubuntu / macos)'
if: ${{ matrix.m.os == 'ubuntu-latest' || matrix.m.os == 'macos-latest' }}
if: ${{ matrix.m.os == 'ubuntu-20.04' || matrix.m.os == 'macos-11' }}
shell: bash
run: |-
echo "dds_security=${{ matrix.m.dds_security }}; CONFIG_OPTIONS=${{ env.CONFIG_OPTIONS }}; BUILD_TARGETS=${{ env.BUILD_TARGETS }}"
Expand All @@ -171,16 +172,29 @@ jobs:
call setenv.cmd
msbuild -p:Configuration=Debug,Platform=x64 -t:${{ env.BUILD_TARGETS }} -m DDS_TAOv2.sln
- name: 'Install (ubuntu / macos)'
if: ${{ matrix.m.os == 'ubuntu-latest' || matrix.m.os == 'macos-latest' }}
if: ${{ matrix.m.os == 'ubuntu-20.04' || matrix.m.os == 'macos-11' }}
shell: bash
run: |-
npm install
${{ env.ACE_ROOT }}/bin/mwc.pl -type gnuace -exclude ACE_TAO,OpenDDS
make -j2 || make
- name: 'Change Core File Pattern (ubuntu)'
if: ${{ matrix.m.os == 'ubuntu-20.04' }}
shell: bash
run: |
sudo sysctl -w kernel.core_pattern=core.%e.%p
echo Core file pattern set to:
cat /proc/sys/kernel/core_pattern
- name: 'Change Cores Directory Permissions (macos)'
if: ${{ matrix.m.os == 'macos-11' }}
shell: bash
run: |
sudo chmod o+w /cores
- name: 'Test (ubuntu / macos)'
if: ${{ matrix.m.os == 'ubuntu-latest' || matrix.m.os == 'macos-latest' }}
if: ${{ matrix.m.os == 'ubuntu-20.04' || matrix.m.os == 'macos-11' }}
shell: bash
run: |-
ulimit -c unlimited
cd test
./run_test.pl cpp2node
./run_test.pl node2cpp
Expand All @@ -189,9 +203,10 @@ jobs:
./run_test.pl node2cpp --rtps
./run_test.pl node2node --rtps
- name: 'Test Secure (ubuntu / macos)'
if: ${{ (matrix.m.os == 'ubuntu-latest' || matrix.m.os == 'macos-latest') && matrix.m.dds_security == 1 }}
if: ${{ (matrix.m.os == 'ubuntu-20.04' || matrix.m.os == 'macos-11') && matrix.m.dds_security == 1 }}
shell: bash
run: |-
ulimit -c unlimited
cd test
./run_test.pl cpp2node --rtps --secure
./run_test.pl node2cpp --rtps --secure
Expand Down
13 changes: 13 additions & 0 deletions node_library_user.mpb
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
// Build settings for applications using libraries that will be loaded into the Node.js
// process and have dependencies on v8.

// On macOS we need to let the linker know that we are OK with
// undefined symbols (v8's) that will be resolved at runtime.

project {
verbatim(gnuace, local, 1) {
ifeq ($(shell uname -s), Darwin)
LDFLAGS += -undefined dynamic_lookup
endif
}
}
2 changes: 1 addition & 1 deletion test/test_publisher.mpc
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
project: dcpsexe {
project: dcpsexe, node_library_user {
exename = test_publisher

libs += NodeJSTest
Expand Down
2 changes: 1 addition & 1 deletion test/test_publisher_secure.mpc
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
project: dcpsexe {
project: dcpsexe, node_library_user {
exename = test_publisher

libs += NodeJSTest
Expand Down
2 changes: 1 addition & 1 deletion test/test_subscriber.mpc
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
project: dcpsexe {
project: dcpsexe, node_library_user {
exename = test_subscriber

libs += NodeJSTest
Expand Down
2 changes: 1 addition & 1 deletion test/test_subscriber_secure.mpc
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
project: dcpsexe {
project: dcpsexe, node_library_user {
exename = test_subscriber

libs += NodeJSTest
Expand Down

0 comments on commit be35d70

Please sign in to comment.