-
Notifications
You must be signed in to change notification settings - Fork 6
130 lines (113 loc) · 4.22 KB
/
build_dependencies.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
# This job builds the dependencies of this repository every day
# This saves time in every action execution as it does not require to compile the dependencies
name: build_dependencies
on:
workflow_dispatch:
inputs:
foonathan_memory_vendor_branch:
description: 'Branch or tag of eProsima/foonathan_memory_vendor repository (https://github.com/eProsima/foonathan_memory_vendor)'
required: true
default: 'master'
fastcdr_branch:
description: 'Branch or tag of eProsima/Fast-CDR repository (https://github.com/eProsima/Fast-CDR)'
required: true
default: '1.1.x'
fastdds_branch:
description: 'Branch or tag of eProsima/Fast-DDS repository (https://github.com/eProsima/Fast-DDS)'
required: true
default: '2.11.x'
utils_branch:
description: 'Branch or tag of eProsima/dev-utils repository (https://github.com/eProsima/dev-utils)'
required: true
default: 'main'
schedule:
- cron: '0 0 * * *'
jobs:
windows-build:
runs-on: ${{ matrix.windows-version }}
strategy:
fail-fast: false
matrix:
cmake-config:
- 'Release'
- 'Debug'
windows-version:
- 'windows-2019'
- 'windows-2022'
env:
CXXFLAGS: /MP
OPENSSL64_ROOT: "C:/Program Files/OpenSSL-Win64"
steps:
- name: Sync eProsima/DDS-Pipe repository
uses: actions/checkout@v3
with:
path: DDS-Pipe
- name: Install OpenSSL
uses: ./DDS-Pipe/.github/actions/install-openssl-windows
- name: Install eProsima dependencies
uses: ./DDS-Pipe/.github/actions/install-eprosima-dependencies-windows
env:
DEFAULT_FASTCDR_BRANCH: '1.1.x'
DEFAULT_FASTDDS_BRANCH: '2.11.x'
DEFAULT_UTILS_BRANCH: 'main'
with:
cmake_build_type: ${{ matrix.cmake-config }}
fastcdr_branch: ${{ github.event.inputs.fastcdr_branch || env.DEFAULT_FASTCDR_BRANCH }}
fastdds_branch: ${{ github.event.inputs.fastdds_branch || env.DEFAULT_FASTDDS_BRANCH }}
utils_branch: ${{ github.event.inputs.utils_branch || env.DEFAULT_UTILS_BRANCH }}
- name: Upload binaries
uses: actions/upload-artifact@v3
with:
name: ${{ matrix.windows-version }}_${{ matrix.cmake-config }}_fastdds_install
path: ${{ github.workspace }}\eprosima\install
ubuntu-build:
runs-on: ${{ matrix.ubuntu-version }}
strategy:
fail-fast: false
matrix:
ubuntu-version:
- 'ubuntu-20.04'
- 'ubuntu-22.04'
steps:
- name: Sync eProsima/DDS-Pipe repository
uses: actions/checkout@v3
with:
path: src/DDS-Pipe
- name: Avoid DDS Pipe build
run: |
touch ./src/DDS-Pipe/COLCON_IGNORE
- name: Install apt packages
uses: ./src/DDS-Pipe/.github/actions/install-apt-packages
- name: Install colcon
uses: eProsima/eProsima-CI/ubuntu/install_colcon@v0
- name: Install Python packages
uses: eProsima/eProsima-CI/ubuntu/install_python_packages@v0
with:
packages: \
sphinx==4.3.1 \
doc8==0.10.1 \
sphinx_rtd_theme==0.5.2 \
sphinxcontrib.spelling==7.2.1 \
sphinxcontrib-imagehelper==1.1.1 \
sphinx-tabs==3.2.0 \
vcstool \
GitPython==3.1.24 \
setuptools==58.2.0 \
gcovr==5.0 \
pyyaml \
jsonschema
- name: Fetch repositories
run: |
vcs import src < src/DDS-Pipe/.github/workflows/ci.repos
cd src/foonathan_memory_vendor && git checkout ${{ inputs.foonathan_memory_vendor_branch }} && cd ../..
cd src/fastcdr && git checkout ${{ inputs.fastcdr_branch }} && cd ../..
cd src/fastdds && git checkout ${{ inputs.fastdds_branch }} && cd ../..
cd src/dev-utils && git checkout ${{ inputs.utils_branch }} && cd ../..
- name: Build workspace
run: |
colcon build --event-handlers=console_direct+
- name: Upload binaries
uses: actions/upload-artifact@v3
with:
name: ${{ matrix.ubuntu-version }}_fastdds_install
path: install