-
Notifications
You must be signed in to change notification settings - Fork 13
141 lines (127 loc) · 3.85 KB
/
ci-build-open62541-win.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
# OPCUA CI build using EPICS ci-scripts
# (see: https://github.com/epics-base/ci-scripts)
# open62541 SDK client library - Windows builds
# =============================================
# This is YAML - indentation levels are crucial
# Set the 'name:' properties to values that work for you
name: open62541 Windows build
# Trigger on pushes and PRs to any branch
on:
push:
paths-ignore:
- 'documentation/*'
- '**/*.html'
- '**/*.md'
- 'devOpcuaSup/UaSdk/*'
pull_request:
env:
SETUP_PATH: .ci-local:.ci
MODULES: "gtest"
GTEST: "v1.0.1"
BASE_HOOK: ".ci-local/base.patch"
BASE_RECURSIVE: NO
encrypted_178ee45b7f75_pass: ${{ secrets.encrypted_178ee45b7f75_pass }}
jobs:
build-msvc:
name: ${{ matrix.name }}
runs-on: ${{ matrix.os }}
# Set environment variables from matrix parameters
env:
CMP: ${{ matrix.cmp }}
BCFG: ${{ matrix.configuration }}
BASE: ${{ matrix.base }}
OPEN62541: ${{ matrix.open62541 }}
strategy:
fail-fast: false
matrix:
include:
- os: windows-2019
cmp: vs2019
configuration: default
base: "3.15"
open62541: "1.3.12"
name: "3.15 Win2019 v1.3.12 VS2019 DLL"
- os: windows-2019
cmp: vs2019
configuration: default
base: "7.0"
open62541: "1.3.12"
name: "7.0 Win2019 v1.3.12 VS2019 DLL"
steps:
- uses: actions/checkout@v4
with:
submodules: true
- name: Download and compile open62541 client
run: |
python .ci-local/install-open62541.py
- name: Prepare build dependencies
run: |
python .ci/cue.py prepare
- name: Install MSVC dependencies
run: |
python .ci-local/install-msvc-deps.py
- name: Add DLL locations to PATH
run: |
"C:/Users/runneradmin/.cache/open62541/bin" | Out-File -FilePath $env:GITHUB_PATH -Append
"C:/Users/runneradmin/.cache/libxml2-2.9.3/bin" | Out-File -FilePath $env:GITHUB_PATH -Append
"C:/Users/runneradmin/.cache/iconv-1.14/bin" | Out-File -FilePath $env:GITHUB_PATH -Append
- name: Build main module
run: python .ci/cue.py build
- name: Run main module tests
run: python .ci/cue.py test
- name: Collect and show test results
run: python .ci/cue.py test-results
build-msys2:
name: ${{ matrix.name }}
runs-on: ${{ matrix.os }}
defaults:
run:
shell: msys2 {0}
# Set environment variables from matrix parameters
env:
CMP: gcc
CHOCO: NO
BCFG: ${{ matrix.configuration }}
BASE: ${{ matrix.base }}
OPEN62541: ${{ matrix.open62541 }}
strategy:
fail-fast: false
matrix:
include:
- os: windows-2019
configuration: default
base: "3.15"
open62541: "1.3.12"
name: "3.15 Win2019 v1.3.12 MinGW DLL"
- os: windows-2019
configuration: default
base: "7.0"
open62541: "1.3.12"
name: "7.0 Win2019 v1.3.12 MinGW DLL"
steps:
- uses: msys2/setup-msys2@v2
with:
release: false
msystem: mingw64
install: >-
git
pacboy: openssl:p
- uses: actions/checkout@v4
with:
submodules: true
- name: Download and compile open62541 client
run: |
python .ci-local/install-open62541.py
- name: Prepare build dependencies
run: |
python .ci/cue.py prepare
- name: Build main module
run: |
export PATH=$PATH:/c/Users/runneradmin/.cache/open62541/bin
python .ci/cue.py build
- name: Run main module tests
run: |
export PATH=$PATH:/c/Users/runneradmin/.cache/open62541/bin
python .ci/cue.py test
- name: Collect and show test results
run: python .ci/cue.py test-results