Skip to content

Add comments to explain why no locking is necessary (#330) #332

Add comments to explain why no locking is necessary (#330)

Add comments to explain why no locking is necessary (#330) #332

name: Build ThunderNanoServicesRDK on Windows
on:
workflow_dispatch:
push:
branches: ["master"]
pull_request:
branches: ["master"]
env:
devEnv: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\Common7\IDE\devenv.com
deviceInfo: ThunderNanoServicesRDK\DeviceInfo\DeviceInfo.vcxproj
locationSync: ThunderNanoServicesRDK\LocationSync\LocationSync.vcxproj
messageControl: ThunderNanoServicesRDK\MessageControl\MessageControl.vcxproj
messenger: ThunderNanoServicesRDK\Messenger\Messenger.vcxproj
monitor: ThunderNanoServicesRDK\Monitor\Monitor.vcxproj
openCDMi: ThunderNanoServicesRDK\OpenCDMi\OpenCDMi.vcxproj
securityAgent: ThunderNanoServicesRDK\SecurityAgent\SecurityAgent.vcxproj
solution: Thunder.sln
jobs:
ThunderNanoServices:
runs-on: windows-latest
strategy:
matrix:
type: [Debug, Release]
version: [64, 86]
# ----- Checkout -----
name: Build type - ${{matrix.type}}${{matrix.version}}
steps:
- name: Checkout ThunderOnWindows
uses: actions/checkout@v4
with:
path: ThunderOnWindows
repository: WebPlatformForEmbedded/ThunderOnWindows
- name: Checkout Thunder
uses: actions/checkout@v4
with:
path: ThunderOnWindows/Thunder
repository: rdkcentral/Thunder
- name: Checkout ThunderTools
uses: actions/checkout@v4
with:
path: ThunderOnWindows/ThunderTools
repository: rdkcentral/ThunderTools
- name: Checkout ThunderClientLibraries
uses: actions/checkout@v4
with:
path: ThunderOnWindows/ThunderClientLibraries
repository: rdkcentral/ThunderClientLibraries
- name: Checkout ThunderInterfaces
uses: actions/checkout@v4
with:
path: ThunderOnWindows/ThunderInterfaces
repository: rdkcentral/ThunderInterfaces
- name: Checkout ThunderNanoServices
uses: actions/checkout@v4
with:
path: ThunderOnWindows/ThunderNanoServices
repository: rdkcentral/ThunderNanoServices
- name: Checkout ThunderNanoServicesRDK
uses: actions/checkout@v4
with:
path: ThunderOnWindows/ThunderNanoServicesRDK
repository: WebPlatformForEmbedded/ThunderNanoServicesRDK
# ----- Install, build & upload artifacts -----
- name: Install jsonref
run: pip install jsonref
- name: Build ThunderNanoServicesRDK
shell: cmd
run: >
cd ThunderOnWindows
&& "%devEnv%" /Build "${{matrix.type}}|x${{matrix.version}}" /Project "%deviceInfo%" "%solution%"
&& "%devEnv%" /Build "${{matrix.type}}|x${{matrix.version}}" /Project "%locationSync%" "%solution%"
&& "%devEnv%" /Build "${{matrix.type}}|x${{matrix.version}}" /Project "%messageControl%" "%solution%"
&& "%devEnv%" /Build "${{matrix.type}}|x${{matrix.version}}" /Project "%messenger%" "%solution%"
&& "%devEnv%" /Build "${{matrix.type}}|x${{matrix.version}}" /Project "%monitor%" "%solution%"
&& "%devEnv%" /Build "${{matrix.type}}|x${{matrix.version}}" /Project "%openCDMi%" "%solution%"
&& "%devEnv%" /Build "${{matrix.type}}|x${{matrix.version}}" /Project "%securityAgent%" "%solution%"
- name: Tar files
run: tar -czvf ${{matrix.type}}${{matrix.version}}.tar.gz artifacts
- name: Upload
uses: actions/upload-artifact@v4
with:
name: ThunderNanoServicesRDK-${{matrix.type}}${{matrix.version}}-artifact
path: ${{matrix.type}}${{matrix.version}}.tar.gz