Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
481 commits
Select commit Hold shift + click to select a range
62ffa81
Bump OpenSSL to 1.1.1n
garethsb Apr 28, 2022
07b8742
Merge pull request #257 from garethsb/openssl-1.1.1n
lo-simon Apr 28, 2022
d62925c
Add pplx::ranges::when_all and when_any
garethsb May 6, 2022
6178bd6
Use pplx::ranges::when_all, pplx::ranges::when_any and pplx::observe_…
garethsb May 6, 2022
c44dad5
Don't use explicit template argument with pplx::task_from_result
garethsb May 6, 2022
7450e4b
Workaround for gcc 4.8
garethsb May 6, 2022
734685c
Add tests for pplx::when_any, fix pplx::observe_exceptions with non-v…
garethsb May 9, 2022
dda9986
Merge pull request #260 from garethsb/default-task-workaround
lo-simon May 11, 2022
9754767
Output GitHub job summary for "AMWA test suite" step
garethsb May 12, 2022
dff1585
Merge pull request #261 from garethsb/garethsb-job-summary
lo-simon May 20, 2022
1118aa4
Ubuntu 22.04 (#262)
garethsb May 23, 2022
2216604
Updated NmosCppConan.cmake and Dependencies.md to update conan suppor…
amolfasale Jun 1, 2022
12ea8e9
Add discovery_mode setting (#263)
garethsb Jun 1, 2022
9302bf5
Merge pull request #264 from af4007/master
lo-simon Jun 1, 2022
5296e42
Bump OpenSSL to 1.1.1o
garethsb Jun 20, 2022
7172091
Bump Boost from 1.78.0 to 1.79.0
garethsb Jun 20, 2022
07361f9
Bump CMake to 3.23.2
garethsb Jun 20, 2022
2f44dc0
Bump nlohmann/json to 3.10.5
garethsb Jun 20, 2022
3a904a3
Merge pull request #269 from garethsb/nlohmann_json-3.10.5
lo-simon Jun 20, 2022
5facc44
Relax fmtp requirement for whitespace after semicolon
garethsb Aug 25, 2022
d3f717d
Do not add trailing separator to format-specific parameters, since ST…
garethsb Aug 25, 2022
e9a8278
Additional bad fmtp test cases
garethsb Aug 25, 2022
f06b71b
Allow additional whitespace
garethsb Sep 9, 2022
9f29022
Merge pull request #272 from garethsb/fmtp-whitespace
lo-simon Sep 14, 2022
b17fa4b
New values of colorimetry, TCS and SSN from ST 2110-20:2022
garethsb Aug 22, 2022
8fdebd2
Making a start on JPEG XS per [Work In Progress] BCP-006-01, updating…
garethsb Aug 22, 2022
58503a3
Initial update following code review, adding sdp::video_jxsv namespace
garethsb Oct 17, 2022
1156666
Implement urn:x-nmos:cap:transport:packet_transmission_mode Receiver …
garethsb Oct 17, 2022
5a4ab05
Implement urn:x-nmos:cap:transport:bit_rate Receiver parameter constr…
garethsb Oct 17, 2022
0abde6d
Add function to calculate JPEG XS level
garethsb Oct 17, 2022
093ce9a
Example node implementation with new "video_type" config parameter
garethsb Oct 17, 2022
5deb034
Add SDP b=AS:<brvalue> per ST 2110-22 and adjust validation of unspec…
garethsb Oct 17, 2022
fe53f01
Add nmos::make_video_jxsv_flow convenience function (but not nmos::ma…
garethsb Oct 18, 2022
85c2ca0
Update to cover previously ignored ST 2110 format-specific parameters…
garethsb Oct 20, 2022
c1c93a4
Since nmos::fields::st2110_21_sender_type is moved into nmos/json_fie…
garethsb Oct 21, 2022
70b252a
Add high-level test case for reading and writing SDP files for JPEG XS
garethsb Oct 21, 2022
d5a5768
Merge pull request #280 from garethsb/video-jxsv
jonathan-r-thorpe Oct 21, 2022
5cbe499
OCSP Stapling & HSTS support (#275)
jonathan-r-thorpe Oct 28, 2022
62e0f54
Bump up testssl.sh to v3.0.7 (#286)
lo-simon Oct 31, 2022
d5a45b0
Add zlib in conanfile.txt to override the base cpprestsdk's recipes w…
lo-simon Nov 1, 2022
eb09287
Merge pull request #289 from sony/add_zlib_to_conanfile
lo-simon Nov 2, 2022
a036168
rql::details::rql_exception was previously thrown during evaluation w…
garethsb Sep 23, 2022
cd82e61
Switch one runner to windows-2022 to test VS 2022
garethsb Oct 20, 2022
1f2d6a9
Remove Sandbox/conan-recipe, since now being maintained at https://gi…
garethsb Nov 2, 2022
f4d1f3b
Bump current tested Conan version to 1.53.0
garethsb Nov 2, 2022
cd6d15f
Bump OpenSSL to 1.1.1s
garethsb Nov 2, 2022
096868a
Bump Boost to 1.80.0
garethsb Nov 2, 2022
bffdd0d
Bump nlohmann/json to 3.11.2
garethsb Nov 2, 2022
7fc2006
Bump CMake to 3.24.2
garethsb Nov 2, 2022
0906dd9
Bump actions/setup-python to v4
garethsb Nov 2, 2022
66f4c97
Bump actions/checkout to v3
garethsb Nov 3, 2022
54962ef
Merge pull request #291 from garethsb/bump-dependencies
lo-simon Nov 3, 2022
e9d7ce9
Remove long out-of-date Travis CI config
garethsb Nov 3, 2022
886c50a
Apple have removed tarballs at https://opensource.apple.com/tarballs …
garethsb Nov 3, 2022
847408e
Merge pull request #292 from garethsb/apple-oss-distributions-mDNSRes…
lo-simon Nov 4, 2022
e2dcdfb
Revert video Receiver capability to a single media type, to simplify …
garethsb Nov 4, 2022
93fa3e3
Merge pull request #288 from garethsb/fix-rql-unimplemented-operator
lo-simon Nov 4, 2022
6b94054
Merge pull request #293 from garethsb/video-receiver-single-media_type
lo-simon Nov 4, 2022
6e96d40
Update README.md
lo-simon Nov 4, 2022
11f51bf
Update README.md for #280 and #293
garethsb Nov 8, 2022
547740f
Merge pull request #294 from garethsb/patch-1
lo-simon Nov 8, 2022
c8a4fa6
Receiver caps can also check exactframerate vs. grain_rate for video/…
garethsb Nov 8, 2022
5055f8c
Merge pull request #295 from garethsb/patch-2
lo-simon Nov 8, 2022
b88a286
Fix ASN1_TIME_to_time_t using an older version of openssl than 1.1.1
lo-simon Nov 10, 2022
293fa3b
Merge pull request #296 from sony/fix_using_older_openssl_than_1.1.1
lo-simon Nov 10, 2022
b1db518
Upstream target name is non-namespaced
garethsb Nov 15, 2022
25ffd0b
Merge pull request #297 from garethsb/json-schema-validator-target
jonathan-r-thorpe Nov 16, 2022
3de9bda
Target name is lowercase with current Conan recipe, avahi/0.8@#10417e…
garethsb Nov 16, 2022
1855b65
Merge pull request #299 from garethsb/avahi-target
lo-simon Nov 16, 2022
1290c5e
Conan generated package and target name are likely to change to default
garethsb Nov 17, 2022
d867311
Merge pull request #300 from garethsb/mdnsresponder-target
lo-simon Nov 18, 2022
9489d84
Add direct requirement on nlohmann_json, since json_schema_validator_…
garethsb Nov 24, 2022
3242b20
Less emotive comments :-)
garethsb Nov 24, 2022
ff314f5
Merge pull request #301 from garethsb/nlohmann_json-3.11.x
lo-simon Nov 24, 2022
3cb8aa0
Merge pull request #302 from garethsb/patch-3
lo-simon Nov 24, 2022
a7d6eb3
https://github.com/pboettch/json-schema-validator/releases/tag/2.2.0
garethsb Nov 28, 2022
ede8e55
https://github.com/pboettch/json-schema-validator/pull/240
garethsb Nov 28, 2022
886924b
https://github.com/conan-io/conan-center-index/pull/14447
garethsb Nov 28, 2022
f0c50e3
Fix issue with the workaround for alternative package names for mDNSR…
garethsb Nov 30, 2022
b6feea9
Add config settings to be able to make e.g. sender-only and receiver-…
garethsb Nov 30, 2022
b271919
Use base_model instead of model in the OCSP behaviour_thread
lo-simon Nov 30, 2022
9b0af3f
Fix nmos::match_rational_constraint and add support for pattern const…
garethsb Nov 30, 2022
e990dcc
Merge pull request #305 from garethsb/cmake-more-cleanup
lo-simon Nov 30, 2022
cb3d1f1
For cross-platform large constants use INT64_C from <cstdint>
garethsb Nov 30, 2022
fdbe10f
Merge pull request #306 from garethsb/garethsb-nmos-cpp-examples-node
lo-simon Nov 30, 2022
40cb029
Merge pull request #308 from sony/fix_using_base_model_in_ocsp_behaviour
lo-simon Nov 30, 2022
48a518d
Pattern is only used with string parameter constraints
garethsb Nov 30, 2022
b12924e
use http_port + 1 as the default for WebSocket APIs
garethsb Dec 1, 2022
75a7f06
Merge pull request #309 from garethsb/fix-caps-rational-constraint
lo-simon Dec 1, 2022
4ce7b78
Merge pull request #310 from garethsb/ws_port
lo-simon Dec 1, 2022
90ccd29
Add OCSP server to hosts so that it's discoverable when running the A…
lo-simon Dec 2, 2022
13b5a48
Merge pull request #307 from garethsb/json-schema-validator-2.2.0
lo-simon Dec 2, 2022
b10eee9
Merge pull request #311 from sony/add_ocsp_to_hosts_file
lo-simon Dec 2, 2022
fd0e32d
Add a selection of parents to sources and flows to produce signal anc…
garethsb Dec 2, 2022
0fb6b51
Merge pull request #313 from garethsb/signal-ancestry
lo-simon Dec 3, 2022
9f79cc6
https://github.com/pboettch/json-schema-validator/pull/242
garethsb Dec 5, 2022
2f69c02
Channel Mapping API inputs/outputs corresponding to receivers/senders…
garethsb Feb 1, 2023
56d4f5b
Merge pull request #316 from garethsb/disabled-api-resources
jonathan-r-thorpe Feb 3, 2023
287048d
Merge pull request #314 from garethsb/json-schema-validator-arm64
jonathan-r-thorpe Feb 3, 2023
323a759
Merge 'origin/master' to windows-2022
garethsb Feb 3, 2023
30d4ab1
Add "hkep" SDP session attribute
N-Nagorny Feb 19, 2023
33c7e98
Add "extmap" SDP session attribute
N-Nagorny Feb 20, 2023
d4c2def
use conan 1.59.0 rather than using the latest version 2.0.0
lo-simon Mar 2, 2023
f064260
fix to support new AUTH test added to the latest nmos testsuite
lo-simon Mar 2, 2023
55978f4
Update comment
lo-simon Mar 2, 2023
6fdaefc
Use the lastest Conan 1.x version
lo-simon Mar 3, 2023
b45170c
Update build-setup.yml
lo-simon Mar 8, 2023
45965a0
Update build-test.yml
lo-simon Mar 8, 2023
cfe4de0
Update Dependencies.md
lo-simon Mar 8, 2023
c875df0
Add config settings in nmos-cpp-node to support development of BCP-00…
garethsb Mar 13, 2023
0216c54
Merge branch 'sony:master' into resource-labelling
garethsb Mar 13, 2023
17f1b8b
Merge pull request #319 from garethsb/resource-labelling
lo-simon Mar 13, 2023
3fd76fc
websocket_listener should set SO_REUSEADDR like http_listener
garethsb Mar 22, 2023
a0ff5f3
Merge pull request #321 from garethsb/patch-4
lo-simon Mar 22, 2023
4b5dfe9
Remove hkep and extmap from sdp_parameters constructors
N-Nagorny Mar 22, 2023
8fce5a7
Make get_session_description_sdp_parameters more idiomatic, fix RFC h…
N-Nagorny Mar 22, 2023
873a0a4
Add unicast_address to hkep_t
N-Nagorny Mar 22, 2023
b0370af
Simplify sdp_grammar
N-Nagorny Mar 22, 2023
d6b2626
Bind client and server sockets to the specified network interfaces. N…
lo-simon Apr 11, 2023
c4800b6
Fix socket file descriptor for Ubuntu 14.04 default boost version 1.54
lo-simon Apr 11, 2023
4e08be0
Don't log if client_address is emptied
lo-simon Apr 11, 2023
43e9454
SO_BINDTODEVICE defined in Linux only
lo-simon Apr 11, 2023
f12762e
Fix typo
lo-simon Apr 12, 2023
9fe1153
Fix typo
lo-simon Apr 17, 2023
4c5a0b1
Update Development/cpprest/uri_schemes.h
lo-simon Apr 21, 2023
c487d33
Update Development/nmos-cpp-registry/config.json
lo-simon Apr 21, 2023
ff2f644
Update Development/nmos/client_utils.cpp
lo-simon Apr 21, 2023
7cd4d4f
Move get_interface_name() to host_utils
lo-simon Apr 24, 2023
785d871
Rename get_secure() to is_secure()
lo-simon Apr 24, 2023
024d652
Correct #ifdef CPPRESTSDK_BIND_WEBSOCKET_CLIENT to CPPRESTSDK_ENABLE_…
lo-simon Apr 24, 2023
0b34ae3
Move client_address and server_address below the addresses section
lo-simon Apr 24, 2023
a76b56d
Use __linux__ for linux only
lo-simon Apr 24, 2023
c85d406
pip install --upgrade conan~=1.47 everywhere
garethsb Apr 24, 2023
4a8f265
Update NmosCppConan.cmake to tested Conan 1.59
garethsb Apr 24, 2023
cfc75ae
Do no-op in event of the empty interface name
lo-simon Apr 25, 2023
afd640d
Use interface_name .data() instead of .c_str() in setsockopt for inte…
lo-simon Apr 25, 2023
f69a9f8
server_address is an implementation detail, where the host_address(es…
lo-simon Apr 25, 2023
a857ce1
Remove server_address verification
lo-simon Apr 25, 2023
427f455
Merge pull request #325 from garethsb/patch-6
lo-simon Apr 25, 2023
c6d5161
Just clean up naming, ordering of function parameters and comments
garethsb Apr 26, 2023
6c39cf0
Just clean up client_utils.cpp, include specific header, separate log…
garethsb Apr 26, 2023
ea97715
Disable git SSL certificate verification on Ubuntu 14.04
garethsb Apr 26, 2023
841212e
Merge pull request #324 from lo-simon/bind_to_interface
lo-simon Apr 26, 2023
772feb6
Add nmos::parse_fmtp_channel_order
garethsb May 4, 2023
508908d
Add tags for BCP-002-02 NMOS Asset Distinguishing Information
garethsb May 4, 2023
f56f8b3
Workaround for registration DELETE issue
garethsb Jan 30, 2023
dae4c61
Merge pull request #329 from garethsb/registration-fairness
lo-simon May 5, 2023
8260058
Merge pull request #328 from garethsb/asset-distinguishing-info
lo-simon May 9, 2023
694539a
Merge pull request #327 from garethsb/parse-fmtp-channel-order
lo-simon May 10, 2023
8a926e9
Move extmap and hkep to nmos/sdp_attributes.h
garethsb May 12, 2023
1dec8e6
Simplify parse_extmap
garethsb May 12, 2023
d316df2
Merge remote-tracking branch 'origin/master' into sdp-hdcp-signalling
garethsb May 12, 2023
d683757
Merge remote-tracking branch 'origin/master' into windows-2022
garethsb May 19, 2023
26ed65a
Merge pull request #317 from N-Nagorny/sdp-hdcp-signalling
lo-simon May 25, 2023
6702e11
Add "service_name_prefix" to settings
N-Nagorny Jun 19, 2023
0564c50
String type fix
N-Nagorny Jun 19, 2023
89908c5
Improve description
N-Nagorny Jun 20, 2023
14fd314
Merge pull request #337 from N-Nagorny/custom-dns-sd-service-name
lo-simon Jun 21, 2023
062be35
Handle SDP fields like 1*DIGIT which accept leading zeros
garethsb Jul 10, 2023
9ebb3ae
Merge pull request #340 from garethsb/sdp-digits-converter
lo-simon Jul 31, 2023
b5c8d2e
Update ubunutu-14.04 to Python 3.11.5 (#341)
jonathan-r-thorpe Sep 25, 2023
f7bd2f7
Rollback make-badges to include Ubuntu 14.04 (#349)
lo-simon Oct 20, 2023
c183d98
Merge remote-tracking branch 'origin/master' into windows-2022
garethsb Oct 31, 2023
d5f7df6
Fix SSN for ST2110-40:2023 to be ST2110-40:2021 (#351)
garethsb Oct 31, 2023
a584f92
Merge pull request #282 from garethsb/windows-2022
lo-simon Oct 31, 2023
4f1844d
Fix SMPTE 291 exactframerate field (#346)
garethsb Nov 2, 2023
4bdd15a
Open getaddrinfo for public use (#350)
lo-simon Nov 2, 2023
67cf14b
Delete unused code
garethsb Nov 4, 2023
112e7ad
Merge pull request #352 from garethsb/patch-3
lo-simon Nov 6, 2023
647d4b3
Add logging for POST /subscriptions success-path (#354)
garethsb Nov 21, 2023
d58a6ed
Add IS-10 support (#333)
lo-simon Dec 15, 2023
8798b0b
Fixed exclusion of macos badges
jonathan-r-thorpe Dec 18, 2023
25240c4
Complie build-test.yml for macos badges
lo-simon Dec 18, 2023
211a778
Remove unused nmos::make_events_ws_validate_handler, which has alread…
lo-simon Jan 5, 2024
0e7cb1e
Update jwt current version to 0.7.0
lo-simon Jan 5, 2024
9382058
Bump up json-schema-validator to v2.3.0 and nlohmann_json to v3.11.3
lo-simon Jan 5, 2024
51dc635
Setup developer command prompt for windows Microsoft Visual C++
lo-simon Jan 5, 2024
0ed64a7
Bump nlohmann json header to v3.11.3 for non-conan build
lo-simon Jan 6, 2024
85d5443
Merge pull request #361 from lo-simon/general_tidy_up
jonathan-r-thorpe Jan 8, 2024
b588d13
Bump boost to 1.83.0 and cpprestsdk to 2.10.19
lo-simon Jan 31, 2024
5b65243
highest_pri and lowest_pri are used for node only
lo-simon Jan 31, 2024
3c6f192
Update doc
lo-simon Jan 31, 2024
4bfe150
Update comment
lo-simon Jan 31, 2024
c7d9a15
client not reflect to the outside function
lo-simon Jan 31, 2024
5866061
Merge pull request #366 from lo-simon/bump-dependencies
jonathan-r-thorpe Feb 2, 2024
007e561
Merge branch 'master' into fix-advertiser
lo-simon Feb 2, 2024
1cea679
Merge pull request #368 from lo-simon/fix-advertiser
jonathan-r-thorpe Feb 5, 2024
b2c385f
Fix tsdelay and troff (#367)
lo-simon Feb 7, 2024
6fc99f1
Fix typo
lo-simon Feb 9, 2024
02094f6
Update Dependencies.md
lo-simon Feb 12, 2024
5081f99
Update Getting-Started.md
lo-simon Feb 12, 2024
253fec2
Markdown and whitespace tweaks (#370)
garethsb Feb 15, 2024
d1ee2ca
OpenSSL 3 (#371)
garethsb Feb 15, 2024
ba267fa
Conan 2 (#373)
garethsb Feb 18, 2024
62a9165
Discovery mode revisited (#374)
garethsb Feb 20, 2024
638d40a
Add port to the Host header
garethsb Feb 20, 2024
49649f8
Use hostname in secure mode for the resolved service (#375)
lo-simon Feb 23, 2024
27dff31
Update doc to include IS-10 (#364)
lo-simon Feb 23, 2024
eede555
Update IS-10 README.md
lo-simon Mar 1, 2024
cb66439
IS-12 support (#330)
lo-simon Mar 7, 2024
fcac4d2
Fix gcc 4.8 warning for default argument specified for lambda paramet…
lo-simon Mar 18, 2024
f595694
Fix compiler warning
garethsb Mar 18, 2024
1dfafef
Remove the 7-bit £ character to prevent illegal character encoding i…
lo-simon Mar 18, 2024
f936df5
Merge pull request #380 from garethsb/patch-5
lo-simon Mar 18, 2024
2b53b76
Fix openssl3 deprecated functions (#376)
lo-simon Mar 22, 2024
3165bf7
Require CMake 3.24 when CMAKE_PROJECT_TOP_LEVEL_INCLUDES is specified
garethsb Mar 22, 2024
eae5007
Merge pull request #382 from garethsb/patch-7
lo-simon Mar 22, 2024
494e9bd
Bad but not illegal value...
garethsb Mar 22, 2024
8cca5af
Merge pull request #383 from garethsb/patch-7
lo-simon Mar 22, 2024
ad66e8b
Update main.cpp
lo-simon Mar 27, 2024
7949ab5
Update receiver monitor connection example (#384)
lo-simon Mar 28, 2024
29578e7
Add Installation Guide for nmos-cpp Using Conan (#386)
johanjino Apr 10, 2024
0a29731
Run conanbuild.sh via source command in Linux (#388)
johanjino Apr 18, 2024
e2830ab
Optimize is12 method handlers (#393)
lo-simon Jun 5, 2024
bc1e8ac
Updated Conan version to handle upgraded MSVC compiler on GitHub inst…
jonathan-r-thorpe Jun 21, 2024
9e78963
Generates build-test.yml
jonathan-r-thorpe Jun 21, 2024
12501c3
Merge pull request #398 from sony/fix-windows-conan-build
lo-simon Jun 21, 2024
3105b86
Fix Ubuntu 14.04 and MacOS runners in GitHub actions (#401)
jonathan-r-thorpe Jul 26, 2024
f4c676c
Fix validation of MS-05 NcFloat32 values. (#400)
jonathan-r-thorpe Jul 26, 2024
702b0a0
Workaround GCC 10&11 optimiser compilation failure
alanb-sony Jul 30, 2024
8733cef
Fix Ubuntu-14.04 build
jonathan-r-thorpe Jul 31, 2024
6d64db8
Merge pull request #402 from alanb-sony/patch-1
jonathan-r-thorpe Aug 1, 2024
81c149e
GitHub actions: Version up deprecated upload-artifact and download-ar…
jonathan-r-thorpe Oct 9, 2024
e3f511f
Downgrade download-artifact
jonathan-r-thorpe Oct 11, 2024
067b424
Merge pull request #411 from sony/downgrade-download-action
lo-simon Oct 11, 2024
7a264e9
Fix enum sequence and struct sequence validation (#412)
jonathan-r-thorpe Oct 14, 2024
965e5d7
Added testing of isSequences and isNullable to the datatype constrain…
jonathan-r-thorpe Oct 17, 2024
3f3d736
Fixed checking of isSequnce and isNullable in checking of NcDatatyped…
jonathan-r-thorpe Oct 17, 2024
5bc8b7c
Merge pull request #413 from sony/fix-datatype-constraints-check
lo-simon Oct 18, 2024
9fd51b4
Return NcMethodResultError on error, not NcMethodResult
jonathan-r-thorpe Nov 1, 2024
f549712
Merge pull request #415 from sony/fix-return-method-result-error
lo-simon Nov 5, 2024
8c9df91
Fix warning C4239: nonstandard extension used: 'argument': conversion…
garethsb Nov 22, 2024
f85b1a4
output stream is sufficient
garethsb Nov 22, 2024
52627d2
Merge pull request #419 from garethsb/fix-nmos-slog
lo-simon Nov 28, 2024
5af0478
Use if_indextoname to log the interface name for DNS-SD functions
garethsb Nov 29, 2024
b831b5d
GitHub Actions: Temporarily Disable Ubuntu 14.04 and Macos builds (#421)
jonathan-r-thorpe Dec 9, 2024
a3dd83f
Add client assertion restrictions, and code tidy up (#423)
lo-simon Dec 13, 2024
5529066
Merge pull request #420 from garethsb/if_indextoname
lo-simon Jan 3, 2025
f6099a2
"caps" is required for all Receivers
garethsb Jan 7, 2025
0af3b66
Merge pull request #425 from garethsb/patch-7
lo-simon Jan 7, 2025
0b4c4ba
Add _or_defaults versions of the format-specific parameters parsing …
garethsb Jan 17, 2025
fa2b18b
Update README.md
nytamin Feb 3, 2025
92f5134
Up artifact version (#430)
lo-simon Feb 3, 2025
21d1a81
Merge pull request #429 from nytamin/patch-1
lo-simon Feb 3, 2025
f6615cd
Fix remove_sequence_item control protocol method
jonathan-r-thorpe Feb 10, 2025
90b956f
Formatting
jonathan-r-thorpe Feb 10, 2025
b99e9d6
Update comments
jonathan-r-thorpe Feb 10, 2025
a0723ad
Fix jwt-cpp INTERFACE library (#431)
lo-simon Feb 13, 2025
530bfce
Merge pull request #432 from sony/remove-read-only-sequence-item-bug
lo-simon Feb 13, 2025
566782d
LLDP: enable configuration on the fly
maweit Feb 27, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
790 changes: 308 additions & 482 deletions .github/workflows/build-test.yml

Large diffs are not rendered by default.

178 changes: 138 additions & 40 deletions .github/workflows/src/amwa-test.yml
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
- name: install wsl
if: runner.os == 'Windows'
run: |
& curl -L https://aka.ms/wslubuntu2004 -o ubuntu204.appx
Rename-Item .\ubuntu204.appx .\ubuntu204.zip
Expand-Archive .\ubuntu204.zip .\ubuntu204
cd ubuntu204
.\ubuntu2004.exe install --root
& curl -L https://aka.ms/wsl-ubuntu-1804 -o ubuntu-1804.appx
Rename-Item .\ubuntu-1804.appx .\ubuntu-1804.zip
Expand-Archive .\ubuntu-1804.zip .\ubuntu-1804
cd ubuntu-1804
.\ubuntu1804.exe install --root

- name: AMWA test suite
shell: bash
Expand All @@ -19,12 +19,27 @@
git clone https://github.com/AMWA-TV/nmos-testing.git
cd nmos-testing

# Configure the Testing Tool so all APIs are tested with TLS
printf "from . import Config as CONFIG\nCONFIG.ENABLE_HTTPS = True\n" > nmostesting/UserConfig.py
# Configure the Testing Tool so all APIs are tested with TLS and authorization
printf "from . import Config as CONFIG\nCONFIG.ENABLE_HTTPS = True\nCONFIG.MOCK_SERVICES_WARM_UP_DELAY = 30\nCONFIG.HTTP_TIMEOUT = 2\n" > nmostesting/UserConfig.py
# Set the DNS-SD mode
printf 'CONFIG.DNS_SD_MODE = "'${{ matrix.dns_sd_mode }}'"\n' >> nmostesting/UserConfig.py
# Set the client JWKS_URI for mock Authorization Server to obtain the client JSON Web Key Set (public keys) to verify the client_assertion, when the client is requesting the access token
if [[ "${{ matrix.dns_sd_mode }}" == "multicast" ]]; then
hostname=nmos-api.local
else
hostname=api.testsuite.nmos.tv
fi
printf 'CONFIG.JWKS_URI = "https://'${hostname}':1080/x-authorization/jwks"\n' >> nmostesting/UserConfig.py

if [[ "${{matrix.enable_authorization}}" == "true" ]]; then
printf 'CONFIG.ENABLE_AUTH = True\n' >> nmostesting/UserConfig.py
else
printf 'CONFIG.ENABLE_AUTH = False\n' >> nmostesting/UserConfig.py
fi

# Download testssl
cd testssl
curl -L https://github.com/drwetter/testssl.sh/archive/3.0.2.tar.gz | tar -xvzf - --strip-components=1
curl -L https://github.com/drwetter/testssl.sh/archive/v3.0.7.tar.gz -s | tar -xvzf - --strip-components=1 > /dev/null
cd ..

# Create output directories
Expand All @@ -36,71 +51,154 @@
docker pull amwa/nmos-testing
docker run -d --name "nmos_testing" --entrypoint="/usr/bin/tail" -v `pwd`/results:/home/nmos-testing/results amwa/nmos-testing -f /dev/null
run_python="docker exec -i nmos_testing python3"
elif [[ "${{ env.VAGRANT_TEST_SUITE }}" == "true" ]]; then
elif [[ "${{ env.VAGRANT_TEST_SUITE }}" == "true" ]]; then
# run test suite in vagrant VM
cp ${{ env.GITHUB_WORKSPACE_BASH }}/.github/workflows/mac_Vagrantfile ./Vagrantfile
vagrant plugin install vagrant-scp
vagrant up
vagrant ssh -- mkdir results
run_python="vagrant ssh -- python3"
elif [[ "${{ runner.os }}" == "Linux" && "${{ matrix.dns_sd_mode }}" == "unicast" ]]; then
# run test suite directly
sudo pip install --upgrade -r requirements.txt
# install SDPoker
npm install -g git+https://git@github.com/AMWA-TV/sdpoker.git
run_python="sudo python"
else
# run test suite directly
pip install -r requirements.txt

# Install SDPoker
if [[ "${{ matrix.os }}" == "windows-latest" || "$EUID" == "0" ]]; then
npm install -g AMWA-TV/sdpoker
else
sudo npm install -g AMWA-TV/sdpoker
fi
# install SDPoker
npm install -g git+https://git@github.com/AMWA-TV/sdpoker.git
run_python="python"
fi
pip install -r utilities/run-test-suites/gsheetsImport/requirements.txt

if [[ "${{ matrix.os }}" == "windows-latest" ]]; then
certutil -enterprise -addstore -user root test_data\\BCP00301\\ca\\certs\\ca.cert.pem
certutil -enterprise -addstore -user ca test_data\\BCP00301\\ca\\intermediate\\certs\\intermediate.cert.pem
certutil -importpfx -enterprise test_data\\BCP00301\\ca\\intermediate\\certs\\ecdsa.api.testsuite.nmos.tv.cert.chain.pfx
certutil -importpfx -enterprise test_data\\BCP00301\\ca\\intermediate\\certs\\rsa.api.testsuite.nmos.tv.cert.chain.pfx

# RSA
netsh http add sslcert ipport=0.0.0.0:1080 certhash=021d50df2177c07095485184206ee2297e50b65c appid="{00000000-0000-0000-0000-000000000000}"
# ECDSA
#netsh http add sslcert ipport=0.0.0.0:1080 certhash=875eca592c49120254b32bb8bed90ac3679015a5 appid="{00000000-0000-0000-0000-000000000000}"

# RSA
netsh http add sslcert ipport=0.0.0.0:8088 certhash=021d50df2177c07095485184206ee2297e50b65c appid="{00000000-0000-0000-0000-000000000000}"
# ECDSA
#netsh http add sslcert ipport=0.0.0.0:8088 certhash=875eca592c49120254b32bb8bed90ac3679015a5 appid="{00000000-0000-0000-0000-000000000000}"

if [[ "${{ runner.os }}" == "Windows" ]]; then
# install certificates
certutil -enterprise -addstore -user root test_data\\BCP00301\\ca\\certs\\ca.cert.pem
certutil -enterprise -addstore -user ca test_data\\BCP00301\\ca\\intermediate\\certs\\intermediate.cert.pem
certutil -importpfx -enterprise test_data\\BCP00301\\ca\\intermediate\\certs\\ecdsa.api.testsuite.nmos.tv.cert.chain.pfx
certutil -importpfx -enterprise test_data\\BCP00301\\ca\\intermediate\\certs\\rsa.api.testsuite.nmos.tv.cert.chain.pfx

# RSA
netsh http add sslcert ipport=0.0.0.0:1080 certhash=021d50df2177c07095485184206ee2297e50b65c appid="{00000000-0000-0000-0000-000000000000}"
# ECDSA
#netsh http add sslcert ipport=0.0.0.0:1080 certhash=875eca592c49120254b32bb8bed90ac3679015a5 appid="{00000000-0000-0000-0000-000000000000}"

# RSA
netsh http add sslcert ipport=0.0.0.0:8088 certhash=021d50df2177c07095485184206ee2297e50b65c appid="{00000000-0000-0000-0000-000000000000}"
# ECDSA
#netsh http add sslcert ipport=0.0.0.0:8088 certhash=875eca592c49120254b32bb8bed90ac3679015a5 appid="{00000000-0000-0000-0000-000000000000}"
fi

if [[ "${{ matrix.os }}" == "macos-latest" ]]; then
if [[ "${{ runner.os }}" == "macOS" ]]; then
# force DNS lookups to IPv4 as mDNS lookups on macos seem to wait for the IPv6 lookup to timeout before returning the IPv4 result
mv nmostesting/GenericTest.py nmostesting/GenericTest.py.old
printf 'import socket\nold_getaddrinfo = socket.getaddrinfo\ndef new_getaddrinfo(host, port, family=0, type=0, proto=0, flags=0):\n return old_getaddrinfo(host, port, socket.AF_INET, type, proto, flags)\nsocket.getaddrinfo = new_getaddrinfo\n' > nmostesting/GenericTest.py
cat nmostesting/GenericTest.py.old >> nmostesting/GenericTest.py
fi

if [[ "${{ runner.os }}" == "Linux" && "${{ matrix.install_mdns }}" == "false" ]]; then
# nmos-cpp-node doesn't currently support advertising hostnames to Avahi
avahi-publish -a -R nmos-api.local ${{ env.HOST_IP_ADDRESS }} &
fi

if [[ "${{ runner.os }}" == "Linux" && "${{ matrix.use_conan }}" == "false" ]]; then
# ubuntu 14 non-conan build uses boost 1.54.0 which doesn't support disabling TLS 1.1
mkdir -p ${{ env.GITHUB_WORKSPACE_BASH }}/Sandbox/nmos-testing-options/
echo "--ignore test_01" > ${{ env.GITHUB_WORKSPACE_BASH }}/Sandbox/nmos-testing-options/BCP-003-01.txt
echo "1" > ${{ env.GITHUB_WORKSPACE_BASH }}/Sandbox/nmos-testing-options/BCP-003-01_max_disabled.txt
fi

${{ env.GITHUB_WORKSPACE_BASH }}/Sandbox/run_nmos_testing.sh "$run_python" ${root_dir}/build/nmos-cpp-node ${root_dir}/build/nmos-cpp-registry results badges ${{ env.HOST_IP_ADDRESS }} "${{ env.GITHUB_COMMIT }}-${{ env.BUILD_NAME }}-"
if [[ "${{ runner.os }}" == "Linux" ]]; then
if [[ "${{ matrix.install_mdns }}" == "true" ]]; then
echo "Stopping mdnsd"
sudo /etc/init.d/mdns stop
else
echo "Stopping avahi-daemon"
sudo systemctl stop avahi-daemon
fi
fi

if [[ "${{ matrix.dns_sd_mode }}" == "multicast" ]]; then
domain=local
else
domain=testsuite.nmos.tv
if [[ "${{ runner.os }}" == "Linux" ]]; then
# add host names
echo -e "${{ env.HOST_IP_ADDRESS }} api.$domain\n${{ env.HOST_IP_ADDRESS }} mocks.$domain" | sudo tee -a /etc/hosts > /dev/null
# force testing tool to cache specification repos before changing the resolver configuration
$run_python nmos-test.py suite IS-04-01 --selection auto --host ${{ env.HOST_IP_ADDRESS }} --port 444 --version v1.3 || true
# change the resolver configuration to use only the testing tool's mock DNS server
# and instead configure the mock DNS server to use an upstream DNS server
# as unicast DNS-SD test results are inconsistent if other servers are also configured
dns_upstream_ip=$(cat /etc/resolv.conf | grep ^nameserver | tr -s [:space:] ' ' | cut -f2 -d ' ' -s)
if [[ ! -z "$dns_upstream_ip" ]]; then
printf 'CONFIG.DNS_UPSTREAM_IP = "'${dns_upstream_ip}'"\n' >> nmostesting/UserConfig.py
fi
sudo cp /etc/resolv.conf /etc/resolv.conf.bak
echo -e "nameserver ${{ env.HOST_IP_ADDRESS }}" | sudo tee /etc/resolv.conf > /dev/null
else
echo "Unicast DNS-SD testing not yet supported on ${{ runner.os }}" && false
fi
fi

if [[ "${{ runner.os }}" == "Linux" ]]; then
if [[ "${{ matrix.install_mdns }}" == "true" ]]; then
echo "Restarting mdnsd"
sudo /etc/init.d/mdns start
#sudo /usr/sbin/mdnsd -debug &
sleep 2

dns-sd -V
else
echo "Restarting avahi-daemon"
sudo systemctl start avahi-daemon
sleep 2

ps -e | grep avahi-daemon
avahi-daemon -V
fi
fi

if [[ "${{ runner.os }}" == "Linux" && "${{ matrix.install_mdns }}" == "false" ]]; then
# nmos-cpp-node doesn't currently support advertising hostnames to Avahi
avahi-publish -a -R nmos-api.local ${{ env.HOST_IP_ADDRESS }} &
fi

${{ env.GITHUB_WORKSPACE_BASH }}/Sandbox/run_nmos_testing.sh "$run_python" ${domain} ${root_dir}/build/nmos-cpp-node ${root_dir}/build/nmos-cpp-registry results badges $GITHUB_STEP_SUMMARY ${{ env.HOST_IP_ADDRESS }} "${{ env.GITHUB_COMMIT }}-${{ env.BUILD_NAME }}-"

if [[ "${{ runner.os }}" == "Linux" ]]; then
if [[ "${{ matrix.install_mdns }}" == "true" ]]; then
ps -e | grep mdnsd || true
else
ps -e | grep avahi-daemon || true
fi
fi

if [[ "${{ matrix.dns_sd_mode }}" == "unicast" ]]; then
if [[ "${{ runner.os }}" == "Linux" ]]; then
# restore DNS Server
if [[ "${{ matrix.install_mdns }}" == "true" ]]; then
echo "Stopping mdnsd"
sudo /etc/init.d/mdns stop
else
echo "Stopping avahi-daemon"
sudo systemctl stop avahi-daemon
fi
cat /etc/resolv.conf.bak | sudo tee /etc/resolv.conf > /dev/null
if [[ "${{ matrix.install_mdns }}" == "true" ]]; then
echo "Restarting mdnsd"
sudo /etc/init.d/mdns start
else
echo "Restarting avahi-daemon"
sudo systemctl start avahi-daemon
fi
fi
fi

if [[ "${{ env.DOCKER_TEST_SUITE }}" == "true" ]]; then
docker stop nmos_testing
docker rm nmos_testing
fi
if [[ "${{ env.VAGRANT_TEST_SUITE }}" == "true" ]]; then
if [[ "${{ env.VAGRANT_TEST_SUITE }}" == "true" ]]; then
vagrant scp :results/* results/
vagrant destroy -f
fi

exit 0
4 changes: 4 additions & 0 deletions .github/workflows/src/build-and-test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,10 @@

@import unit-test

@import install

@import install-test

@import amwa-test

@import save-results
Expand Down
69 changes: 44 additions & 25 deletions .github/workflows/src/build-setup.yml
Original file line number Diff line number Diff line change
@@ -1,11 +1,15 @@
- name: install conan
if: matrix.use_conan == true
run: |
pip install conan
conan config set general.revisions_enabled=1
pip install conan~=2.4.1

- name: 'ubuntu-14.04: install cmake'
if: matrix.os == 'ubuntu-14.04'
uses: lukka/get-cmake@v3.24.2

- name: install cmake
uses: lukka/get-cmake@v3.18.3
if: matrix.os != 'ubuntu-14.04'
uses: lukka/get-cmake@v3.28.3

- name: setup bash path
working-directory: ${{ env.GITHUB_WORKSPACE }}
Expand All @@ -19,7 +23,7 @@
if: runner.os == 'Windows'
run: |
# set compiler to cl.exe to avoid building with gcc.
echo "CMAKE_EXTRA_ARGS=${{ env.CMAKE_EXTRA_ARGS }} -DCMAKE_C_COMPILER=cl.exe -DCMAKE_CXX_COMPILER=cl.exe" >> $env:GITHUB_ENV
echo "CMAKE_COMPILER_ARGS=-DCMAKE_C_COMPILER=cl.exe -DCMAKE_CXX_COMPILER=cl.exe" >> $env:GITHUB_ENV
# disable unused network interface
netsh interface set interface name="vEthernet (nat)" admin=DISABLED
# get host IP address
Expand All @@ -32,9 +36,11 @@
).IPv4Address.IPAddress
echo "HOST_IP_ADDRESS=$env:hostip" >> $env:GITHUB_ENV
ipconfig
# add the CRL Distribution Point to hosts so that it's discoverable when runing the AMWA test suite in mDNS mode
# add the CRL Distribution Point to hosts so that it's discoverable when running the AMWA test suite in mDNS mode
# and avoid SSL Error: WINHTTP_CALLBACK_STATUS_FLAG_CERT_REV_FAILED failed to check revocation status.
Add-Content $env:WINDIR\System32\Drivers\Etc\Hosts "`n$env:hostip crl.testsuite.nmos.tv`n"
# add the OCSP server to hosts so that it's discoverable when running the AMWA test suite in mDNS mode
Add-Content $env:WINDIR\System32\Drivers\Etc\Hosts "`n$env:hostip ocsp.testsuite.nmos.tv`n"
# add nmos-api.local to hosts to workaround mDNS lookups on windows being very slow and causing the AMWA test suite to take 2-3 hours to complete
Add-Content $env:WINDIR\System32\Drivers\Etc\Hosts "`n$env:hostip nmos-api.local`n"
# add nmos-mocks.local to hosts to workaround mDNS lookups on windows being very slow and causing the AMWA test suite IS-04-01 test_05 to fail due to latency messing up the apparent heart beat interval
Expand All @@ -60,8 +66,8 @@
ifconfig
echo "CTEST_EXTRA_ARGS=$CTEST_EXTRA_ARGS -E testMdnsResolveAPIs" >> $GITHUB_ENV
echo "CTEST_EXPECTED_FAILURES=$CTEST_EXPECTED_FAILURES -R testMdnsResolveAPIs" >> $GITHUB_ENV
# add the CRL Distribution Point to hosts so that it's discoverable when runing the AMWA test suite in mDNS mode
echo "$hostip crl.testsuite.nmos.tv" | sudo tee -a /etc/hosts
# add the CRL Distribution Point and the OCSP server to hosts so that it's discoverable when running the AMWA test suite in mDNS mode
echo -e "$hostip crl.testsuite.nmos.tv\n$hostip ocsp.testsuite.nmos.tv" | sudo tee -a /etc/hosts > /dev/null
# testssl.sh needs "timeout"
brew install coreutils

Expand Down Expand Up @@ -98,21 +104,22 @@
hostip=$(hostname -I | cut -f1 -d' ')
echo "HOST_IP_ADDRESS=$hostip" >> $GITHUB_ENV
ip address
# add the CRL Distribution Point to hosts so that it's discoverable when runing the AMWA test suite in mDNS mode
echo "$hostip crl.testsuite.nmos.tv" | sudo tee -a /etc/hosts
# add the CRL Distribution Point and the OCSP server to hosts so that it's discoverable when running the AMWA test suite in mDNS mode
echo -e "$hostip crl.testsuite.nmos.tv\n$hostip ocsp.testsuite.nmos.tv" | sudo tee -a /etc/hosts > /dev/null
# re-synchronize the package index
sudo apt-get update -q

- name: ubuntu mdns install
if: runner.os == 'Linux' && matrix.install_mdns == true
run: |
cd ${{ env.GITHUB_WORKSPACE }}
curl https://opensource.apple.com/tarballs/mDNSResponder/mDNSResponder-878.200.35.tar.gz -o mDNSResponder-878.200.35.tar.gz
tar -xzf mDNSResponder-878.200.35.tar.gz
patch -d mDNSResponder-878.200.35/ -p1 < ${{ env.GITHUB_WORKSPACE }}/Development/third_party/mDNSResponder/unicast.patch
patch -d mDNSResponder-878.200.35/ -p1 < ${{ env.GITHUB_WORKSPACE }}/Development/third_party/mDNSResponder/permit-over-long-service-types.patch
patch -d mDNSResponder-878.200.35/ -p1 < ${{ env.GITHUB_WORKSPACE }}/Development/third_party/mDNSResponder/poll-rather-than-select.patch
cd mDNSResponder-878.200.35/mDNSPosix
mkdir mDNSResponder
cd mDNSResponder
curl -L https://github.com/apple-oss-distributions/mDNSResponder/archive/mDNSResponder-878.200.35.tar.gz -s | tar -xvzf - --strip-components=1 > /dev/null
patch -p1 < ${{ env.GITHUB_WORKSPACE }}/Development/third_party/mDNSResponder/unicast.patch
patch -p1 < ${{ env.GITHUB_WORKSPACE }}/Development/third_party/mDNSResponder/permit-over-long-service-types.patch
patch -p1 < ${{ env.GITHUB_WORKSPACE }}/Development/third_party/mDNSResponder/poll-rather-than-select.patch
cd mDNSPosix
make os=linux && sudo make os=linux install
# install Name Service Cache Daemon to speed up repeated mDNS name discovery
sudo apt-get install -f nscd
Expand All @@ -121,6 +128,8 @@
mkdir -p /var/run/nscd
nscd
fi
# force dependency on mDNSResponder
echo "CMAKE_EXTRA_ARGS=${{ env.CMAKE_EXTRA_ARGS }} -DNMOS_CPP_USE_AVAHI:BOOL=\"0\"" >> $GITHUB_ENV

- name: ubuntu non-conan setup
if: runner.os == 'Linux' && matrix.use_conan == false
Expand All @@ -137,20 +146,18 @@
libssl-dev

cd ${{ env.RUNNER_WORKSPACE }}
git clone --recurse-submodules --branch v2.10.16 https://github.com/Microsoft/cpprestsdk
git clone --recurse-submodules --branch v2.10.19 https://github.com/Microsoft/cpprestsdk
cd cpprestsdk/Release
mkdir build
cd build
cmake .. -DCMAKE_BUILD_TYPE:STRING="Release" -DWERROR:BOOL="0" -DBUILD_SAMPLES:BOOL="0" -DBUILD_TESTS:BOOL="0"
make -j 2 && sudo make install

echo "CMAKE_EXTRA_ARGS=${{ env.CMAKE_EXTRA_ARGS }} -DWEBSOCKETPP_INCLUDE_DIR:PATH=\"${{ env.RUNNER_WORKSPACE }}/cpprestsdk/Release/libs/websocketpp\"" >> $GITHUB_ENV

- name: disable conan
if: matrix.use_conan == false
shell: bash
run: |
echo "CMAKE_EXTRA_ARGS=${{ env.CMAKE_EXTRA_ARGS }} -DUSE_CONAN:BOOL=\"0\"" >> $GITHUB_ENV
echo "CMAKE_EXTRA_ARGS=${{ env.CMAKE_EXTRA_ARGS }}" \
"-DWEBSOCKETPP_INCLUDE_DIR:PATH=\"${{ env.RUNNER_WORKSPACE }}/cpprestsdk/Release/libs/websocketpp\"" \
"-DNMOS_CPP_USE_SUPPLIED_JSON_SCHEMA_VALIDATOR:BOOL=\"1\"" \
"-DNMOS_CPP_USE_SUPPLIED_JWT_CPP:BOOL=\"1\"" \
>> $GITHUB_ENV

- name: ubuntu avahi setup
if: runner.os == 'Linux' && matrix.install_mdns == false
Expand All @@ -163,9 +170,21 @@
sudo systemctl restart avahi-daemon
# install Name Service Cache Daemon to speed up repeated mDNS name discovery
sudo apt-get install -f nscd
# force dependency on avahi
echo "CMAKE_EXTRA_ARGS=${{ env.CMAKE_EXTRA_ARGS }} -DNMOS_CPP_USE_AVAHI:BOOL=\"1\"" >> $GITHUB_ENV

- name: force cpprest asio
if: matrix.force_cpprest_asio == true
if: matrix.force_cpprest_asio == true && matrix.use_conan == true
shell: bash
run: |
echo "CONAN_INSTALL_EXTRA_ARGS=--options\;cpprestsdk/*:http_client_impl=asio\;--options\;cpprestsdk/*:http_listener_impl=asio" >> $GITHUB_ENV

- name: enable conan
if: matrix.use_conan == true
shell: bash
run: |
echo "CMAKE_EXTRA_ARGS=${{ env.CMAKE_EXTRA_ARGS }} -DNMOS_CPP_CONAN_OPTIONS:STRING=\"cpprestsdk:http_client_impl=asio;cpprestsdk:http_listener_impl=asio\"" >> $GITHUB_ENV
echo "CMAKE_EXTRA_ARGS=${{ env.CMAKE_EXTRA_ARGS }}" \
"-DCMAKE_PROJECT_TOP_LEVEL_INCLUDES:STRING=\"third_party/cmake/conan_provider.cmake\"" \
"-DCONAN_INSTALL_ARGS:STRING=\"--build=missing\;${{ env.CONAN_INSTALL_EXTRA_ARGS }}\;--lockfile-out=conan.lock\"" \
>> $GITHUB_ENV
cat $GITHUB_ENV
Loading
Loading