Skip to content

Commit

Permalink
Ericwol/distributed tracing pr (#2061)
Browse files Browse the repository at this point in the history
* docs: fix simple typo, completition -> completion

There is a small typo in iothub_service_client/src/iothub_messaging_ll.c, iothub_service_client/tests/iothub_msging_ll_ut/iothub_messaging_ll_ut.c.

Should read `completion` rather than `completition`.

* Addressing the Y2k38 issue for SAS tokens (#1807)

* Updating c-utility

* umock changes to allow uint64_t for SAS expiry time.

* Updating SAS internal API usage and UTs.

* Updating c-utility.

* Fixing UTs. Addressing PR feedback.

* Updating submodules.

* modify string buffer size (#1825)

* Update submodules (#1831)

* version.txt update (#1834)

* Update LTS support table (#1835)

* Update certs when using IoT Hub Public Preview with ECC (#1832)

* [SDL] NULL pointer check (#1836)

* [SDL] NULL pointer check

* update submodules

* Update submodules (#1840)

* Nuget Security Analysis Update NuGet.Config (#1841)

* Update NuGet.Config

* remove multiple feeds

* Fuzzers for AMQP and MQTT protocols (#1837)

* iot hub client fuzz harness

* Added protocol files to fuzz

* Updated MQTT fuzz directory

* fix linux build break

* added linux openssl fuzz interface

* Revert "added linux openssl fuzz interface"

This reverts commit c8692fd.

* added linux openssl fuzz interface

* fix build break

* fix linux build break

* fidex AFL issue on PUBACK

* fix linux build break

* fix test harness memory leak

* move test bin into individual folders

* Added docs and send link list fix

* updated documentation

* fuzzer doc updates

* remove queue on xio close

* update fuzz docs

* fuzzer for AMQP

* finish amqp fuzzer

* remove test files

* allow fuzz packets lod from file

* fix twin destroy msg_ctx

* removed win32 include

* removed win32 include
fix linux build

* fix linux build break

* updae fuzzer tracing

* remove AMQP fuzz fixes

* Fixed white spaces

* Fix MAC OS build break

* fixed MACOSX build

* Fixed linux build break

* fixed cmake and whitespace

* uamqp submodule update

* Fixed fuzzer cmake

* Update default build to VS2017 (removes support for VS2015) (#1846)

* Update default build to VS2017

* update build vs2017 path

* cmake default to "Visual Studio 15 2017"

* removed VS2015 from readme's

* move build to cmake version 3.17.5 (#1847)

* Update submodules (#1848)

* LONGHAUL: Close and reopen the service handle if the C2D send message fails. (#1850)

* Close and reopen the service handle if the C2D send message fails.

* added debug trace

* add trace info to longhaul tests (#1851)

* add trace info to longhaul tests

* update c-utility (#1852)

* Update to latest parson

* Update documentation for correct curl installation with wolfSSL and HTTP (#1855)

* update http set option to convert http return result

* add mock return values

* Update ECC certificate info in docs (#1856)

* [longhaul test] Filter out device IDs from event hub notifications (#1858)

* longhaul debug trace

* added more trace logs

* Filter AMQP message based on the device ID

* remove longhaul log noise

* Update umqtt submodule

* If no argument given to certGen.sh the usage is not printed (#1862)

* If no argument given to certGen.sh the usage is not printed

* bug #1859/#1860/#1861

* fixed running under WSL

* Do not call tput without $TERM (#1864)

Attempting to use this script non-interactively (e.g. during AzDO pipelines) results in $TERM being undefined, causing tput to fail which immediately terminates the script execution.

* add device creation delay before starting the longhaul tests (#1867)

* [LONGHAUL] Ignore twin updates if the twin version is 1 (#1868)

* ignore version 1 of twin updates

* Change Edge input message MQTT topic subscription from QoS 0 to 1

* Fix longhaul device_twin_desired first message (#1874)

* added traces to longhaul invoke_device_method() (#1878)

* [longhaul] fix device method retry (#1879)

* added traces to longhaul invoke_device_method()

* fix device method retry

* Update return value to MU_FAILURE where appropriate (#1877)

* AMQP protocol stack fuzz (#1875)

* iot hub client fuzz harness

* Added protocol files to fuzz

* Updated MQTT fuzz directory

* fix linux build break

* added linux openssl fuzz interface

* fidex AFL issue on PUBACK

* fix linux build break

* fix test harness memory leak

* Added docs and send link list fix

* updated documentation

* fuzzer doc updates

* remove queue on xio close

* update fuzz docs

* fuzzer for AMQP

* finish amqp fuzzer

* remove test files

* allow fuzz packets load from file

* fix twin destroy msg_ctx

* fixed twin guid crash

* bug:8781049 cancel the pending messages before destorying the device instance

* update fuzzer tracing

* fix the bug 8781049 regression

* ampq fuzz, handle smaler fuzz packet size

* fixed amqp fuzz overflow memcpy

* Bug 9202574: [FuzzAMQP] heap-buffer-overflow internal_decoder_decode_bytes /home/ericwol/azure-iot-sdk-c/uamqp/src/amqpvalue.c:5941

* Bug 9202574: [FuzzAMQP] heap-buffer-overflow internal_decoder_decode_bytes /home/ericwol/azure-iot-sdk-c/uamqp/src/amqpvalue.c:5941

* update uamqp submodule

* update cutil submodule

* fix amqp unit tests

* backout bug fix 8781049

* Added module to longhaul tests to cleanup orphaned hub device resources (#1885)

* Added module to longhaul tests to cleanup orphaned hub device resources

* added longhaul_resource_cleanup.h

* fixed consts

* pr feedback

* update uamqp submodule (#1886)

* Update umqtt submodule

* Update devbox_setup.md (#1888)


* Update doc/devbox_setup.md

Co-authored-by: Dane Walton <dane.walton@microsoft.com>

* add sample certs to c2d sample

* Submodule udpate

* Fix order CMakelists.txt adds dependencies for unit tests

By adding umock before ctest and testrunner it makes umock to look
into its own submodules. If --recursive is not used on git clone or
git submodule update, then the following error occurs:

```cmake
-- Detecting CXX compile features - done
-- IoT Client SDK Version = 1.6.0
CMake Warning (dev) at deps/umock-c/CMakeLists.txt:13 (option):
  Policy CMP0077 is not set: option() honors normal variables.  Run "cmake
  --help-policy CMP0077" for policy details.  Use the cmake_policy command to
  set the policy and suppress this warning.

  For compatibility with older versions of CMake, option is clearing the
  normal variable 'use_cppunittest'.
This warning is for project developers.  Use -Wno-dev to suppress it.

CMake Error at deps/umock-c/CMakeLists.txt:63 (add_subdirectory):
  The source directory

    /home/ewertons/code/azure-iot-sdk-c-2/deps/umock-c/deps/testrunner

  does not contain a CMakeLists.txt file.

CMake Error at deps/umock-c/CMakeLists.txt:66 (add_subdirectory):
  The source directory

    /home/ewertons/code/azure-iot-sdk-c-2/deps/umock-c/deps/ctest

  does not contain a CMakeLists.txt file.

-- Looking for include file stdint.h
```

Changing the order on C SDK CMakelists.txt causes ctest and testrunner
to be include from the C SDK deps, preventing umock of trying to adds
its own.

* update c-utility submodule (#1908)

* update c-utility submodule

* update dependent submodules

* [longhaul tests] Allow IoT hub event reconnect due to network loss (#1909)

* update c-utility

* update dependent submodules

* [longhaul] Allow IoT hub event reconnect due to network loss

* fixed described_filter_value double deletes

* Added AMQP packet documentation (#1911)

* Added longhaul ListenForEventAsync traces (#1912)

* Added longhaul ListenForEventAsync traces

Co-authored-by: Dane Walton <dane.walton@microsoft.com>

* Fixing global buffer overflow when copying global string due to incorrect string length value. (#1913)

* Fixed longhaul memory leaks (#1915)

* [LONGHAUL] Use connection state change to reconnect the AMQP service connection (#1917)

* [LONGHAUL] Use connection state change to reconnect the AMQP service connection

* PR feedback

* [longhaul] Fixed memory leaks and thread locks (#1922)

* [longhaul] Fixed memory leaks and thread locks

* PR feedback

* Submodules update and add cancellation option to cbs auth

* Fix amqp transport cbs tests

* Fix amqp transport cbs tests (x2)

* Updating TLS requirements reference. (#1926)

* fileupload network interface support (#1884)

* fileupload network interface support

* file upload through network interface

* changed curl interface to networkInterface and updated c-utility submodule

* documentation update

* setting option-curl-interface

* updating c-utility

Co-authored-by: Aggrawal, Raj Kumar <rajkumar.aggrawal@barco.com>
Co-authored-by: John Spaith <john@spaith.com>

* Updating c-utility submodule (#1928)

ESP tests failed with unrelated "out of space" error for multiple runs.

* [longhaul] retry IoTHubDeviceTwin_UpdateTwin on network failure (#1932)

* use checkout sources to clean directory (#1930)

* Allow jenkins agent to cleanup cmake folder (#1934)

* allow cmake folder to be deleted

* Removing APT package support. (#1933)

* Refactor device method subscription code (#1897)

Cleanup device method code to enable future PnP logic to be more cleanly added.

* Update readme.md (#1937)

Removing a confusing statement from the release section and deprecating the release schedule picture since it was completely outdated and not necessarily we'll have 2 LTSs releases every year.

* Update readme.md (#1938)

* Cleanup initial readme and dev box setup (#1936)

* Added framework for running longhaul tests under valgrind (#1940)

* longhaul valgrind test

* enable valgrind on longhaul_amqp_c2d

* update cutility

* include global_valgrind_suppression

* global_valgrind_suppression

* fix memory leak

* Add locking to longhaul get_statistics

* fix build break

* fix build break

* fix build break

* fixed iothub_client_statistics_add_c2d_info locks

* fixed iothub_client_statistics_add_c2d_info locks

* fixed on_c2d_message_sent

* fixed on_c2d_message_sent

* fixed on_c2d_message_sent

* fixed iothub_client_statistics_add_telemetry_info locking

* fixed longhaul_run_telemetry_tests locks

* update suppression file

* added lock to iothub_client_statistics_add_device_twin_reported_info

* added locks to iothub_client_statistics_add_device_twin_reported_info

* added locks to iothub_client_statistics_add_device_twin_reported_info

* added locks to iothub_client_statistics_add_device_twin_reported_info

* update suppression file

* remove resubscribing to events on telemetry_messages

* remove longhaul_stop_listening_for_telemetry_messages()

* add back longhaul_stop_listening_for_telemetry_messages

* test

* test

* added lock to IOTHUB_VALIDATION_INFO

* add lock to IOTHUB_VALIDATION_INFO

* update locks

* master merge

* retry IoTHubDeviceTwin_UpdateTwin on network failure

* update to valgrind cutil

* update c-utility

* update cutility

* update cutility

* clean up cmake directory

* show valgrind version

* update valgrind

* upgrade valgrind

* apt update

* show valgrind version

* dump os version

* show os version

* disable longhaul tests running under valgrind

* remove short timeout

* update c-utility

* update c-utility to master

* update c-utility submodules

* handle failures in SASL states (#1942)

* handle failures in SASL states

* check for each enum values

* change ut to c99 and turn off cppunittest by default (#1941)

* [longhaul] filter twin desired messages that was lost from network disconnect (#1945)

* [longhaul] filter twin desired messages that was from network disconnect

* fix linux build break

* Update readme for PnP samples (#1946)

* Update readme for samples

* Change terminology

* update the uamqp linking (#1948)

* fix Static Analyzer issues (#1949)

* fix Static Analyzer issues

* fix unit test

* Update submodules (#1958)

* Sample indexing test

* reconnect AMQP if CONNECTION_STATE_CLOSE_RCVD state is received (#1960)

* Add more details to longhaul test failures (#1969)

* iothub_client/samples: Fix typo demonstarates -> demonstrates (#1972)

* enable tracing in longhaul tests (#1974)

* This fixes an error message when we get the DPS operation status that does not have a rety app property

* Update submodules

* Updating CA roots (#1971)

* Adding DigiCert G2 root to samples.

* Adding new CA roots, changing to generic sample certificate store.

* Adding CA roots to test tools.

* Adding Apple M1 instructions for sample

* Fix unit tests for change in prov_transport_amqp_common

* Updating documentation for ECC server certificate chain support. (#1979)

Updating documentation for ECC server certificate chain support.

* Update readme.md

* Initial commit for async C2D message ack

* Fix first set of tests for C2D async ack

* Exposed SendMessageDisposition functions in client and module/LL and convenience APIs (part 1)

The main public API changes are done.
Still pending are test updates for gate builds to pass, test additions,
add documentation for new functions.

* Exposed SendMessageDisposition functions in client and module/LL and convenience APIs (part 2)

Fixed existing tests.

* Add API documentation for C2D disposition functions

* Add tests for new *SendDisposition functions

* Update mqtt_client_send_message_response calls

* Provisioning client with AMQP-WS uses an incorrect port when proxy is configured (#2002)

* filter device_twin_reported event if there was a network disconnect (#2001)

* filter device_twin_reported event if there was a network disconnect

* update travel time..now that we have retry logic

* [ACR/1] C2D Async ACK

* Fail to upload long Blob using mbedtls+compact(Issue #1995)

* take in account pull request remarks

* Update iothub_client_common_longhaul.c (#2008)

Set device method travel time back to 300

* [ACR/2] C2D Async ACK

* update rasp reqs (#2013)

* provisioning_client: explicitly states function prototypes (#2012)

* provisioning_client: explicitly states function prototypes

When building with `-Wstrict-prototypes` flag enabled, functions with no
explicit prototype are reported (i.e. `()` instead of `(void)`).

Replacing the empty parenthesis with the correct form of declaring a
function without arguments fixes the issue.

Signed-off-by: Francesco Giancane <francesco.giancane@accenture.com>

* tests: provisioning_hsm.c update functions' signature

Update signatures of function marked with empty argument list instead
of explicitly states that they have no argument at all (i.e. `()` versus
`(void)` ).

This should make the code more compliant with language specifications
and also suppresses warnings in more pedantic compilers.

Signed-off-by: Francesco Giancane <francesco.giancane@accenture.com>

* tests: symm_key: update function signatures

explicitly states with `(void)` when functions do not accept arguments.

Signed-off-by: Francesco Giancane <francesco.giancane@accenture.com>

* tests: tpm_msr: update functions signatures

explicitly states with `(void)` when functions do not accept arguments.

Signed-off-by: Francesco Giancane <francesco.giancane@accenture.com>

* tests: x509: update functions signature

Explicitly states with `(void)` that functions do not accept arguments.

Signed-off-by: Francesco Giancane <francesco.giancane@accenture.com>

Co-authored-by: Eric Wolz <ericwol@microsoft.com>

* increase blob upload size (#2014)

* Rewrite MQTT PUBLISH topic parser for C2D / IoT Edge parsing (#1756)

* Add strict-prototypes to gcc build (#2015)

* [ACR/1] Add support for sending async responses for C2D messages

* Add notice about upcoming service TLS changes to the readme (#2025)

* Add notice about upcoming service TLS changes to the readme

* Update readme.md

Co-authored-by: Eric Wolz <ericwol@microsoft.com>

* Update readme.md

Co-authored-by: Eric Wolz <ericwol@microsoft.com>

* Update readme.md

Co-authored-by: Eric Wolz <ericwol@microsoft.com>

* Update readme.md

Co-authored-by: Eric Wolz <ericwol@microsoft.com>

* Update readme.md

Co-authored-by: Eric Wolz <ericwol@microsoft.com>

* Update readme.md

* Update readme.md

Co-authored-by: Eric Wolz <ericwol@microsoft.com>

* Update readme.md

Co-authored-by: Eric Wolz <ericwol@microsoft.com>

* [ACR/2] Add support for sending async responses for C2D messages

* [ACR/3] Add support for sending async responses for C2D messages

* Update c-utility

* Submodule update

* Update Cert Readme for Edge devices (#2040)

* Bump version to 1.8.0 and update LTS documentation for release. (#2042)

* Bump version to 1.8.0 and update LTS documentation for release.

* Add Documenation button that links to device developer docs to pnp device sample readmes (#2039)

Co-authored-by: Eric Wolz <ericwol@microsoft.com>

* Test windows hosted agent (#2017)

* Update longhaul.vsts-ci.yml

* Update longhaul.vsts-ci.yml

* Update longhaul.vsts-ci.yml

* Update longhaul.vsts-ci.yml

* Update longhaul.vsts-ci.yml

* Update build.cmd

* Update build.cmd

* Update build.cmd

* Update build.cmd

* Update build.cmd

* Update build.cmd

* Update build.cmd

* Update build.cmd

* Update longhaul.vsts-ci.yml

* Update longhaul.vsts-ci.yml

* Update build.cmd

* Update build.cmd

* Update build.cmd

* Update build.cmd

* Update build.cmd

* Update build.cmd

* Update build.cmd

* Update build.cmd

* Update build.cmd

* Update build.cmd

* Update build.cmd

* Update build.cmd

* Update build.cmd

* Update build.cmd

* Update build.cmd

* Update build.cmd

* Update build.cmd

* Update build.cmd

* Update build.cmd

* Update build.cmd

* Update build.cmd

* Update .vsts-ci.yml

* Update .vsts-ci.yml

* Update .vsts-ci.yml

* Update .vsts-ci.yml

* Update .vsts-ci.yml

* Update .vsts-ci.yml

* Update .vsts-ci.yml

* Update .vsts-ci.yml

* Update .vsts-ci.yml

* Update .vsts-ci.yml

* Update build.cmd

* Update .vsts-ci.yml

* Update build.cmd

* Update .vsts-ci.yml

* Update longhaul.vsts-ci.yml

* Update iothubtest.c

* Update .vsts-ci.yml

* Update build.cmd

* Update .vsts-ci.yml

* Update .vsts-ci.yml

* Update .vsts-ci.yml

* added amqp debug

* amqp

* update amqp

* add amqp logging

* update amqp branch

* Added CPP wrapper to unit tests

* update cmake min version to 3.5

* fix iothubtransport_mqtt_common_ut  cmake

* fix unit test

* fix cmake script

* fix cmake if statement

* restore iothubmessage_ut static

* run cppunit test only on win32 builds

* move to latest uamqp

* remove debug build cmd

* Update submodules

* Ericwol windows hosted agent (#2052)

* update dependednt submodules for hosted agents

* disable raspberrypi pipeline (#2056)

* fix failed unit tests

* fix IoTHubMessage_Destroy_with_context_Succeed unit test

Co-authored-by: Tim Gates <tim.gates@iress.com>
Co-authored-by: Cristian Pop <CIPop@users.noreply.github.com>
Co-authored-by: Dane Walton <dane.walton@microsoft.com>
Co-authored-by: Fanzhe Lyu <lvfanzhe@hotmail.com>
Co-authored-by: Mollie Munoz <mollie.munoz@microsoft.com>
Co-authored-by: Ewerton Scaboro da Silva <ewertons@microsoft.com>
Co-authored-by: Dane Walton <dawalton@microsoft.com>
Co-authored-by: Stewart Adam <s.adam@diffingo.com>
Co-authored-by: Kevin Cadieux <46019317+kevcadieux@users.noreply.github.com>
Co-authored-by: rajaggrawal <raj.agarwal790@gmail.com>
Co-authored-by: Aggrawal, Raj Kumar <rajkumar.aggrawal@barco.com>
Co-authored-by: John Spaith <john@spaith.com>
Co-authored-by: Wellington Duraes <wellington.duraes@gmail.com>
Co-authored-by: Dominic Betts <dominicbetts@users.noreply.github.com>
Co-authored-by: Thomas Bracht Laumann Jespersen <t@laumann.xyz>
Co-authored-by: Hatem Maalla <SESA520910@se.com>
Co-authored-by: Francesco Giancane <30423178+fgiancane8@users.noreply.github.com>
Co-authored-by: timtay-microsoft <timtay@microsoft.com>
Co-authored-by: hihigupt <higupt@microsoft.com>
Co-authored-by: Jimaco Brannian <84105740+JimacoMS4@users.noreply.github.com>
Co-authored-by: Mollie Munoz <momuno@microsoft.com>
  • Loading branch information
22 people authored Aug 25, 2021
1 parent ba93f4c commit 18aa905
Show file tree
Hide file tree
Showing 395 changed files with 8,801 additions and 3,677 deletions.
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -206,3 +206,4 @@ build_all/windows/nuget.exe
/cmake
/build
*.cert
/.vs
31 changes: 20 additions & 11 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
# Copyright (c) Microsoft. All rights reserved.
# Licensed under the MIT license. See LICENSE file in the project root for full license information.

cmake_minimum_required(VERSION 2.8.11)
cmake_minimum_required (VERSION 3.5)
project(azure_iot_sdks)

include("${CMAKE_CURRENT_LIST_DIR}/configs/azure_iot_sdksFunctions.cmake")
Expand Down Expand Up @@ -74,9 +74,7 @@ option(use_prov_client "Enable provisioning client" OFF)
option(use_tpm_simulator "tpm simulator type of hsm used with the provisioning client" OFF)
option(use_edge_modules "Enable support for running modules against Azure IoT Edge" OFF)
option(use_custom_heap "use externally defined heap functions instead of the malloc family" OFF)
option(use_baltimore_cert "set use_baltimore_cert to ON if the Baltimore cert is to be used, set to OFF to not use it" OFF)
option(use_microsoftazure_de_cert "set use_microsoftazure_de_cert to ON if the MicrosoftAzure DE cert is to be used, set to OFF to not use it" OFF)
option(use_portal_azure_cn_cert "set use_portal_azure_cn_cert to ON if the Portal Azure CN cert is to be used, set to OFF to not use it" OFF)
option(use_cppunittest "set use_cppunittest to ON to build CppUnitTest tests on Windows (default is OFF)" OFF)

set(compileOption_C "" CACHE STRING "passes a string to the command line of the C compiler")
set(compileOption_CXX "" CACHE STRING "passes a string to the command line of the C++ compiler")
Expand Down Expand Up @@ -114,8 +112,17 @@ else()
endif()

# Enable specific certs
if (${use_baltimore_cert})
add_definitions(-DUSE_BALTIMORE_CERT)
option(use_azure_cloud_rsa_cert "set use_azure_cloud_rsa_cert to ON if the Azure Cloud RSA certs are to be used for samples, set to OFF to not use it" OFF)
option(use_azure_cloud_ecc_cert "set use_azure_cloud_ecc_cert to ON if the Azure Cloud ECC certs are to be used for samples, set to OFF to not use it" OFF)
option(use_microsoftazure_de_cert "set use_microsoftazure_de_cert to ON if the MicrosoftAzure DE cert is to be used for samples, set to OFF to not use it" OFF)
option(use_portal_azure_cn_cert "set use_portal_azure_cn_cert to ON if the Portal Azure CN cert is to be used for samples, set to OFF to not use it" OFF)

if (${use_azure_cloud_rsa_cert})
add_definitions(-DUSE_AZURE_CLOUD_RSA_CERT)
endif()

if (${use_azure_cloud_ecc_cert})
add_definitions(-DUSE_AZURE_CLOUD_ECC_CERT)
endif()

if (${use_microsoftazure_de_cert})
Expand Down Expand Up @@ -229,16 +236,11 @@ set(original_skip_samples ${skip_samples})
set(run_e2e_tests OFF)
set(run_unittests OFF)
set(skip_samples ON)
set(use_cppunittest ON)

if (NOT ${use_installed_dependencies})
if (NOT TARGET azure_macro_utils_c AND EXISTS "${CMAKE_CURRENT_LIST_DIR}/deps/azure-macro-utils-c/CMakeLists.txt")
add_subdirectory(deps/azure-macro-utils-c)
endif()
if (NOT TARGET umock_c)
# Get the repo if it's not there
add_subdirectory(deps/umock-c)
endif()

if (${original_run_e2e_tests} OR ${original_run_unittests} OR ${run_sfc_tests})
if (NOT TARGET testrunnerswitcher)
Expand All @@ -250,6 +252,13 @@ if (NOT ${use_installed_dependencies})
endif()
enable_testing()
endif()


if (NOT TARGET umock_c)
# Get the repo if it's not there
add_subdirectory(deps/umock-c)
endif()

else()
if (NOT azure_macro_utils_cFOUND)
find_package(azure_macro_utils_c REQUIRED CONFIG)
Expand Down
44 changes: 27 additions & 17 deletions build/.vsts-ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -25,10 +25,10 @@ jobs:
displayName: 'build'
- job: windowsx86
pool:
name: 'aziotbld-win03'
name: 'sdk-c--win-vs2017'
steps:
- script: |
call "C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\Tools\VsDevCmd.bat"
call "C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\Common7\Tools\VsDevCmd.bat"
call jenkins\windows_c.cmd
displayName: 'build'
env:
Expand Down Expand Up @@ -62,7 +62,8 @@ jobs:
- job: raspberrypi
variables:
_PREVIEW_VSTS_DOCKER_IMAGE: "aziotbld/raspberrypi-c-buster:brown"
pool: Hosted Ubuntu 1604
pool:
name: 'sdk-c--ubuntu-18'
displayName: raspberrypi
steps:
- script: |
Expand All @@ -78,7 +79,8 @@ jobs:
- job: linuxoptions
variables:
_PREVIEW_VSTS_DOCKER_IMAGE: "aziotbld/vsts-linux-c-ubuntu"
pool: Hosted Ubuntu 1604
pool:
name: 'sdk-c--ubuntu-18'
displayName: 'linux-options'
steps:
- script: 'sudo ./jenkins/linux_c_option_test.sh'
Expand All @@ -89,10 +91,10 @@ jobs:
condition: always()
- job: windowsdynamic
pool:
name: 'aziotbld-win03'
name: 'sdk-c--win-vs2017'
steps:
- script: |
call "C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\Tools\VsDevCmd.bat"
call "%ProgramFiles(x86)%\Microsoft Visual Studio\2017\Enterprise\Common7\Tools\VsDevCmd.bat"
call jenkins\windows_c_build_as_dynamic.cmd
displayName: 'build'
env:
Expand Down Expand Up @@ -144,7 +146,8 @@ jobs:
- job: clang
variables:
_PREVIEW_VSTS_DOCKER_IMAGE: "aziotbld/ubuntu-clang"
pool: aziotbld-lin01
pool:
name: 'sdk-c--ubuntu-18'
displayName: 'clang'
steps:
- script: |
Expand Down Expand Up @@ -172,10 +175,11 @@ jobs:
- script: sudo rm -rf $(Agent.BuildDirectory)/*
displayName: 'cleanup'
condition: always()
- job: ubuntu1604
- job: ubuntu2004
variables:
_PREVIEW_VSTS_DOCKER_IMAGE: "aziotbld/linux-c-ubuntu"
pool: aziotbld-lin02
pool:
name: 'sdk-c--ubuntu-18'
displayName: 'ubuntu1604'
steps:
- script: |
Expand Down Expand Up @@ -206,7 +210,8 @@ jobs:
- job: debian
variables:
_PREVIEW_VSTS_DOCKER_IMAGE: "aziotbld/c-debian"
pool: aziotbld-lin02
pool:
name: 'sdk-c--ubuntu-18'
displayName: 'debian'
steps:
- script: |
Expand Down Expand Up @@ -235,7 +240,8 @@ jobs:
- job: linux_installed_deps
variables:
_PREVIEW_VSTS_DOCKER_IMAGE: "aziotbld/linux-c-ubuntu"
pool: aziotbld-lin02
pool:
name: 'sdk-c--ubuntu-18'
displayName: 'linux_installed_deps'
steps:
- script: |
Expand Down Expand Up @@ -266,7 +272,8 @@ jobs:
- job: wolfssl
variables:
_PREVIEW_VSTS_DOCKER_IMAGE: "aziotbld/wolfssl-1804"
pool: Hosted Ubuntu 1604
pool:
name: 'sdk-c--ubuntu-18'
displayName: 'wolfssl'
steps:
- script: |
Expand Down Expand Up @@ -297,7 +304,8 @@ jobs:
- job: bearssl
variables:
_PREVIEW_VSTS_DOCKER_IMAGE: "aziotbld/devops-c-bearssl"
pool: Hosted Ubuntu 1604
pool:
name: 'sdk-c--ubuntu-18'
displayName: 'bearssl'
steps:
- script: |
Expand Down Expand Up @@ -327,11 +335,11 @@ jobs:
condition: always()
- job: windowsx64
pool:
name: 'aziotbld-win03'
name: 'sdk-c--win-vs2017'
displayName: 'windowsx64'
steps:
- script: |
call "C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\Tools\VsDevCmd.bat"
call "C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\Common7\Tools\VsDevCmd.bat"
call jenkins\windows_c.cmd --platform x64
displayName: 'build'
env:
Expand Down Expand Up @@ -396,7 +404,8 @@ jobs:
- job: cares
variables:
_PREVIEW_VSTS_DOCKER_IMAGE: "aziotbld/c-ares"
pool: Hosted Ubuntu 1604
pool:
name: 'sdk-c--ubuntu-18'
displayName: 'cares'
steps:
- script: |
Expand Down Expand Up @@ -425,7 +434,8 @@ jobs:
- job: openssl_engine
variables:
_PREVIEW_VSTS_DOCKER_IMAGE: "aziotbld/openssl-pkcs11"
pool: Hosted Ubuntu 1604
pool:
name: 'sdk-c--ubuntu-18'
displayName: 'OpenSSL with pkcs11 engine and SoftHSM'
steps:
- script: |
Expand Down
3 changes: 2 additions & 1 deletion build/linux_back_compat.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,8 @@ jobs:
- job: ubuntu1604
variables:
_PREVIEW_VSTS_DOCKER_IMAGE: "aziotbld/linux-c-ubuntu"
pool: aziotbld-lin02
pool:
name: 'sdk-c--ubuntu-18'
displayName: 'ubuntu1604'
steps:
- script: |
Expand Down
13 changes: 5 additions & 8 deletions build/longhaul.vsts-ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,10 +12,13 @@ jobs:
variables:
_PREVIEW_VSTS_DOCKER_IMAGE: "aziotbld/linux-c-ubuntu"
pool:
name: 'aziotbld-lin01'
name: 'sdk-c--ubuntu-18'
displayName: 'longhaul_linux'
steps:
- script: |
sudo cat /etc/os-release
sudo apt show valgrind
sudo chmod --recursive ugo+rw cmake
sudo chmod 755 jenkins/longhaul_c.sh
sudo -E ./jenkins/longhaul_c.sh
displayName: 'build'
Expand All @@ -39,13 +42,10 @@ jobs:
PROVISIONING_CONNECTION_STRING_INVALIDCERT: $(PROVISIONING-CONNECTION-STRING-INVALIDCERT)
IOTHUB_LONGHAUL_TOTAL_DURATION_SECS: $(iotHubLonghaulTotalDurationSecs)
IOTHUB_LONGHAUL_LOOP_DURATION_SECS: $(iotHubLonghaulLoopDurationSecs)
- script: sudo rm -rf $(Agent.BuildDirectory)/*
displayName: 'cleanup'
condition: always()
- job: longhaul_windows
timeoutInMinutes: 800
pool:
name: 'aziotbld-win10'
name: 'sdk-c--win-vs2017'
steps:
- script: |
call "C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\Common7\Tools\VsDevCmd.bat"
Expand All @@ -68,6 +68,3 @@ jobs:
PROVISIONING_CONNECTION_STRING_INVALIDCERT: $(PROVISIONING-CONNECTION-STRING-INVALIDCERT)
IOTHUB_LONGHAUL_TOTAL_DURATION_SECS: $(iotHubLonghaulTotalDurationSecs)
IOTHUB_LONGHAUL_LOOP_DURATION_SECS: $(iotHubLonghaulLoopDurationSecs)
- script: cd .. && rd /Q /S $(Agent.BuildDirectory)\s
displayName: 'cleanup'
condition: always()
2 changes: 1 addition & 1 deletion build_all/docs/Doxyfile
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ PROJECT_NAME = "Microsoft Azure IoT Device SDK for C"
# could be handy for archiving the generated documentation or if some version
# control system is used.

PROJECT_NUMBER = 1.6.0
PROJECT_NUMBER = 1.8.0

# Using the PROJECT_BRIEF tag one can provide an optional one line description
# for a project that appears at the top of each page and should give viewer a
Expand Down
5 changes: 3 additions & 2 deletions build_all/linux/build.sh
Original file line number Diff line number Diff line change
Expand Up @@ -125,9 +125,10 @@ process_args ()
process_args $*

rm -r -f $build_folder
mkdir -p $build_folder
mkdir –m777 -p $build_folder
pushd $build_folder
cmake $toolchainfile $cmake_install_prefix -Drun_valgrind:BOOL=$run_valgrind -DcompileOption_C:STRING="$extracloptions" -Drun_e2e_tests:BOOL=$run_e2e_tests -Drun_sfc_tests:BOOL=$run-sfc-tests -Drun_longhaul_tests=$run_longhaul_tests -Duse_amqp:BOOL=$build_amqp -Duse_http:BOOL=$build_http -Duse_mqtt:BOOL=$build_mqtt -Ddont_use_uploadtoblob:BOOL=$no_blob -Drun_unittests:BOOL=$run_unittests -Dbuild_python:STRING=$build_python -Dno_logging:BOOL=$no_logging $build_root -Duse_prov_client:BOOL=$prov_auth -Duse_tpm_simulator:BOOL=$prov_use_tpm_simulator -Duse_edge_modules=$use_edge_modules
cmake $toolchainfile $cmake_install_prefix -Drun_valgrind:BOOL=$run_valgrind -DcompileOption_C=-Wstrict-prototypes -DcompileOption_C:STRING="$extracloptions" -Drun_e2e_tests:BOOL=$run_e2e_tests -Drun_sfc_tests:BOOL=$run-sfc-tests -Drun_longhaul_tests=$run_longhaul_tests -Duse_amqp:BOOL=$build_amqp -Duse_http:BOOL=$build_http -Duse_mqtt:BOOL=$build_mqtt -Ddont_use_uploadtoblob:BOOL=$no_blob -Drun_unittests:BOOL=$run_unittests -Dbuild_python:STRING=$build_python -Dno_logging:BOOL=$no_logging $build_root -Duse_prov_client:BOOL=$prov_auth -Duse_tpm_simulator:BOOL=$prov_use_tpm_simulator -Duse_edge_modules=$use_edge_modules
chmod --recursive ugo+rw ../../cmake

if [ "$make" = true ]
then
Expand Down
5 changes: 2 additions & 3 deletions build_all/windows/NuGet.Config
Original file line number Diff line number Diff line change
@@ -1,9 +1,8 @@
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<packageSources>
<clear />
<add key="nuget.org" value="https://api.nuget.org/v3/index.json" protocolVersion="3" />
<add key="nuget.org" value="https://www.nuget.org/api/v2/" />
<add key="Local NuGet package source" value="..\..\..\..\LocalNuget" />
</packageSources>
<packageRestore>
<add key="enabled" value="True" />
Expand All @@ -12,4 +11,4 @@
<activePackageSource>
<add key="All" value="(Aggregate source)" />
</activePackageSource>
</configuration>
</configuration>
20 changes: 14 additions & 6 deletions build_all/windows/build.cmd
Original file line number Diff line number Diff line change
Expand Up @@ -155,7 +155,7 @@ pushd %cmake-root%\cmake\%CMAKE_DIR%

if %MAKE_NUGET_PKG% == yes (
echo ***Running CMAKE for Win32***
cmake %build-root% -Drun_longhaul_tests:BOOL=%CMAKE_run_longhaul_tests% -Drun_e2e_tests:BOOL=%CMAKE_run_e2e_tests% -Drun_sfc_tests:BOOL=%CMAKE_run_sfc_tests% -Drun_unittests:BOOL=%CMAKE_run_unittests% -Duse_prov_client:BOOL=%prov_auth% -Duse_edge_modules=%use_edge_modules%
cmake %build-root% -Drun_longhaul_tests:BOOL=%CMAKE_run_longhaul_tests% -Drun_e2e_tests:BOOL=%CMAKE_run_e2e_tests% -Drun_sfc_tests:BOOL=%CMAKE_run_sfc_tests% -Duse_cppunittest:BOOL=ON -Drun_unittests:BOOL=%CMAKE_run_unittests% -Duse_prov_client:BOOL=%prov_auth% -G "Visual Studio 15 2017" -A Win32 -Duse_edge_modules=%use_edge_modules%
if not !ERRORLEVEL!==0 exit /b !ERRORLEVEL!
popd

Expand All @@ -167,7 +167,7 @@ if %MAKE_NUGET_PKG% == yes (
rem no error checking

pushd %cmake-root%\cmake\iotsdk_x64
cmake -Drun_longhaul_tests:BOOL=%CMAKE_run_longhaul_tests% -Drun_e2e_tests:BOOL=%CMAKE_run_e2e_tests% -Drun_sfc_tests:BOOL=%CMAKE_run_sfc_tests% -Drun_unittests:BOOL=%CMAKE_run_unittests% %build-root% -Duse_prov_client:BOOL=%prov_auth% -G "Visual Studio 14 Win64" -Duse_edge_modules=%use_edge_modules%
cmake -Drun_longhaul_tests:BOOL=%CMAKE_run_longhaul_tests% -Drun_e2e_tests:BOOL=%CMAKE_run_e2e_tests% -Drun_sfc_tests:BOOL=%CMAKE_run_sfc_tests% -Drun_unittests:BOOL=%CMAKE_run_unittests% %build-root% -Duse_prov_client:BOOL=%prov_auth% -G "Visual Studio 15 2017" -A x64 -Duse_edge_modules=%use_edge_modules%
if not !ERRORLEVEL!==0 exit /b !ERRORLEVEL!
popd

Expand All @@ -179,23 +179,31 @@ if %MAKE_NUGET_PKG% == yes (
rem no error checking

pushd %cmake-root%\cmake\iotsdk_arm
cmake -Drun_longhaul_tests:BOOL=%CMAKE_run_longhaul_tests% -Drun_e2e_tests:BOOL=%CMAKE_run_e2e_tests% -Drun_sfc_tests:BOOL=%CMAKE_run_sfc_tests% -Drun_unittests:BOOL=%CMAKE_run_unittests% %build-root% -Duse_prov_client:BOOL=%prov_auth% -G "Visual Studio 14 ARM" -Duse_edge_modules=%use_edge_modules%
cmake -Drun_longhaul_tests:BOOL=%CMAKE_run_longhaul_tests% -Drun_e2e_tests:BOOL=%CMAKE_run_e2e_tests% -Drun_sfc_tests:BOOL=%CMAKE_run_sfc_tests% -Drun_unittests:BOOL=%CMAKE_run_unittests% %build-root% -Duse_prov_client:BOOL=%prov_auth% -G "Visual Studio 15 2017" -A ARM -Duse_edge_modules=%use_edge_modules%
if not !ERRORLEVEL!==0 exit /b !ERRORLEVEL!

) else if %build-platform% == x64 (
echo ***Running CMAKE for Win64***
cmake -Drun_longhaul_tests:BOOL=%CMAKE_run_longhaul_tests% -Drun_e2e_tests:BOOL=%CMAKE_run_e2e_tests% -Drun_sfc_tests:BOOL=%CMAKE_run_sfc_tests% -Drun_unittests:BOOL=%CMAKE_run_unittests% %build-root% -Duse_prov_client:BOOL=%prov_auth% -G "Visual Studio 14 Win64" -Duse_edge_modules=%use_edge_modules%
cmake -Drun_longhaul_tests:BOOL=%CMAKE_run_longhaul_tests% -Drun_e2e_tests:BOOL=%CMAKE_run_e2e_tests% -Drun_sfc_tests:BOOL=%CMAKE_run_sfc_tests% -Duse_cppunittest:BOOL=OFF -Drun_unittests:BOOL=%CMAKE_run_unittests% %build-root% -Duse_prov_client:BOOL=%prov_auth% -G "Visual Studio 15 2017" -A x64 -Duse_edge_modules=%use_edge_modules%
if not !ERRORLEVEL!==0 exit /b !ERRORLEVEL!
) else if %build-platform% == arm (
echo ***Running CMAKE for ARM***
cmake -Drun_longhaul_tests:BOOL=%CMAKE_run_longhaul_tests% -Drun_e2e_tests:BOOL=%CMAKE_run_e2e_tests% -Drun_sfc_tests:BOOL=%CMAKE_run_sfc_tests% -Drun_unittests:BOOL=%CMAKE_run_unittests% %build-root% -Duse_prov_client:BOOL=%prov_auth% -G "Visual Studio 14 ARM" -Duse_edge_modules=%use_edge_modules%
cmake -Drun_longhaul_tests:BOOL=%CMAKE_run_longhaul_tests% -Drun_e2e_tests:BOOL=%CMAKE_run_e2e_tests% -Drun_sfc_tests:BOOL=%CMAKE_run_sfc_tests% -Drun_unittests:BOOL=%CMAKE_run_unittests% %build-root% -Duse_prov_client:BOOL=%prov_auth% -G "Visual Studio 15 2017" -A ARM -Duse_edge_modules=%use_edge_modules%
if not !ERRORLEVEL!==0 exit /b !ERRORLEVEL!
) else (
echo ***Running CMAKE for Win32***
cmake -Drun_longhaul_tests:BOOL=%CMAKE_run_longhaul_tests% -Drun_e2e_tests:BOOL=%CMAKE_run_e2e_tests% -Drun_sfc_tests:BOOL=%CMAKE_run_sfc_tests% -Drun_unittests:BOOL=%CMAKE_run_unittests% %build-root% -Duse_prov_client:BOOL=%prov_auth% -Duse_edge_modules=%use_edge_modules%
cmake -Drun_longhaul_tests:BOOL=%CMAKE_run_longhaul_tests% -Drun_e2e_tests:BOOL=%CMAKE_run_e2e_tests% -Drun_sfc_tests:BOOL=%CMAKE_run_sfc_tests% -Drun_unittests:BOOL=%CMAKE_run_unittests% %build-root% -Duse_prov_client:BOOL=%prov_auth% -G "Visual Studio 15 2017" -A Win32 -Duse_edge_modules=%use_edge_modules%
if not !ERRORLEVEL!==0 exit /b !ERRORLEVEL!
)

echo ***checking msbuild***
where /q msbuild
IF ERRORLEVEL 1 (
echo ***setting VC paths***
IF EXIST "%ProgramFiles(x86)%\Microsoft Visual Studio\2017\Enterprise\Common7\Tools\VsMSBuildCmd.bat" call "%ProgramFiles(x86)%\Microsoft Visual Studio\2017\Enterprise\Common7\Tools\VsMSBuildCmd.bat"
)
where msbuild

if %MAKE_NUGET_PKG% == yes (
if %make%==yes (
echo ***Building all configurations***
Expand Down
4 changes: 2 additions & 2 deletions build_all/windows/build_client.cmd
Original file line number Diff line number Diff line change
Expand Up @@ -107,11 +107,11 @@ pushd %USERPROFILE%\%cmake-output%

if %build-platform% == Win32 (
echo ***Running CMAKE for Win32***
cmake %build-root% -Drun_unittests:BOOL=%CMAKE_run_unittests% -Dbuild_python:STRING=%CMAKE_build_python% -Dno_logging:BOOL=%CMAKE_no_logging% -Duse_prov_client:BOOL=%prov_auth% -Duse_tpm_simulator:BOOL=%prov_use_tpm_simulator% -Duse_edge_modules=%use_edge_modules%
cmake %build-root% -G "Visual Studio 15 2017" -A Win32 -Drun_unittests:BOOL=%CMAKE_run_unittests% -Dbuild_python:STRING=%CMAKE_build_python% -Dno_logging:BOOL=%CMAKE_no_logging% -Duse_prov_client:BOOL=%prov_auth% -Duse_tpm_simulator:BOOL=%prov_use_tpm_simulator% -Duse_edge_modules=%use_edge_modules%
if not !ERRORLEVEL!==0 exit /b !ERRORLEVEL!
) else (
echo ***Running CMAKE for Win64***
cmake %build-root% -G "Visual Studio 14 Win64" -Drun_unittests:BOOL=%CMAKE_run_unittests% -Dbuild_python:STRING=%CMAKE_build_python% -Dno_logging:BOOL=%CMAKE_no_logging% -Duse_prov_client:BOOL=%prov_auth% -Duse_tpm_simulator:BOOL=%prov_use_tpm_simulator% -Duse_edge_modules=%use_edge_modules%
cmake %build-root% -G "Visual Studio 15 2017" -A x64 -Drun_unittests:BOOL=%CMAKE_run_unittests% -Dbuild_python:STRING=%CMAKE_build_python% -Dno_logging:BOOL=%CMAKE_no_logging% -Duse_prov_client:BOOL=%prov_auth% -Duse_tpm_simulator:BOOL=%prov_use_tpm_simulator% -Duse_edge_modules=%use_edge_modules%
if not !ERRORLEVEL!==0 exit /b !ERRORLEVEL!
)

Expand Down
2 changes: 1 addition & 1 deletion c-utility
Submodule c-utility updated 125 files
Loading

0 comments on commit 18aa905

Please sign in to comment.