You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
1340 lines
58 KiB
YAML
1340 lines
58 KiB
YAML
name: Build FreeRTOS+ Demos
|
|
on:
|
|
workflow_dispatch:
|
|
push:
|
|
branches: ["**"]
|
|
|
|
pull_request:
|
|
branches: [main]
|
|
env:
|
|
bashPass: \033[32;1mPASSED -
|
|
bashWarn: \033[33;1mWARNING -
|
|
bashFail: \033[31;1mFAILED -
|
|
bashEnd: \033[0m
|
|
|
|
pwshPass: "`e[32;1mPASSED -"
|
|
pwshWarn: "`e[33;1mWARNING -"
|
|
pwshFail: "`e[31;1mFAILED -"
|
|
pwshEnd: "`e[0m"
|
|
|
|
jobs:
|
|
winsim_cellular:
|
|
name: Windows Simulator Cellular Demos
|
|
runs-on: windows-2019
|
|
steps:
|
|
- name: Checkout Repository
|
|
uses: actions/checkout@v3
|
|
|
|
- env:
|
|
stepName: Fetch Submodules
|
|
name: ${{ env.stepName}}
|
|
shell: bash
|
|
run: |
|
|
# ${{ env.stepName }}
|
|
echo -e "::group::${{ env.stepName }}"
|
|
git submodule update --checkout --init --depth 1 \
|
|
FreeRTOS/Source \
|
|
FreeRTOS-Plus/Source/FreeRTOS-Cellular-Interface \
|
|
FreeRTOS-Plus/Source/FreeRTOS-Cellular-Modules/bg96 \
|
|
FreeRTOS-Plus/Source/FreeRTOS-Cellular-Modules/hl7802 \
|
|
FreeRTOS-Plus/Source/FreeRTOS-Cellular-Modules/sara-r4 \
|
|
FreeRTOS-Plus/Source/Application-Protocols/coreMQTT \
|
|
FreeRTOS-Plus/Source/FreeRTOS-Plus-TCP \
|
|
FreeRTOS-Plus/Source/Utilities/backoff_algorithm \
|
|
FreeRTOS-Plus/Source/coreJSON \
|
|
FreeRTOS-Plus/Source/corePKCS11 \
|
|
FreeRTOS-Plus/ThirdParty/mbedtls \
|
|
FreeRTOS-Plus/ThirdParty/tinycbor
|
|
git -C FreeRTOS-Plus/Source/corePKCS11 submodule update --checkout --init --depth 1 source/dependency/3rdparty/pkcs11
|
|
echo "::endgroup::"
|
|
echo -e "${{ env.bashPass }} ${{ env.stepName }} ${{ env.bashEnd }} "
|
|
|
|
- name: Add msbuild to PATH
|
|
uses: microsoft/setup-msbuild@v1.1
|
|
|
|
- env:
|
|
stepName: Configure FreeRTOS+Cellular Demos
|
|
name: ${{ env.stepName }}
|
|
shell: bash
|
|
working-directory: FreeRTOS-Plus/Demo/FreeRTOS_Cellular_Interface_Windows_Simulator
|
|
run: |
|
|
# ${{ env.stepName }}
|
|
echo -e "::group::${{ env.stepName }}"
|
|
echo '#define CELLULAR_COMM_INTERFACE_PORT ""' | tee -a */cellular_config.h
|
|
echo '#define CELLULAR_APN ""' | tee -a */cellular_config.h
|
|
|
|
echo '#ifndef DEMO_CONFIG_H_TEST_BUILD' | tee -a */demo_config.h
|
|
echo ' #define DEMO_CONFIG_H_TEST_BUILD' | tee -a */demo_config.h
|
|
echo ' #define democonfigMQTT_BROKER_ENDPOINT ""' | tee -a */demo_config.h
|
|
echo ' #define democonfigMQTT_BROKER_PORT ( 8883 )' | tee -a */demo_config.h
|
|
echo ' #define democonfigROOT_CA_PEM ""' | tee -a */demo_config.h
|
|
echo ' #define democonfigCLIENT_CERTIFICATE_PEM ""' | tee -a */demo_config.h
|
|
echo ' #define democonfigCLIENT_PRIVATE_KEY_PEM ""' | tee -a */demo_config.h
|
|
echo ' #define democonfigUSE_AWS_IOT_CORE_BROKER ( 1 )' | tee -a */demo_config.h
|
|
echo '#endif /* DEMO_CONFIG_H_TEST_BUILD */' | tee -a */demo_config.h
|
|
echo "::endgroup::"
|
|
echo -e "${{ env.bashPass }} ${{ env.stepName }} ${{ env.bashEnd }} "
|
|
|
|
- env:
|
|
stepName: Build Cellular MQTT Demo for BG96
|
|
name: ${{ env.stepName }}
|
|
working-directory: FreeRTOS-Plus/Demo/FreeRTOS_Cellular_Interface_Windows_Simulator/MQTT_Mutual_Auth_Demo_with_BG96
|
|
run: |
|
|
# ${{ env.stepName }}
|
|
echo "::group::${{ env.stepName }}"
|
|
msbuild mqtt_mutual_auth_demo_with_bg96.sln -t:rebuild -property:Configuration=Debug
|
|
if($? -eq 1) {
|
|
echo "::endgroup::"
|
|
echo "${{ env.pwshPass }} ${{ env.stepName }} ${{ env.pwshEnd }}"
|
|
}else {
|
|
echo "::endgroup::"
|
|
echo "${{ env.pwshFail }} ${{ env.stepName }} ${{ env.pwshEnd }}"
|
|
exit 1
|
|
}
|
|
|
|
- env:
|
|
stepName: Build Cellular MQTT Demo for HL7802
|
|
name: ${{ env.stepName }}
|
|
working-directory: FreeRTOS-Plus/Demo/FreeRTOS_Cellular_Interface_Windows_Simulator/MQTT_Mutual_Auth_Demo_with_HL7802
|
|
run: |
|
|
# ${{ env.stepName }}
|
|
echo "::group::${{ env.stepName }}"
|
|
msbuild mqtt_mutual_auth_demo_with_hl7802.sln -t:rebuild -property:Configuration=Debug
|
|
if($? -eq 1) {
|
|
echo "::endgroup::"
|
|
echo "${{ env.pwshPass }} ${{ env.stepName }} ${{ env.pwshEnd }}"
|
|
}else {
|
|
echo "::endgroup::"
|
|
echo "${{ env.pwshFail }} ${{ env.stepName }} ${{ env.pwshEnd }}"
|
|
exit 1
|
|
}
|
|
|
|
- env:
|
|
stepName: Build Cellular MQTT Demo for SARA-R4
|
|
name: ${{ env.stepName }}
|
|
working-directory: FreeRTOS-Plus/Demo/FreeRTOS_Cellular_Interface_Windows_Simulator/MQTT_Mutual_Auth_Demo_with_SARA_R4
|
|
run: |
|
|
# ${{ env.stepName }}
|
|
echo "::group::${{ env.stepName }}"
|
|
msbuild mqtt_mutual_auth_demo_with_sara_r4.sln -t:rebuild -property:Configuration=Debug
|
|
if($? -eq 1) {
|
|
echo "::endgroup::"
|
|
echo "${{ env.pwshPass }} ${{ env.stepName }} ${{ env.pwshEnd }}"
|
|
}else {
|
|
echo "::endgroup::"
|
|
echo "${{ env.pwshFail }} ${{ env.stepName }} ${{ env.pwshEnd }}"
|
|
exit 1
|
|
}
|
|
|
|
winsim_coreHTTP:
|
|
name: coreHTTP WinSim Demos
|
|
runs-on: windows-2019
|
|
steps:
|
|
- name: Checkout Repository
|
|
uses: actions/checkout@v3
|
|
|
|
- env:
|
|
stepName: Fetch Submodules
|
|
name: ${{ env.stepName }}
|
|
shell: bash
|
|
run: |
|
|
# ${{ env.stepName }}
|
|
echo -e "::group::${{ env.stepName }}"
|
|
git submodule update --checkout --init --depth 1 \
|
|
FreeRTOS/Source \
|
|
FreeRTOS-Plus/Source/AWS/sigv4 \
|
|
FreeRTOS-Plus/Source/Application-Protocols/coreHTTP \
|
|
FreeRTOS-Plus/Source/Application-Protocols/coreMQTT \
|
|
FreeRTOS-Plus/Source/FreeRTOS-Plus-TCP \
|
|
FreeRTOS-Plus/Source/Utilities/backoff_algorithm \
|
|
FreeRTOS-Plus/Source/coreJSON \
|
|
FreeRTOS-Plus/ThirdParty/mbedtls \
|
|
FreeRTOS-Plus/ThirdParty/glib \
|
|
FreeRTOS-Plus/ThirdParty/libslirp
|
|
git -C FreeRTOS-Plus/Source/Application-Protocols/coreHTTP submodule update --checkout --init --depth 1 source/dependency/3rdparty/llhttp
|
|
echo "::endgroup::"
|
|
echo -e "${{ env.bashPass }} ${{ env.stepName }} ${{ env.bashEnd }} "
|
|
|
|
- name: Add msbuild to PATH
|
|
uses: microsoft/setup-msbuild@v1.1
|
|
|
|
- env:
|
|
stepName: Configure coreHTTP Demos
|
|
name: ${{ env.stepName }}
|
|
shell: bash
|
|
working-directory: FreeRTOS-Plus/Demo/coreHTTP_Windows_Simulator
|
|
run: |
|
|
# ${{ env.stepName }}
|
|
echo -e "::group::${{ env.stepName }}"
|
|
echo '#ifndef DEMO_CONFIG_H_TEST_BUILD' | tee -a */demo_config.h
|
|
echo ' #define DEMO_CONFIG_H_TEST_BUILD' | tee -a */demo_config.h
|
|
echo ' #define democonfigSERVER_HOSTNAME ""' | tee -a */demo_config.h
|
|
echo ' #define democonfigAWS_IOT_ENDPOINT ""' | tee -a */demo_config.h
|
|
echo ' #define democonfigROOT_CA_PEM ""' | tee -a */demo_config.h
|
|
echo ' #define democonfigCLIENT_CERTIFICATE_PEM ""' | tee -a */demo_config.h
|
|
echo ' #define democonfigCLIENT_PRIVATE_KEY_PEM ""' | tee -a */demo_config.h
|
|
echo ' #define democonfigIOT_CRED_PROVIDER_ROOT_CA_PEM ""' | tee -a */demo_config.h
|
|
echo ' #define democonfigIOT_CREDENTIAL_PROVIDER_ENDPOINT ""' | tee -a */demo_config.h
|
|
echo ' #define democonfigIOT_CREDENTIAL_PROVIDER_ROLE ""' | tee -a */demo_config.h
|
|
echo ' #define democonfigIOT_THING_NAME ""' | tee -a */demo_config.h
|
|
echo ' #define democonfigS3_PRESIGNED_GET_URL "ABCDEF"' | tee -a */demo_config.h
|
|
echo ' #define democonfigS3_PRESIGNED_PUT_URL "ABCDEF"' | tee -a */demo_config.h
|
|
echo ' #define democonfigS3_ROOT_CA_PEM ""' | tee -a */demo_config.h
|
|
echo ' #define democonfigS3_BUCKET_NAME ""' | tee -a */demo_config.h
|
|
echo ' #define democonfigS3_BUCKET_REGION ""' | tee -a */demo_config.h
|
|
echo ' #define democonfigS3_OBJECT_NAME ""' | tee -a */demo_config.h
|
|
echo '#endif /* DEMO_CONFIG_H_TEST_BUILD */' | tee -a */demo_config.h
|
|
exitStatus=$?
|
|
set -e
|
|
echo "::endgroup::"
|
|
echo -e "${{ env.bashPass }} ${{ env.stepName }} ${{ env.bashEnd }} "
|
|
|
|
- env:
|
|
stepName: Build HTTP Plain Text Demo
|
|
name: ${{ env.stepName }}
|
|
id: build-http-plain-text-demo
|
|
working-directory: FreeRTOS-Plus/Demo/coreHTTP_Windows_Simulator/HTTP_Plaintext
|
|
run: |
|
|
# ${{ env.stepName }}
|
|
echo "::group::${{ env.stepName }}"
|
|
msbuild http_plain_text_demo.sln -t:rebuild -property:Configuration=Debug -m
|
|
if($? -eq 1) {
|
|
echo "::endgroup::"
|
|
echo "${{ env.pwshPass }} ${{ env.stepName }} ${{ env.pwshEnd }}"
|
|
}else {
|
|
echo "::endgroup::"
|
|
echo "${{ env.pwshFail }} ${{ env.stepName }} ${{ env.pwshEnd }}"
|
|
exit 1
|
|
}
|
|
|
|
- env:
|
|
stepName: Build HTTP Mutual Auth Demo
|
|
name: ${{ env.stepName }}
|
|
id: build-http-mutual-auth-demo
|
|
working-directory: FreeRTOS-Plus/Demo/coreHTTP_Windows_Simulator/HTTP_Mutual_Auth
|
|
run: |
|
|
# ${{ env.stepName }}
|
|
echo "::group::${{ env.stepName }}"
|
|
msbuild http_mutual_auth_demo.sln -t:rebuild -property:Configuration=Debug -m
|
|
if($? -eq 1) {
|
|
echo "::endgroup::"
|
|
echo "${{ env.pwshPass }} ${{ env.stepName }} ${{ env.pwshEnd }}"
|
|
}else {
|
|
echo "::endgroup::"
|
|
echo "${{ env.pwshFail }} ${{ env.stepName }} ${{ env.pwshEnd }}"
|
|
exit 1
|
|
}
|
|
|
|
- env:
|
|
stepName: Build HTTP S3 Upload Demo
|
|
name: ${{ env.stepName }}
|
|
id: build-http-s3-upload-demo
|
|
working-directory: FreeRTOS-Plus/Demo/coreHTTP_Windows_Simulator/HTTP_S3_Upload
|
|
run: |
|
|
# ${{ env.stepName }}
|
|
echo "::group::${{ env.stepName }}"
|
|
msbuild http_s3_upload_demo.sln -t:rebuild -property:Configuration=Debug -m
|
|
if($? -eq 1) {
|
|
echo "::endgroup::"
|
|
echo "${{ env.pwshPass }} ${{ env.stepName }} ${{ env.pwshEnd }}"
|
|
}else {
|
|
echo "::endgroup::"
|
|
echo "${{ env.pwshFail }} ${{ env.stepName }} ${{ env.pwshEnd }}"
|
|
exit 1
|
|
}
|
|
|
|
- env:
|
|
stepName: Build HTTP S3 Download Multithreaded Demo
|
|
name: ${{ env.stepName }}
|
|
id: build-http-s3-download-multithreaded-demo
|
|
working-directory: FreeRTOS-Plus/Demo/coreHTTP_Windows_Simulator/HTTP_S3_Download_Multithreaded
|
|
run: |
|
|
# ${{ env.stepName }}
|
|
echo "::group::${{ env.stepName }}"
|
|
msbuild http_s3_download_multithreaded_demo.sln -t:rebuild -property:Configuration=Debug -m
|
|
if($? -eq 1) {
|
|
echo "::endgroup::"
|
|
echo "${{ env.pwshPass }} ${{ env.stepName }} ${{ env.pwshEnd }}"
|
|
}else {
|
|
echo "::endgroup::"
|
|
echo "${{ env.pwshFail }} ${{ env.stepName }} ${{ env.pwshEnd }}"
|
|
exit 1
|
|
}
|
|
|
|
- env:
|
|
stepName: Build HTTP S3 Download Demo
|
|
name: ${{ env.stepName }}
|
|
id: build-http-s3-download-demo
|
|
working-directory: FreeRTOS-Plus/Demo/coreHTTP_Windows_Simulator/HTTP_S3_Download
|
|
run: |
|
|
# ${{ env.stepName }}
|
|
echo "::group::${{ env.stepName }}"
|
|
msbuild http_s3_download_demo.sln -t:rebuild -property:Configuration=Debug -m
|
|
if($? -eq 1) {
|
|
echo "::endgroup::"
|
|
echo "${{ env.pwshPass }} ${{ env.stepName }} ${{ env.pwshEnd }}"
|
|
}else {
|
|
echo "::endgroup::"
|
|
echo "${{ env.pwshFail }} ${{ env.stepName }} ${{ env.pwshEnd }}"
|
|
exit 1
|
|
}
|
|
|
|
winsim_corePKCS11:
|
|
name: corePKCS11 WinSim Demos
|
|
runs-on: windows-2019
|
|
steps:
|
|
- name: Checkout Repository
|
|
uses: actions/checkout@v3
|
|
|
|
- env:
|
|
stepName: Fetch Submodules
|
|
name: ${{ env.stepName }}
|
|
shell: bash
|
|
run: |
|
|
# ${{ env.stepName }}
|
|
echo -e "::group::${{ env.stepName }}"
|
|
git submodule update --checkout --init --depth 1 \
|
|
FreeRTOS/Source \
|
|
FreeRTOS-Plus/Source/AWS/fleet-provisioning \
|
|
FreeRTOS-Plus/Source/Application-Protocols/coreMQTT \
|
|
FreeRTOS-Plus/Source/FreeRTOS-Plus-TCP \
|
|
FreeRTOS-Plus/Source/Utilities/backoff_algorithm \
|
|
FreeRTOS-Plus/Source/coreJSON \
|
|
FreeRTOS-Plus/Source/corePKCS11 \
|
|
FreeRTOS-Plus/ThirdParty/mbedtls \
|
|
FreeRTOS-Plus/ThirdParty/glib \
|
|
FreeRTOS-Plus/ThirdParty/libslirp
|
|
|
|
git -C FreeRTOS-Plus/Source/corePKCS11 submodule update --checkout --init --depth 1 source/dependency/3rdparty/pkcs11
|
|
echo "::endgroup::"
|
|
echo -e "${{ env.bashPass }} ${{ env.stepName }} ${{ env.bashEnd }} "
|
|
|
|
- name: Add msbuild to PATH
|
|
uses: microsoft/setup-msbuild@v1.1
|
|
|
|
- env:
|
|
stepName: Install Glib
|
|
name: ${{ env.stepName }}
|
|
working-directory: FreeRTOS-Plus\ThirdParty\glib
|
|
run: |
|
|
# ${{ env.stepName }}
|
|
echo "::group::${{ env.stepName }}"
|
|
Push-Location
|
|
Get-Location
|
|
& "C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\Common7\Tools\Launch-VsDevShell.ps1"
|
|
Get-Location
|
|
Pop-Location
|
|
|
|
pip install meson
|
|
meson setup build --backend=vs2019 -Dselinux=disabled -Dxattr=false -Dbsymbolic_functions=false -Dtests=false -Dglib_debug=disabled -Dglib_assert=false --buildtype=release
|
|
meson compile -C build
|
|
|
|
echo "::endgroup::"
|
|
if(Test-Path -Path build\glib\glib-2.0.lib) {
|
|
echo "${{ env.pwshPass }} ${{ env.stepName }} ${{ env.pwshEnd }}"
|
|
exit 0
|
|
}else {
|
|
echo "${{ env.pwshFail }} ${{ env.stepName }} ${{ env.pwshEnd }}"
|
|
exit 1
|
|
}
|
|
|
|
- env:
|
|
stepName: Build corePKCS11 Demo
|
|
name: ${{ env.stepName }}
|
|
id: build-corePKCS11-demo
|
|
working-directory: FreeRTOS-Plus/Demo/corePKCS11_Windows_Simulator
|
|
run: |
|
|
# ${{ env.stepName }}
|
|
echo "::group::${{ env.stepName }}"
|
|
msbuild CorePKCS11_Demos.sln -t:rebuild -property:Configuration=Debug_with_Libslirp -property:Platform=Win32 -m
|
|
if($? -eq 1) {
|
|
echo "::endgroup::"
|
|
echo "${{ env.pwshPass }} ${{ env.stepName }} ${{ env.pwshEnd }}"
|
|
}else {
|
|
echo "::endgroup::"
|
|
echo "${{ env.pwshFail }} ${{ env.stepName }} ${{ env.pwshEnd }}"
|
|
exit 1
|
|
}
|
|
|
|
- env:
|
|
stepName: Run and monitor corePKCS11 Demo
|
|
name: ${{ env.stepName }}
|
|
uses: FreeRTOS/CI-CD-GitHub-Actions/executable-monitor@main
|
|
with:
|
|
exe-path: FreeRTOS-Plus/Demo/corePKCS11_Windows_Simulator/Debug_with_Libslirp/CorePKCS11_Demos.exe
|
|
log-dir: demo_run_logs
|
|
timeout-seconds: 30
|
|
success-line: "Finished DEMO"
|
|
success-exit-code: 0
|
|
retry-attempts: 3
|
|
|
|
winsim_corelibs:
|
|
name: core Library Windows Simulator Demos
|
|
runs-on: windows-2019
|
|
steps:
|
|
- name: Checkout Repository
|
|
uses: actions/checkout@v3
|
|
|
|
- env:
|
|
stepName: Fetch Submodules
|
|
name: ${{ env.stepName }}
|
|
shell: bash
|
|
run: |
|
|
# ${{ env.stepName }}
|
|
echo -e "::group::${{ env.stepName }}"
|
|
git submodule update --checkout --init --depth 1 \
|
|
FreeRTOS/Source \
|
|
FreeRTOS-Plus/Source/AWS/device-defender \
|
|
FreeRTOS-Plus/Source/AWS/device-shadow \
|
|
FreeRTOS-Plus/Source/AWS/fleet-provisioning \
|
|
FreeRTOS-Plus/Source/AWS/jobs \
|
|
FreeRTOS-Plus/Source/AWS/ota \
|
|
FreeRTOS-Plus/Source/AWS/sigv4 \
|
|
FreeRTOS-Plus/Source/FreeRTOS-Cellular-Interface \
|
|
FreeRTOS-Plus/Source/FreeRTOS-Cellular-Modules/bg96 \
|
|
FreeRTOS-Plus/Source/FreeRTOS-Cellular-Modules/hl7802 \
|
|
FreeRTOS-Plus/Source/FreeRTOS-Cellular-Modules/sara-r4 \
|
|
FreeRTOS-Plus/Source/Application-Protocols/coreHTTP \
|
|
FreeRTOS-Plus/Source/Application-Protocols/coreMQTT \
|
|
FreeRTOS-Plus/Source/Application-Protocols/coreMQTT-Agent \
|
|
FreeRTOS-Plus/Source/Application-Protocols/coreSNTP \
|
|
FreeRTOS-Plus/Source/FreeRTOS-Plus-TCP \
|
|
FreeRTOS-Plus/Source/Utilities/backoff_algorithm \
|
|
FreeRTOS-Plus/Source/coreJSON \
|
|
FreeRTOS-Plus/Source/corePKCS11 \
|
|
FreeRTOS-Plus/ThirdParty/mbedtls \
|
|
FreeRTOS-Plus/ThirdParty/tinycbor \
|
|
FreeRTOS-Plus/ThirdParty/wolfSSL \
|
|
FreeRTOS-Plus/ThirdParty/glib \
|
|
FreeRTOS-Plus/ThirdParty/libslirp
|
|
|
|
git -C FreeRTOS-Plus/Source/Application-Protocols/coreHTTP submodule update --checkout --init --depth 1 source/dependency/3rdparty/llhttp
|
|
git -C FreeRTOS-Plus/Source/corePKCS11 submodule update --checkout --init --depth 1 source/dependency/3rdparty/pkcs11
|
|
echo "::endgroup::"
|
|
echo -e "${{ env.bashPass }} ${{ env.stepName }} ${{ env.bashEnd }} "
|
|
|
|
- name: Add msbuild to PATH
|
|
uses: microsoft/setup-msbuild@v1.1
|
|
|
|
- env:
|
|
stepName: Install Glib
|
|
name: ${{ env.stepName }}
|
|
working-directory: FreeRTOS-Plus\ThirdParty\glib
|
|
run: |
|
|
# ${{ env.stepName }}
|
|
echo "::group::${{ env.stepName }}"
|
|
Push-Location
|
|
Get-Location
|
|
& "C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\Common7\Tools\Launch-VsDevShell.ps1"
|
|
Get-Location
|
|
Pop-Location
|
|
|
|
pip install meson
|
|
meson setup build --backend=vs2019 -Dselinux=disabled -Dxattr=false -Dbsymbolic_functions=false -Dtests=false -Dglib_debug=disabled -Dglib_assert=false --buildtype=release
|
|
meson compile -C build
|
|
|
|
echo "::endgroup::"
|
|
if(Test-Path -Path build\glib\glib-2.0.lib) {
|
|
echo "${{ env.pwshPass }} ${{ env.stepName }} ${{ env.pwshEnd }}"
|
|
exit 0
|
|
}else {
|
|
echo "${{ env.pwshFail }} ${{ env.stepName }} ${{ env.pwshEnd }}"
|
|
exit 1
|
|
}
|
|
|
|
- name: Generate SSL credentials
|
|
id: generate-credentials
|
|
uses: FreeRTOS/CI-CD-GitHub-Actions/ssl-credential-creator@main
|
|
|
|
- name: Start localhost MQTT broker
|
|
id: mqtt-broker
|
|
uses: FreeRTOS/CI-CD-GitHub-Actions/localhost-mqtt-broker@main
|
|
with:
|
|
root-ca-cert-path:
|
|
${{ steps.generate-credentials.outputs.root-ca-cert-path }}
|
|
server-priv-key-path:
|
|
${{ steps.generate-credentials.outputs.server-priv-key-path }}
|
|
server-cert-path:
|
|
${{ steps.generate-credentials.outputs.server-cert-path }}
|
|
|
|
- env:
|
|
stepName: Update main.c to force stdout to write immediately
|
|
name: ${{ env.stepName }}
|
|
working-directory: FreeRTOS-Plus/Demo/coreMQTT_Windows_Simulator/Common
|
|
run: |
|
|
$content = Get-Content -Path 'main.c' -Raw
|
|
$newContent = $content -replace 'int\s+main(.*?)void(.*?)\r?\n\s*{', 'int main( void ){setvbuf( stdout, NULL, _IONBF, 0 );'
|
|
$newContent | Set-Content -Path 'main.c'
|
|
|
|
- env:
|
|
stepName: Configure MQTT Plain Text Demo
|
|
name: ${{ env.stepName }}
|
|
shell: bash
|
|
working-directory: FreeRTOS-Plus/Demo/coreMQTT_Windows_Simulator/MQTT_Plain_Text
|
|
run: |
|
|
# ${{ env.stepName }}
|
|
echo -e "::group::${{ env.stepName }}"
|
|
echo '#define democonfigCLIENT_IDENTIFIER "mqtt_demo_test"' >> demo_config.h
|
|
echo '#define democonfigMQTT_BROKER_ENDPOINT "127.0.0.1"' >> demo_config.h
|
|
echo '#define democonfigMQTT_BROKER_PORT ( 1883 )' >> demo_config.h
|
|
echo "::endgroup::"
|
|
echo -e "${{ env.bashPass }} ${{ env.stepName }} ${{ env.bashEnd }} "
|
|
|
|
- env:
|
|
stepName: Build MQTT Plain Text Demo
|
|
name: ${{ env.stepName }}
|
|
id: build-mqtt-plain-text-demo
|
|
working-directory: FreeRTOS-Plus/Demo/coreMQTT_Windows_Simulator/MQTT_Plain_Text
|
|
run: |
|
|
# ${{ env.stepName }}
|
|
echo "::group::${{ env.stepName }}"
|
|
msbuild mqtt_plain_text_demo.sln -t:rebuild -property:Configuration=Debug_with_Libslirp -property:Platform=Win32 -m
|
|
if($? -eq 1) {
|
|
echo "::endgroup::"
|
|
echo "${{ env.pwshPass }} ${{ env.stepName }} ${{ env.pwshEnd }}"
|
|
}else {
|
|
echo "::endgroup::"
|
|
echo "${{ env.pwshFail }} ${{ env.stepName }} ${{ env.pwshEnd }}"
|
|
exit 1
|
|
}
|
|
|
|
- env:
|
|
stepName: Run and monitor MQTT Plain Text Demo
|
|
name: ${{ env.stepName }}
|
|
uses: FreeRTOS/CI-CD-GitHub-Actions/executable-monitor@main
|
|
with:
|
|
exe-path: FreeRTOS-Plus/Demo/coreMQTT_Windows_Simulator/MQTT_Plain_Text/Debug_with_Libslirp/MQTT_Plain_Text.exe
|
|
log-dir: demo_run_logs
|
|
timeout-seconds: 120
|
|
success-line: "Demo completed successfully"
|
|
retry-attempts: 3
|
|
|
|
- env:
|
|
stepName: Configure MQTT Basic TLS Demo
|
|
name: ${{ env.stepName }}
|
|
shell: bash
|
|
working-directory: FreeRTOS-Plus/Demo/coreMQTT_Windows_Simulator/MQTT_Basic_TLS
|
|
run: |
|
|
# ${{ env.stepName }}
|
|
echo -e "::group::${{ env.stepName }}"
|
|
echo '#define democonfigROOT_CA_PEM \' >> demo_config.h
|
|
sed 's/.*/"&\\n"\\/' ${{ steps.generate-credentials.outputs.root-ca-cert-path }} >> root_ca_cert.txt
|
|
sed '$ s/.$//' root_ca_cert.txt >> demo_config.h
|
|
echo '#define democonfigCLIENT_IDENTIFIER "mqtt_demo_test"' >> demo_config.h
|
|
echo '#define democonfigMQTT_BROKER_ENDPOINT "127.0.0.1"' >> demo_config.h
|
|
echo '#define democonfigMQTT_BROKER_PORT ( 8883 )' >> demo_config.h
|
|
sed -i -z "s/define[[:space:]]*democonfigDISABLE_SNI[[:space:]]*([[:space:]]*[a-zA-Z0-9]\+[[:space:]]*)/define democonfigDISABLE_SNI ( pdTRUE )/g" demo_config.h
|
|
exitStatus=$?
|
|
echo "::endgroup::"
|
|
echo -e "${{ env.bashPass }} ${{ env.stepName }} ${{ env.bashEnd }} "
|
|
|
|
- env:
|
|
stepName: Build MQTT Basic TLS Demo
|
|
name: ${{ env.stepName }}
|
|
id: build-mqtt-basic-tls-demo
|
|
working-directory: FreeRTOS-Plus/Demo/coreMQTT_Windows_Simulator/MQTT_Basic_TLS
|
|
run: |
|
|
# ${{ env.stepName }}
|
|
echo "::group::${{ env.stepName }}"
|
|
msbuild mqtt_basic_tls_demo.sln -t:rebuild -property:Configuration=Debug_with_Libslirp -property:Platform=Win32 -m
|
|
if($? -eq 1) {
|
|
echo "::endgroup::"
|
|
echo "${{ env.pwshPass }} ${{ env.stepName }} ${{ env.pwshEnd }}"
|
|
}else {
|
|
echo "::endgroup::"
|
|
echo "${{ env.pwshFail }} ${{ env.stepName }} ${{ env.pwshEnd }}"
|
|
exit 1
|
|
}
|
|
|
|
- env:
|
|
stepName: Run and monitor MQTT Basic TLS Demo
|
|
name: ${{ env.stepName }}
|
|
uses: FreeRTOS/CI-CD-GitHub-Actions/executable-monitor@main
|
|
with:
|
|
exe-path: FreeRTOS-Plus/Demo/coreMQTT_Windows_Simulator/MQTT_Basic_TLS/Debug_with_Libslirp/MQTT_Basic_TLS.exe
|
|
log-dir: demo_run_logs
|
|
timeout-seconds: 120
|
|
success-line: "Demo completed successfully"
|
|
retry-attempts: 3
|
|
|
|
- env:
|
|
stepName: Configure MQTT Mutual Authentication with mbedtls Demo
|
|
name: ${{ env.stepName }}
|
|
shell: bash
|
|
working-directory: FreeRTOS-Plus/Demo/coreMQTT_Windows_Simulator/MQTT_Mutual_Auth
|
|
run: |
|
|
# ${{ env.stepName }}
|
|
echo -e "::group::${{ env.stepName }}"
|
|
echo '#define democonfigROOT_CA_PEM \' >> demo_config.h
|
|
sed 's/.*/"&\\n"\\/' ${{ steps.generate-credentials.outputs.root-ca-cert-path }} >> root_ca_cert.txt
|
|
sed '$ s/.$//' root_ca_cert.txt >> demo_config.h
|
|
echo '#define democonfigCLIENT_CERTIFICATE_PEM \' >> demo_config.h
|
|
sed 's/.*/"&\\n"\\/' ${{ steps.generate-credentials.outputs.device-cert-path }} >> device_cert.txt
|
|
sed '$ s/.$//' device_cert.txt >> demo_config.h
|
|
echo '#define democonfigCLIENT_PRIVATE_KEY_PEM \' >> demo_config.h
|
|
sed 's/.*/"&\\n"\\/' ${{ steps.generate-credentials.outputs.device-priv-key-path }} >> device_priv_key.txt
|
|
sed '$ s/.$//' device_priv_key.txt >> demo_config.h
|
|
echo '#define democonfigCLIENT_IDENTIFIER "mqtt_demo_test"' >> demo_config.h
|
|
echo '#define democonfigMQTT_BROKER_ENDPOINT "127.0.0.1"' >> demo_config.h
|
|
echo '#define democonfigMQTT_BROKER_PORT ( 8883 )' >> demo_config.h
|
|
sed -i -z "s/define[[:space:]]*democonfigDISABLE_SNI[[:space:]]*([[:space:]]*[a-zA-Z0-9]\+[[:space:]]*)/define democonfigDISABLE_SNI ( pdTRUE )/g" demo_config.h
|
|
echo "::endgroup::"
|
|
echo -e "${{ env.bashPass }} ${{ env.stepName }} ${{ env.bashEnd }} "
|
|
|
|
- env:
|
|
stepName: Build MQTT Mutual Authentication with mbedtls Demo
|
|
name: ${{ env.stepName }}
|
|
id: build-mqtt-mutual-auth-demo
|
|
working-directory: FreeRTOS-Plus/Demo/coreMQTT_Windows_Simulator/MQTT_Mutual_Auth
|
|
run: |
|
|
# ${{ env.stepName }}
|
|
echo "::group::${{ env.stepName }}"
|
|
msbuild mqtt_mutual_auth_demo.sln -t:rebuild -property:Configuration=Debug_with_Libslirp -property:Platform=Win32 -m
|
|
if($? -eq 1) {
|
|
echo "::endgroup::"
|
|
echo "${{ env.pwshPass }} ${{ env.stepName }} ${{ env.pwshEnd }}"
|
|
}else {
|
|
echo "::endgroup::"
|
|
echo "${{ env.pwshFail }} ${{ env.stepName }} ${{ env.pwshEnd }}"
|
|
exit 1
|
|
}
|
|
|
|
- env:
|
|
stepName: Run and monitor MQTT Mutual Authentication with mbedtls Demo
|
|
name: ${{ env.stepName }}
|
|
uses: FreeRTOS/CI-CD-GitHub-Actions/executable-monitor@main
|
|
with:
|
|
exe-path: FreeRTOS-Plus/Demo/coreMQTT_Windows_Simulator/MQTT_Mutual_Auth/Debug_with_Libslirp/MQTT_Mutual_Auth.exe
|
|
log-dir: demo_run_logs
|
|
timeout-seconds: 120
|
|
success-line: "Demo completed successfully"
|
|
retry-attempts: 3
|
|
|
|
- env:
|
|
stepName: Configure MQTT Keep Alive Demo
|
|
name: ${{ env.stepName }}
|
|
shell: bash
|
|
working-directory: FreeRTOS-Plus/Demo/coreMQTT_Windows_Simulator/MQTT_Keep_Alive
|
|
run: |
|
|
# ${{ env.stepName }}
|
|
echo -e "::group::${{ env.stepName }}"
|
|
echo '#ifndef DEMO_CONFIG_H_TEST_BUILD' >> demo_config.h
|
|
echo ' #define DEMO_CONFIG_H_TEST_BUILD' >> demo_config.h
|
|
echo ' #define democonfigCLIENT_IDENTIFIER "mqtt_demo_test"' >> demo_config.h
|
|
echo ' #define democonfigMQTT_BROKER_ENDPOINT "127.0.0.1"' >> demo_config.h
|
|
echo ' #define democonfigMQTT_BROKER_PORT ( 1883 )' >> demo_config.h
|
|
echo '#endif /* DEMO_CONFIG_H_TEST_BUILD */' >> demo_config.h
|
|
echo "::endgroup::"
|
|
echo -e "${{ env.bashPass }} ${{ env.stepName }} ${{ env.bashEnd }} "
|
|
|
|
- env:
|
|
stepName: Build MQTT Keep Alive Demo
|
|
name: ${{ env.stepName }}
|
|
id: build-mqtt-keep-alive-demo
|
|
working-directory: FreeRTOS-Plus/Demo/coreMQTT_Windows_Simulator/MQTT_Keep_Alive
|
|
run: |
|
|
# ${{ env.stepName }}
|
|
echo "::group::${{ env.stepName }}"
|
|
msbuild mqtt_keep_alive_demo.sln -t:rebuild -property:Configuration=Debug_with_Libslirp -property:Platform=Win32 -m
|
|
if($? -eq 1) {
|
|
echo "::endgroup::"
|
|
echo "${{ env.pwshPass }} ${{ env.stepName }} ${{ env.pwshEnd }}"
|
|
}else {
|
|
echo "::endgroup::"
|
|
echo "${{ env.pwshFail }} ${{ env.stepName }} ${{ env.pwshEnd }}"
|
|
exit 1
|
|
}
|
|
|
|
- env:
|
|
stepName: Run and monitor MQTT Keep Alive Demo
|
|
name: ${{ env.stepName }}
|
|
uses: FreeRTOS/CI-CD-GitHub-Actions/executable-monitor@main
|
|
with:
|
|
exe-path: FreeRTOS-Plus/Demo/coreMQTT_Windows_Simulator/MQTT_Keep_Alive/Debug_with_Libslirp/MQTT_Keep_Alive.exe
|
|
log-dir: demo_run_logs
|
|
timeout-seconds: 90
|
|
success-line: "Demo completed successfully"
|
|
retry-attempts: 3
|
|
|
|
- env:
|
|
stepName: Configure MQTT Serializer Demo
|
|
name: ${{ env.stepName }}
|
|
shell: bash
|
|
working-directory: FreeRTOS-Plus/Demo/coreMQTT_Windows_Simulator/MQTT_Serializer
|
|
run: |
|
|
# ${{ env.stepName }}
|
|
echo -e "::group::${{ env.stepName }}"
|
|
echo '#define democonfigCLIENT_IDENTIFIER "mqtt_demo_test"' >> demo_config.h
|
|
echo '#define democonfigMQTT_BROKER_ENDPOINT "127.0.0.1"' >> demo_config.h
|
|
echo '#define democonfigMQTT_BROKER_PORT ( 1883 )' >> demo_config.h
|
|
echo "::endgroup::"
|
|
echo -e "${{ env.bashPass }} ${{ env.stepName }} ${{ env.bashEnd }} "
|
|
|
|
- env:
|
|
stepName: Build MQTT Serializer Demo
|
|
name: ${{ env.stepName }}
|
|
id: build-mqtt-serializer-demo
|
|
working-directory: FreeRTOS-Plus/Demo/coreMQTT_Windows_Simulator/MQTT_Serializer
|
|
run:
|
|
msbuild mqtt_serializer_demo.sln -t:rebuild
|
|
-property:Configuration=Debug_with_Libslirp
|
|
-property:Platform=Win32 -m
|
|
|
|
- env:
|
|
stepName: Run and monitor MQTT Serializer Demo
|
|
name: ${{ env.stepName }}
|
|
uses: FreeRTOS/CI-CD-GitHub-Actions/executable-monitor@main
|
|
with:
|
|
exe-path: FreeRTOS-Plus/Demo/coreMQTT_Windows_Simulator/MQTT_Serializer/Debug_with_Libslirp/MQTT_Serializer.exe
|
|
log-dir: demo_run_logs
|
|
timeout-seconds: 90
|
|
success-line: "Demo completed successfully"
|
|
retry-attempts: 3
|
|
|
|
- env:
|
|
stepName: Configure MQTT Mutual Authentication with WolfSSL Demo
|
|
name: ${{ env.stepName }}
|
|
shell: bash
|
|
working-directory: FreeRTOS-Plus/Demo/coreMQTT_Windows_Simulator/MQTT_Mutual_Auth_wolfSSL
|
|
run: |
|
|
# ${{ env.stepName }}
|
|
echo -e "::group::${{ env.stepName }}"
|
|
echo '#define democonfigCREDENTIALS_IN_BUFFER 0' >> demo_config.h
|
|
echo '#define democonfigROOT_CA_PEM \' >> demo_config.h
|
|
sed 's/.*/"&\\n"\\/' ${{ steps.generate-credentials.outputs.root-ca-cert-path }} >> root_ca_cert.txt
|
|
sed '$ s/.$//' root_ca_cert.txt >> demo_config.h
|
|
echo '#define democonfigCLIENT_CERTIFICATE_PEM \' >> demo_config.h
|
|
sed 's/.*/"&\\n"\\/' ${{ steps.generate-credentials.outputs.device-cert-path }} >> device_cert.txt
|
|
sed '$ s/.$//' device_cert.txt >> demo_config.h
|
|
echo '#define democonfigCLIENT_PRIVATE_KEY_PEM \' >> demo_config.h
|
|
sed 's/.*/"&\\n"\\/' ${{ steps.generate-credentials.outputs.device-priv-key-path }} >> device_priv_key.txt
|
|
sed '$ s/.$//' device_priv_key.txt >> demo_config.h
|
|
echo '#define democonfigCLIENT_IDENTIFIER "mqtt_demo_test"' >> demo_config.h
|
|
echo '#define democonfigMQTT_BROKER_ENDPOINT "127.0.0.1"' >> demo_config.h
|
|
echo '#define democonfigMQTT_BROKER_PORT ( 8883 )' >> demo_config.h
|
|
echo "::endgroup::"
|
|
echo -e "${{ env.bashPass }} ${{ env.stepName }} ${{ env.bashEnd }} "
|
|
|
|
- env:
|
|
stepName: Build MQTT Mutual Authentication with WolfSSL Demo
|
|
name: ${{ env.stepName }}
|
|
id: build-mqtt-mutual-auth-with-wolfssl-demo
|
|
working-directory: FreeRTOS-Plus/Demo/coreMQTT_Windows_Simulator/MQTT_Mutual_Auth_wolfSSL
|
|
run: |
|
|
# ${{ env.stepName }}
|
|
echo "::group::${{ env.stepName }}"
|
|
msbuild mqtt_mutual_auth_demo_wolfSSL.sln -t:rebuild -property:Configuration=Debug_with_Libslirp -property:Platform=Win32 -m
|
|
if($? -eq 1) {
|
|
echo "::endgroup::"
|
|
echo "${{ env.pwshPass }} ${{ env.stepName }} ${{ env.pwshEnd }}"
|
|
}else {
|
|
echo "::endgroup::"
|
|
echo "${{ env.pwshFail }} ${{ env.stepName }} ${{ env.pwshEnd }}"
|
|
exit 1
|
|
}
|
|
|
|
- env:
|
|
stepName: Run and monitor MQTT Mutual Authentication with WolfSSL Demo
|
|
name: ${{ env.stepName }}
|
|
uses: FreeRTOS/CI-CD-GitHub-Actions/executable-monitor@main
|
|
with:
|
|
exe-path: FreeRTOS-Plus/Demo/coreMQTT_Windows_Simulator/MQTT_Mutual_Auth_wolfSSL/Debug/RTOSDemo.exe
|
|
log-dir: demo_run_logs
|
|
timeout-seconds: 90
|
|
success-line: "Demo completed successfully"
|
|
retry-attempts: 3
|
|
|
|
- env:
|
|
stepName: Configure MQTT Multi-Task Demo
|
|
name: ${{ env.stepName }}
|
|
shell: bash
|
|
working-directory: FreeRTOS-Plus/Demo/coreMQTT_Windows_Simulator/MQTT_Multitask
|
|
run: |
|
|
# ${{ env.stepName }}
|
|
echo -e "::group::${{ env.stepName }}"
|
|
echo '#ifndef DEMO_CONFIG_H_TEST_BUILD' | tee -a demo_config.h
|
|
echo ' #define DEMO_CONFIG_H_TEST_BUILD' | tee -a demo_config.h
|
|
echo ' #define democonfigCLIENT_CERTIFICATE_PEM ""' | tee -a demo_config.h
|
|
echo ' #define democonfigCLIENT_IDENTIFIER ""' | tee -a demo_config.h
|
|
echo ' #define democonfigCLIENT_PRIVATE_KEY_PEM ""' | tee -a demo_config.h
|
|
echo ' #define democonfigMQTT_BROKER_ENDPOINT ""' | tee -a demo_config.h
|
|
echo ' #define democonfigMQTT_BROKER_PORT ( 8883 )' | tee -a demo_config.h
|
|
echo ' #define democonfigROOT_CA_PEM ""' | tee -a demo_config.h
|
|
echo '#endif /* DEMO_CONFIG_H_TEST_BUILD */' | tee -a demo_config.h
|
|
echo "::endgroup::"
|
|
echo -e "${{ env.bashPass }} ${{ env.stepName }} ${{ env.bashEnd }} "
|
|
|
|
- env:
|
|
stepName: Build MQTT Multi-Task Demo
|
|
name: ${{ env.stepName }}
|
|
id: build-mqtt-multitask-demo
|
|
working-directory: FreeRTOS-Plus/Demo/coreMQTT_Windows_Simulator/MQTT_Multitask
|
|
run: |
|
|
# ${{ env.stepName }}
|
|
echo "::group::${{ env.stepName }}"
|
|
msbuild mqtt_multitask_demo.sln -t:rebuild -property:Configuration=Debug -m
|
|
if($? -eq 1) {
|
|
echo "::endgroup::"
|
|
echo "${{ env.pwshPass }} ${{ env.stepName }} ${{ env.pwshEnd }}"
|
|
}else {
|
|
echo "::endgroup::"
|
|
echo "${{ env.pwshFail }} ${{ env.stepName }} ${{ env.pwshEnd }}"
|
|
exit 1
|
|
}
|
|
|
|
- env:
|
|
stepName: Configure corePKCS11_MQTT_Mutual_Auth_Windows_Simulator
|
|
name: ${{ env.stepName }}
|
|
shell: bash
|
|
working-directory: FreeRTOS-Plus/Demo/corePKCS11_MQTT_Mutual_Auth_Windows_Simulator
|
|
run: |
|
|
# ${{ env.stepName }}
|
|
echo -e "::group::${{ env.stepName }}"
|
|
echo '#ifndef DEMO_CONFIG_H_TEST_BUILD' | tee -a demo_config.h
|
|
echo ' #define DEMO_CONFIG_H_TEST_BUILD' | tee -a demo_config.h
|
|
echo ' #define democonfigCLIENT_CERTIFICATE_PEM ""' | tee -a demo_config.h
|
|
echo ' #define democonfigCLIENT_IDENTIFIER ""' | tee -a demo_config.h
|
|
echo ' #define democonfigTHING_NAME ""' | tee -a demo_config.h
|
|
echo ' #define democonfigPROVISIONING_TEMPLATE_NAME ""' | tee -a demo_config.h
|
|
echo ' #define democonfigCLIENT_PRIVATE_KEY_PEM ""' | tee -a demo_config.h
|
|
echo ' #define democonfigCLIENT_PRIVATE_KEY_PEM ""' | tee -a demo_config.h
|
|
echo ' #define democonfigMQTT_BROKER_ENDPOINT ""' | tee -a demo_config.h
|
|
echo ' #define democonfigMQTT_BROKER_PORT ( 8883 )' | tee -a demo_config.h
|
|
echo ' #define democonfigROOT_CA_PEM ""' | tee -a demo_config.h
|
|
echo '#endif /* DEMO_CONFIG_H_TEST_BUILD */' | tee -a demo_config.h
|
|
echo "::endgroup::"
|
|
echo -e "${{ env.bashPass }} ${{ env.stepName }} ${{ env.bashEnd }} "
|
|
|
|
- env:
|
|
stepName: Build corePKCS11 + coreMQTT Mutual Auth Demo
|
|
name: ${{ env.stepName }}
|
|
working-directory: FreeRTOS-Plus/Demo/corePKCS11_MQTT_Mutual_Auth_Windows_Simulator
|
|
run: |
|
|
# ${{ env.stepName }}
|
|
echo "::group::${{ env.stepName }}"
|
|
msbuild corePKCS11_MQTT_Mutual_Auth.sln -t:rebuild -property:Configuration=Debug -property:Platform=Win32 -m
|
|
|
|
- env:
|
|
stepName: Configure coreSNTP_Windows_Simulator
|
|
name: ${{ env.stepName }}
|
|
shell: bash
|
|
working-directory: FreeRTOS-Plus/Demo/coreSNTP_Windows_Simulator
|
|
run: |
|
|
# ${{ env.stepName }}
|
|
echo -e "::group::${{ env.stepName }}"
|
|
echo '#ifndef DEMO_CONFIG_H_TEST_BUILD' | tee -a demo_config.h
|
|
echo ' #define DEMO_CONFIG_H_TEST_BUILD' | tee -a demo_config.h
|
|
echo ' #define democonfigLIST_OF_TIME_SERVERS ""' | tee -a demo_config.h
|
|
echo ' #define democonfigLIST_OF_AUTHENTICATION_SYMMETRIC_KEYS ""' | tee -a demo_config.h
|
|
echo ' #define democonfigLIST_OF_AUTHENTICATION_KEY_IDS ""' | tee -a demo_config.h
|
|
echo ' #define democonfigSNTP_CLIENT_POLLING_INTERVAL_SECONDS 500U' | tee -a demo_config.h
|
|
echo '#endif /* DEMO_CONFIG_H_TEST_BUILD */' | tee -a demo_config.h
|
|
echo "::endgroup::"
|
|
echo -e "${{ env.bashPass }} ${{ env.stepName }} ${{ env.bashEnd }} "
|
|
|
|
- env:
|
|
stepName: Build coreSNTP Demo
|
|
name: ${{ env.stepName }}
|
|
working-directory: FreeRTOS-Plus/Demo/coreSNTP_Windows_Simulator
|
|
run: |
|
|
# ${{ env.stepName }}
|
|
echo "::group::${{ env.stepName }}"
|
|
msbuild core_sntp_demo.sln -t:rebuild -property:Configuration=Debug -property:Platform=Win32 -m
|
|
if($? -eq 1) {
|
|
echo "::endgroup::"
|
|
echo "${{ env.pwshPass }} ${{ env.stepName }} ${{ env.pwshEnd }}"
|
|
}else {
|
|
echo "::endgroup::"
|
|
echo "${{ env.pwshFail }} ${{ env.stepName }} ${{ env.pwshEnd }}"
|
|
exit 1
|
|
}
|
|
|
|
|
|
winsim_aws_iot:
|
|
name: AWS IoT Windows Simulator Demos
|
|
runs-on: windows-2019
|
|
steps:
|
|
- name: Checkout Repository
|
|
uses: actions/checkout@v3
|
|
|
|
- env:
|
|
stepName: Fetch Submodules
|
|
name: ${{ env.stepName }}
|
|
shell: bash
|
|
run: |
|
|
# ${{ env.stepName }}
|
|
echo -e "::group::${{ env.stepName }}"
|
|
git submodule update --checkout --init --depth 1 \
|
|
FreeRTOS/Source \
|
|
FreeRTOS-Plus/Source/AWS/device-defender \
|
|
FreeRTOS-Plus/Source/AWS/device-shadow \
|
|
FreeRTOS-Plus/Source/AWS/fleet-provisioning \
|
|
FreeRTOS-Plus/Source/AWS/jobs \
|
|
FreeRTOS-Plus/Source/AWS/ota \
|
|
FreeRTOS-Plus/Source/AWS/sigv4 \
|
|
FreeRTOS-Plus/Source/FreeRTOS-Cellular-Interface \
|
|
FreeRTOS-Plus/Source/FreeRTOS-Cellular-Modules/bg96 \
|
|
FreeRTOS-Plus/Source/FreeRTOS-Cellular-Modules/hl7802 \
|
|
FreeRTOS-Plus/Source/FreeRTOS-Cellular-Modules/sara-r4 \
|
|
FreeRTOS-Plus/Source/Application-Protocols/coreHTTP \
|
|
FreeRTOS-Plus/Source/Application-Protocols/coreMQTT \
|
|
FreeRTOS-Plus/Source/Application-Protocols/coreMQTT-Agent \
|
|
FreeRTOS-Plus/Source/Application-Protocols/coreSNTP \
|
|
FreeRTOS-Plus/Source/FreeRTOS-Plus-TCP \
|
|
FreeRTOS-Plus/Source/Utilities/backoff_algorithm \
|
|
FreeRTOS-Plus/Source/coreJSON \
|
|
FreeRTOS-Plus/Source/corePKCS11 \
|
|
FreeRTOS-Plus/ThirdParty/mbedtls \
|
|
FreeRTOS-Plus/ThirdParty/tinycbor \
|
|
FreeRTOS-Plus/ThirdParty/wolfSSL
|
|
|
|
git -C FreeRTOS-Plus/Source/Application-Protocols/coreHTTP submodule update --checkout --init --depth 1 source/dependency/3rdparty/llhttp
|
|
git -C FreeRTOS-Plus/Source/corePKCS11 submodule update --checkout --init --depth 1 source/dependency/3rdparty/pkcs11
|
|
echo "::endgroup::"
|
|
echo -e "${{ env.bashPass }} ${{ env.stepName }} ${{ env.bashEnd }} "
|
|
|
|
- name: Add msbuild to PATH
|
|
uses: microsoft/setup-msbuild@v1.1
|
|
|
|
- env:
|
|
stepName: Adjust Configuration files
|
|
name: ${{ env.stepName }}
|
|
shell: bash
|
|
working-directory: FreeRTOS-Plus/Demo/AWS
|
|
run: |
|
|
# ${{ env.stepName }}
|
|
echo -e "::group::${{ env.stepName }}"
|
|
echo '#ifndef DEMO_CONFIG_H_TEST_BUILD' | tee -a */*/demo_config.h
|
|
echo ' #define DEMO_CONFIG_H_TEST_BUILD' | tee -a */*/demo_config.h
|
|
echo ' #define democonfigCLIENT_CERTIFICATE_PEM ""' | tee -a */*/demo_config.h
|
|
echo ' #define democonfigCLIENT_IDENTIFIER ""' | tee -a */*/demo_config.h
|
|
echo ' #define democonfigTHING_NAME ""' | tee -a */*/demo_config.h
|
|
echo ' #define democonfigPROVISIONING_TEMPLATE_NAME ""' | tee -a */*/demo_config.h
|
|
echo ' #define democonfigCLIENT_PRIVATE_KEY_PEM ""' | tee -a */*/demo_config.h
|
|
echo ' #define democonfigCLIENT_PRIVATE_KEY_PEM ""' | tee -a */*/demo_config.h
|
|
echo ' #define democonfigMQTT_BROKER_ENDPOINT ""' | tee -a */*/demo_config.h
|
|
echo ' #define democonfigMQTT_BROKER_PORT ( 8883 )' | tee -a */*/demo_config.h
|
|
echo ' #define democonfigROOT_CA_PEM ""' | tee -a */*/demo_config.h
|
|
echo '#endif /* DEMO_CONFIG_H_TEST_BUILD */' | tee -a */*/demo_config.h
|
|
echo "::endgroup::"
|
|
echo -e "${{ env.bashPass }} ${{ env.stepName }} ${{ env.bashEnd }} "
|
|
|
|
- env:
|
|
stepName: Build AWS IoT Device Defender Demo
|
|
name: ${{ env.stepName }}
|
|
working-directory: FreeRTOS-Plus/Demo/AWS/Device_Defender_Windows_Simulator/Device_Defender_Demo
|
|
run: |
|
|
# ${{ env.stepName }}
|
|
echo "::group::${{ env.stepName }}"
|
|
msbuild defender_demo.sln -t:rebuild -property:Configuration=Debug -m
|
|
if($? -eq 1) {
|
|
echo "::endgroup::"
|
|
echo "${{ env.pwshPass }} ${{ env.stepName }} ${{ env.pwshEnd }}"
|
|
}else {
|
|
echo "::endgroup::"
|
|
echo "${{ env.pwshFail }} ${{ env.stepName }} ${{ env.pwshEnd }}"
|
|
exit 1
|
|
}
|
|
|
|
- env:
|
|
stepName: Build AWS IoT Device Shadow Demo
|
|
name: ${{ env.stepName }}
|
|
working-directory: FreeRTOS-Plus/Demo/AWS/Device_Shadow_Windows_Simulator/Device_Shadow_Demo
|
|
run: |
|
|
# ${{ env.stepName }}
|
|
echo "::group::${{ env.stepName }}"
|
|
msbuild shadow_main_demo.sln -t:rebuild -property:Configuration=Debug -m
|
|
if($? -eq 1) {
|
|
echo "::endgroup::"
|
|
echo "${{ env.pwshPass }} ${{ env.stepName }} ${{ env.pwshEnd }}"
|
|
}else {
|
|
echo "::endgroup::"
|
|
echo "${{ env.pwshFail }} ${{ env.stepName }} ${{ env.pwshEnd }}"
|
|
exit 1
|
|
}
|
|
|
|
- env:
|
|
stepName: Build AWS IoT Fleet Provisioning Demo
|
|
name: ${{ env.stepName }}
|
|
working-directory: FreeRTOS-Plus/Demo/AWS/Fleet_Provisioning_Windows_Simulator/CSR_Demo
|
|
run: |
|
|
# ${{ env.stepName }}
|
|
echo "::group::${{ env.stepName }}"
|
|
msbuild fleet_provisioning_demo.sln -t:rebuild -property:Configuration=Debug -m
|
|
if($? -eq 1) {
|
|
echo "::endgroup::"
|
|
echo "${{ env.pwshPass }} ${{ env.stepName }} ${{ env.pwshEnd }}"
|
|
}else {
|
|
echo "::endgroup::"
|
|
echo "${{ env.pwshFail }} ${{ env.stepName }} ${{ env.pwshEnd }}"
|
|
exit 1
|
|
}
|
|
|
|
- env:
|
|
stepName: Build AWS IoT Jobs Demo
|
|
name: ${{ env.stepName }}
|
|
working-directory: FreeRTOS-Plus/Demo/AWS/Jobs_Windows_Simulator/Jobs_Demo
|
|
run: |
|
|
# ${{ env.stepName }}
|
|
echo "::group::${{ env.stepName }}"
|
|
msbuild jobs_demo.sln -t:rebuild -property:Configuration=Debug -m
|
|
if($? -eq 1) {
|
|
echo "::endgroup::"
|
|
echo "${{ env.pwshPass }} ${{ env.stepName }} ${{ env.pwshEnd }}"
|
|
}else {
|
|
echo "::endgroup::"
|
|
echo "${{ env.pwshFail }} ${{ env.stepName }} ${{ env.pwshEnd }}"
|
|
exit 1
|
|
}
|
|
|
|
- env:
|
|
stepName: Build AWS IoT OTA over MQTT
|
|
name: ${{ env.stepName }}
|
|
working-directory: FreeRTOS-Plus/Demo/AWS/Ota_Windows_Simulator/Ota_Over_Mqtt_Demo
|
|
run: |
|
|
# ${{ env.stepName }}
|
|
echo "::group::${{ env.stepName }}"
|
|
msbuild ota_over_mqtt_demo.sln -t:rebuild -property:Configuration=Debug -m
|
|
if($? -eq 1) {
|
|
echo "::endgroup::"
|
|
echo "${{ env.pwshPass }} ${{ env.stepName }} ${{ env.pwshEnd }}"
|
|
}else {
|
|
echo "::endgroup::"
|
|
echo "${{ env.pwshFail }} ${{ env.stepName }} ${{ env.pwshEnd }}"
|
|
exit 1
|
|
}
|
|
|
|
- env:
|
|
stepName: Build AWS IoT OTA over HTTP
|
|
name: ${{ env.stepName }}
|
|
working-directory: FreeRTOS-Plus/Demo/AWS/Ota_Windows_Simulator/Ota_Over_Http_Demo
|
|
run: |
|
|
# ${{ env.stepName }}
|
|
echo "::group::${{ env.stepName }}"
|
|
msbuild ota_over_http_demo.sln -t:rebuild -property:Configuration=Debug -m
|
|
if($? -eq 1) {
|
|
echo "::endgroup::"
|
|
echo "${{ env.pwshPass }} ${{ env.stepName }} ${{ env.pwshEnd }}"
|
|
}else {
|
|
echo "::endgroup::"
|
|
echo "${{ env.pwshFail }} ${{ env.stepName }} ${{ env.pwshEnd }}"
|
|
exit 1
|
|
}
|
|
|
|
plus_tcp_posix:
|
|
name: FreeRTOS+TCP Posix Simulator Demo
|
|
runs-on: ubuntu-22.04
|
|
steps:
|
|
- name: Checkout Repository
|
|
uses: actions/checkout@v3
|
|
|
|
- env:
|
|
stepName: Fetch Submodules
|
|
shell: bash
|
|
run: |
|
|
# ${{ env.stepName }}
|
|
echo -e "::group::${{ env.stepName }}"
|
|
git submodule update --checkout --init --depth 1 \
|
|
FreeRTOS/Source \
|
|
FreeRTOS-Plus/Source/FreeRTOS-Plus-TCP \
|
|
FreeRTOS-Plus/Source/FreeRTOS-Plus-Trace
|
|
echo "::endgroup::"
|
|
echo -e "${{ env.bashPass }} ${{ env.stepName }} ${{ env.bashEnd }} "
|
|
|
|
- env:
|
|
stepName: Install prerequisite packages
|
|
name: ${{ env.stepName }}
|
|
run: |
|
|
# ${{ env.stepName }}
|
|
echo -e "::group::${{ env.stepName }}"
|
|
sudo apt-get install -y git build-essential libglib2.0-dev libslirp-dev
|
|
echo "::endgroup::"
|
|
echo -e "${{ env.bashPass }} ${{ env.stepName }} ${{ env.bashEnd }} "
|
|
|
|
- name: Start localhost Echo server
|
|
id: echo-server
|
|
uses: FreeRTOS/CI-CD-GitHub-Actions/localhost-echo-server@main
|
|
with:
|
|
port_number: 5000
|
|
|
|
- env:
|
|
stepName: Build FreeRTOS+TCP Echo Posix Demo
|
|
name: ${{ env.stepName }}
|
|
id: build-echo-posix-demo
|
|
working-directory: FreeRTOS-Plus/Demo/FreeRTOS_Plus_TCP_Echo_Posix
|
|
run: |
|
|
# ${{ env.stepName }}
|
|
echo -e "::group::${{ env.stepName }}"
|
|
sed -i -z "s/define[[:space:]]*echoECHO_PORT[[:space:]]*([[:space:]]*[0-9]\+[[:space:]]*)/define echoECHO_PORT ( 5000 )/g" TCPEchoClient_SingleTasks.c
|
|
sed -i -z "s/int[[:space:]]*main[[:space:]]*([[:space:]]*void[[:space:]]*)\n{/int main( void ){setvbuf( stdout, NULL, _IONBF, 0 );/g" main.c
|
|
make -j TRACE_ON_ENTER=0
|
|
echo "::endgroup::"
|
|
echo -e "${{ env.bashPass }} ${{ env.stepName }} ${{ env.bashEnd }} "
|
|
|
|
- env:
|
|
stepName: Run and monitor FreeRTOS+TCP Echo Posix Demo
|
|
name: ${{ env.stepName }}
|
|
uses: FreeRTOS/CI-CD-GitHub-Actions/executable-monitor@main
|
|
with:
|
|
exe-path: FreeRTOS-Plus/Demo/FreeRTOS_Plus_TCP_Echo_Posix/build/posix_tcp_demo
|
|
log-dir: demo_run_logs
|
|
timeout-seconds: 30
|
|
success-line: "Received correct data 3 times"
|
|
retry-attempts: 3
|
|
|
|
plus_tcp_arm:
|
|
name: FreeRTOS+TCP QEMU ARM MPS2 AN385
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- name: Checkout Repository
|
|
uses: actions/checkout@v3
|
|
|
|
- env:
|
|
stepName: Fetch Submodules
|
|
name: ${{ env.stepName }}
|
|
shell: bash
|
|
run: |
|
|
# ${{ env.stepName }}
|
|
echo -e "::group::${{ env.stepName }}"
|
|
git submodule update --checkout --init --depth 1 \
|
|
FreeRTOS/Source \
|
|
FreeRTOS-Plus/Source/FreeRTOS-Plus-TCP
|
|
echo "::endgroup::"
|
|
echo -e "${{ env.bashPass }} ${{ env.stepName }} ${{ env.bashEnd }} "
|
|
|
|
- env:
|
|
stepName: Install prerequisite packages
|
|
name: ${{ env.stepName }}
|
|
run: |
|
|
# ${{ env.stepName }}
|
|
echo -e "::group::${{ env.stepName }}"
|
|
sudo apt-get install -y git make gcc-arm-none-eabi
|
|
echo "::endgroup::"
|
|
echo -e "${{ env.bashPass }} ${{ env.stepName }} ${{ env.bashEnd }} "
|
|
|
|
- env:
|
|
stepName: Build FreeRTOS+TCP Minimal Demo
|
|
name: ${{ env.stepName }}
|
|
working-directory: FreeRTOS-Plus/Demo/FreeRTOS_Plus_TCP_Echo_Qemu_mps2
|
|
run: |
|
|
# ${{ env.stepName }}
|
|
echo -e "::group::${{ env.stepName }}"
|
|
make -j
|
|
echo "::endgroup::"
|
|
echo -e "${{ env.bashPass }} ${{ env.stepName }} ${{ env.bashEnd }} "
|
|
|
|
plus_tcp_winsim:
|
|
name: FreeRTOS+TCP Windows Simulator Demos
|
|
runs-on: windows-2019
|
|
continue-on-error: true
|
|
steps:
|
|
- name: Checkout Repository
|
|
uses: actions/checkout@v3
|
|
|
|
- env:
|
|
stepName: Fetch Submodules
|
|
name: ${{ env.stepName }}
|
|
shell: bash
|
|
run: |
|
|
# ${{ env.stepName }}
|
|
echo -e "::group::${{ env.stepName }}"
|
|
git submodule update --checkout --init --depth 1 \
|
|
FreeRTOS/Source \
|
|
FreeRTOS-Plus/Source/FreeRTOS-Plus-TCP \
|
|
FreeRTOS-Plus/ThirdParty/mbedtls \
|
|
FreeRTOS-Plus/ThirdParty/wolfSSL \
|
|
FreeRTOS-Plus/ThirdParty/glib \
|
|
FreeRTOS-Plus/ThirdParty/libslirp
|
|
echo "::endgroup::"
|
|
echo -e "${{ env.bashPass }} ${{ env.stepName }} ${{ env.bashEnd }} "
|
|
|
|
- name: Add msbuild to PATH
|
|
uses: microsoft/setup-msbuild@v1.1
|
|
|
|
- env:
|
|
stepName: Install Glib
|
|
name: ${{ env.stepName }}
|
|
working-directory: FreeRTOS-Plus\ThirdParty\glib
|
|
run: |
|
|
# ${{ env.stepName }}
|
|
echo "::group::${{ env.stepName }}"
|
|
Push-Location
|
|
Get-Location
|
|
& "C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\Common7\Tools\Launch-VsDevShell.ps1"
|
|
Get-Location
|
|
Pop-Location
|
|
|
|
pip install meson
|
|
meson setup build --backend=vs2019 -Dselinux=disabled -Dxattr=false -Dbsymbolic_functions=false -Dtests=false -Dglib_debug=disabled -Dglib_assert=false --buildtype=release
|
|
meson compile -C build
|
|
|
|
echo "::endgroup::"
|
|
if(Test-Path -Path build\glib\glib-2.0.lib) {
|
|
echo "${{ env.pwshPass }} ${{ env.stepName }} ${{ env.pwshEnd }}"
|
|
exit 0
|
|
}else {
|
|
echo "${{ env.pwshPass }} ${{ env.stepName }} ${{ env.pwshEnd }}"
|
|
exit 1
|
|
}
|
|
|
|
- name: Start localhost Echo server
|
|
id: echo-server
|
|
uses: FreeRTOS/CI-CD-GitHub-Actions/localhost-echo-server@main
|
|
with:
|
|
port_number: 5000
|
|
|
|
- env:
|
|
stepName: Build FreeRTOS+TCP Minimal Demo
|
|
name: ${{ env.stepName }}
|
|
id: build-plus-tcp-minimal-demo
|
|
working-directory: FreeRTOS-Plus/Demo/FreeRTOS_Plus_TCP_Minimal_Windows_Simulator
|
|
run: |
|
|
# ${{ env.stepName }}
|
|
echo "::group::${{ env.stepName }}"
|
|
$content = Get-Content -Path 'DemoTasks\TCPEchoClient_SingleTasks.c' -Raw
|
|
$newContent = $content -replace '#define\s+echoECHO_PORT.*', '#define echoECHO_PORT ( 5000 )'
|
|
$newContent | Set-Content -Path 'DemoTasks\TCPEchoClient_SingleTasks.c'
|
|
$content = Get-Content -Path 'tcp_echo_config.h' -Raw
|
|
$newContent = $content -replace '#define\s+configECHO_SERVER_ADDR.*', '#define configECHO_SERVER_ADDR "127.0.0.1"'
|
|
$newContent | Set-Content -Path 'tcp_echo_config.h'
|
|
$content = Get-Content -Path 'main.c' -Raw
|
|
$newContent = $content -replace 'int\s+main(.*?)void(.*?)\r?\n\s*{', 'int main( void ){setvbuf( stdout, NULL, _IONBF, 0 );'
|
|
$newContent | Set-Content -Path 'main.c'
|
|
msbuild FreeRTOS_Plus_TCP_Minimal.sln -t:rebuild -property:Configuration=Debug_with_Libslirp -property:Platform=Win32 -m
|
|
echo "${{ env.pwshPass }} ${{ env.stepName }} ${{ env.pwshEnd }}"
|
|
|
|
- env:
|
|
stepName: Run and monitor FreeRTOS+TCP Minimal Demo
|
|
name: ${{ env.stepName }}
|
|
uses: FreeRTOS/CI-CD-GitHub-Actions/executable-monitor@main
|
|
with:
|
|
exe-path: FreeRTOS-Plus/Demo/FreeRTOS_Plus_TCP_Minimal_Windows_Simulator/Debug_with_Libslirp/FreeRTOS_Plus_TCP_Minimal.exe
|
|
log-dir: demo_run_logs
|
|
timeout-seconds: 30
|
|
success-line: "Received correct data 3 times"
|
|
retry-attempts: 3
|
|
|
|
- name: Generate SSL credentials
|
|
id: generate-credentials
|
|
uses: FreeRTOS/CI-CD-GitHub-Actions/ssl-credential-creator@main
|
|
|
|
- env:
|
|
stepName: Configure FreeRTOS+WolfSSL Demo
|
|
name: ${{ env.stepName }}
|
|
shell: bash
|
|
working-directory: FreeRTOS-Plus/Demo/FreeRTOS_Plus_WolfSSL_Windows_Simulator
|
|
run: |
|
|
# ${{ env.stepName }}
|
|
echo "::group::${{ env.stepName }}"
|
|
cp ${{ steps.generate-credentials.outputs.root-ca-cert-path }} .
|
|
cp ${{ steps.generate-credentials.outputs.server-cert-path }} .
|
|
cp ${{ steps.generate-credentials.outputs.server-priv-key-path }} .
|
|
sed -i -z "s/ca-cert.pem/root_ca_cert.crt/g" SecureTCPServerTask.c
|
|
sed -i -z "s/server-cert.pem/server_cert.crt/g" SecureTCPServerTask.c
|
|
sed -i -z "s/server-key.pem/server_priv_key.key/g" SecureTCPServerTask.c
|
|
sed -i -z "s/ca-cert.pem/root_ca_cert.crt/g" SecureTCPClientTask.c
|
|
echo "::endgroup::"
|
|
echo -e "${{ env.bashPass }} ${{ env.stepName }} ${{ env.bashEnd }} "
|
|
|
|
- env:
|
|
stepName: Build FreeRTOS+WolfSSL Demo
|
|
name: ${{ env.stepName }}
|
|
id: build-freertos-wolfssl-demo
|
|
working-directory: FreeRTOS-Plus/Demo/FreeRTOS_Plus_WolfSSL_Windows_Simulator
|
|
continue-on-error: true
|
|
run: |
|
|
# ${{ env.stepName }}
|
|
echo "::group::${{ env.stepName }}"
|
|
msbuild FreeRTOS_Plus_WolfSSL.sln -t:rebuild -property:Configuration=Debug_with_Libslirp -property:Platform=Win32 -m
|
|
echo "${{ env.pwshPass }} ${{ env.stepName }} ${{ env.pwshEnd }}"
|
|
|
|
- env:
|
|
stepName: Run and monitor FreeRTOS+WolfSSL Demo
|
|
name: ${{ env.stepName }}
|
|
uses: FreeRTOS/CI-CD-GitHub-Actions/executable-monitor@main
|
|
with:
|
|
exe-path: FreeRTOS-Plus/Demo/FreeRTOS_Plus_WolfSSL_Windows_Simulator/Debug_with_Libslirp/FreeRTOS_Plus_WolfSSL_Windows_Simulator.exe
|
|
log-dir: demo_run_logs
|
|
timeout-seconds: 60
|
|
success-line:
|
|
"Received by the secure server: Message number 9"
|
|
retry-attempts: 3
|
|
|
|
- env:
|
|
stepName: Build FreeRTOS+TCP UDP CLI Demo
|
|
name: ${{ env.stepName }}
|
|
working-directory: FreeRTOS-Plus/Demo/FreeRTOS_Plus_TCP_UDP_Mode_CLI_Windows_Simulator
|
|
run: |
|
|
# ${{ env.stepName }}
|
|
echo "::group::${{ env.stepName }}"
|
|
msbuild FreeRTOS_Plus_UDP_with_CLI.sln -t:rebuild -property:Configuration=Debug -m
|
|
echo "${{ env.pwshPass }} ${{ env.stepName }} ${{ env.pwshEnd }}"
|
|
|
|
winsim_plus_demos:
|
|
name: FreeRTOS+CLI Windows Simulator Demos
|
|
runs-on: windows-2019
|
|
continue-on-error: true
|
|
steps:
|
|
- name: Checkout Repository
|
|
uses: actions/checkout@v3
|
|
|
|
- env:
|
|
stepName: Fetch Submodules
|
|
name: ${{ env.stepName }}
|
|
shell: bash
|
|
run: |
|
|
# ${{ env.stepName }}
|
|
echo -e "::group::${{ env.stepName }}"
|
|
git submodule update --checkout --init --depth 1 \
|
|
FreeRTOS/Source \
|
|
FreeRTOS-Plus/Source/AWS/device-defender \
|
|
FreeRTOS-Plus/Source/AWS/device-shadow \
|
|
FreeRTOS-Plus/Source/AWS/fleet-provisioning \
|
|
FreeRTOS-Plus/Source/AWS/jobs \
|
|
FreeRTOS-Plus/Source/AWS/ota \
|
|
FreeRTOS-Plus/Source/AWS/sigv4 \
|
|
FreeRTOS-Plus/Source/FreeRTOS-Cellular-Interface \
|
|
FreeRTOS-Plus/Source/FreeRTOS-Cellular-Modules/bg96 \
|
|
FreeRTOS-Plus/Source/FreeRTOS-Cellular-Modules/hl7802 \
|
|
FreeRTOS-Plus/Source/FreeRTOS-Cellular-Modules/sara-r4 \
|
|
FreeRTOS-Plus/Source/Application-Protocols/coreHTTP \
|
|
FreeRTOS-Plus/Source/Application-Protocols/coreMQTT \
|
|
FreeRTOS-Plus/Source/Application-Protocols/coreMQTT-Agent \
|
|
FreeRTOS-Plus/Source/Application-Protocols/coreSNTP \
|
|
FreeRTOS-Plus/Source/FreeRTOS-Plus-TCP \
|
|
FreeRTOS-Plus/Source/FreeRTOS-Plus-Trace \
|
|
FreeRTOS-Plus/Source/Utilities/backoff_algorithm \
|
|
FreeRTOS-Plus/Source/coreJSON \
|
|
FreeRTOS-Plus/Source/corePKCS11 \
|
|
FreeRTOS-Plus/ThirdParty/mbedtls \
|
|
FreeRTOS-Plus/ThirdParty/tinycbor \
|
|
FreeRTOS-Plus/ThirdParty/wolfSSL
|
|
|
|
git -C FreeRTOS-Plus/Source/Application-Protocols/coreHTTP submodule update --checkout --init --depth 1 source/dependency/3rdparty/llhttp
|
|
git -C FreeRTOS-Plus/Source/corePKCS11 submodule update --checkout --init --depth 1 source/dependency/3rdparty/pkcs11
|
|
echo "::endgroup::"
|
|
echo -e "${{ env.bashPass }} ${{ env.stepName }} ${{ env.bashEnd }} "
|
|
|
|
- name: Add msbuild to PATH
|
|
uses: microsoft/setup-msbuild@v1.1
|
|
|
|
- env:
|
|
stepName: Build FreeRTOS+CLI+Trace Demo
|
|
name: ${{ env.stepName }}
|
|
working-directory: FreeRTOS-Plus/Demo/FreeRTOS_Plus_CLI_with_Trace_Windows_Simulator
|
|
run: |
|
|
# ${{ env.stepName }}
|
|
echo "::group::Build FreeRTOS+CLI+Trace Demo"
|
|
msbuild FreeRTOS_Plus_CLI_with_Trace.sln -t:rebuild -property:Configuration=Debug -m
|
|
echo "::endgroup::"
|
|
echo "${{ env.pwshPass }} ${{ env.stepName }} ${{ env.pwshEnd }}"
|
|
|
|
- env:
|
|
stepName: Build FreeRTOS+RelianceEdge+CLI Demo
|
|
name: ${{ env.stepName }}
|
|
working-directory: FreeRTOS-Plus/Demo/FreeRTOS_Plus_Reliance_Edge_and_CLI_Windows_Simulator
|
|
run: |
|
|
# ${{ env.stepName }}
|
|
echo "::group::${{ env.stepName }}"
|
|
msbuild FreeRTOS_Plus_Reliance_Edge_with_CLI.sln -t:rebuild -property:Configuration=Debug -m
|
|
echo "${{ env.pwshPass }} ${{ env.stepName }} ${{ env.pwshEnd }}" |