Skip to content

Commit 0251402

Browse files
committed
COH-20757: Create GitHub Workflow to build coherence ce c++ extend client (main.cpp -> cpp-v14.1.1.0 @ 80549)
[git-p4: depot-paths = "//dev/release.cpp/coherence-cpp-v14.1.1.0/": change = 80563]
1 parent 8f35c9b commit 0251402

File tree

1 file changed

+83
-0
lines changed

1 file changed

+83
-0
lines changed

.github/workflows/build.yml

Lines changed: 83 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,83 @@
1+
# Copyright 2020 Oracle Corporation and/or its affiliates. All rights reserved.
2+
# Licensed under the Universal Permissive License v 1.0 as shown at
3+
# http://oss.oracle.com/licenses/upl.
4+
5+
# ---------------------------------------------------------------------------
6+
# Coherence C++ Extend Client GitHub Actions CI build.
7+
# ---------------------------------------------------------------------------
8+
9+
name: CI Build
10+
11+
on:
12+
push:
13+
branches-ignore:
14+
- gh-pages
15+
- p4-integ*
16+
- last-p4-*
17+
pull_request:
18+
types:
19+
- opened
20+
- committed
21+
branches:
22+
- '*'
23+
24+
jobs:
25+
build:
26+
runs-on: ubuntu-latest
27+
steps:
28+
- name: Checkout
29+
uses: actions/checkout@v2
30+
31+
# Install and Set up dependencies/tools which are required by build
32+
- name: Build Setup
33+
run: |
34+
TMP_DIR=`mktemp -d /tmp/ci_build_XXXXXX`
35+
36+
# Download and install ant
37+
wget --tries=3 https://archive.apache.org/dist/ant/binaries/apache-ant-1.7.0-bin.zip -O $TMP_DIR/ant.zip
38+
mkdir -p tools/internal/common
39+
unzip $TMP_DIR/ant.zip -d tools/internal/common/
40+
mv tools/internal/common/apache-ant-1.7.0 tools/internal/common/ant
41+
42+
# Download and install ant-contrib-1.0b3.jar
43+
wget --tries=3 https://sourceforge.net/projects/ant-contrib/files/ant-contrib/1.0b3/ant-contrib-1.0b3-bin.zip/download -O $TMP_DIR/ant-contrib.zip
44+
unzip $TMP_DIR/ant-contrib.zip -d tools/internal/common/
45+
mv tools/internal/common/ant-contrib/ant-contrib-1.0b3.jar tools/internal/common/ant-contrib/lib/
46+
47+
# Download and install cpptasks
48+
wget --tries=3 https://sourceforge.net/projects/ant-contrib/files/ant-contrib/cpptasks-1.0-beta4/cpptasks-1.0b4.zip/download -O $TMP_DIR/cpptasks.zip
49+
unzip $TMP_DIR/cpptasks.zip -d tools/internal/common/
50+
mv tools/internal/common/cpptasks-1.0b4/cpptasks.jar tools/internal/common/ant-contrib/lib/cpptasks-1.0b4.jar
51+
52+
# Download and install cxxtest
53+
wget --tries=3 https://sourceforge.net/projects/cxxtest/files/cxxtest/3.10.1/cxxtest-3.10.1.zip/download -O $TMP_DIR/cxxtest.zip
54+
unzip $TMP_DIR/cxxtest.zip -d tools/internal/common
55+
56+
# Build
57+
- name: Build
58+
run: |
59+
. ./bin/cfglocal.sh
60+
sed -i "s|-Werror|-Wno-error|g" prj/build-import.xml
61+
git diff
62+
ant -f prj/build.xml clean build
63+
64+
# Verify
65+
- name: Verify
66+
run: |
67+
. ./bin/cfglocal.sh
68+
ant -f prj/tests/unit/build.xml test
69+
70+
# Capture logs and test reports for diagnosing failures
71+
- name: Capture test logs
72+
uses: actions/upload-artifact@v2
73+
if: failure()
74+
with:
75+
name: build-output
76+
path: build\**\*.log
77+
78+
- name: Capture test reports
79+
uses: actions/upload-artifact@v2
80+
if: failure()
81+
with:
82+
name: test-reports
83+
path: build\**\*tests.xml

0 commit comments

Comments
 (0)