-
Notifications
You must be signed in to change notification settings - Fork 458
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Upgrade to .NET 8 + latest LTS of IoT SDKs #7262
Merged
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
damonbarry
changed the title
Upgrade to .NET 8 and latest LTS IoT SDKs
Upgrade to .NET 8 + latest LTS of IoT SDKs
Apr 9, 2024
6 tasks
damonbarry
requested review from
nlcamp,
ggjjj,
yophilav,
gauravIoTEdge,
varunpuranik and
ancaantochi
April 10, 2024 18:03
FYI, the long haul test still looking good after 25h. |
[like] Damon Barry reacted to your message:
…________________________________
From: yophilav ***@***.***>
Sent: Thursday, April 11, 2024 9:57:10 PM
To: Azure/iotedge ***@***.***>
Cc: Damon Barry ***@***.***>; Author ***@***.***>
Subject: Re: [Azure/iotedge] Upgrade to .NET 8 + latest LTS of IoT SDKs (PR #7262)
FYI, the long haul test still looking good after 25h.
—
Reply to this email directly, view it on GitHub<#7262 (comment)>, or unsubscribe<https://github.com/notifications/unsubscribe-auth/ACE7UJJ4JTAIJPCYYIBVEL3Y44BLNAVCNFSM6AAAAABF7C275CVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDANJQGYZDMNRYGA>.
You are receiving this because you authored the thread.Message ID: ***@***.***>
|
yophilav
reviewed
Apr 11, 2024
edge-modules/functions/samples/EdgeHubTrigger-Csharp/EdgeHubTriggerCSharp.csproj
Show resolved
Hide resolved
yophilav
approved these changes
Apr 12, 2024
6 tasks
kodiakhq bot
pushed a commit
that referenced
this pull request
May 1, 2024
This pipeline should probably have been updated in #7262 but was missed. This change: - Updates the pipeline to look for test binaries in the net8.0 folder. - Removes the code that registers packages.microsoft.com. The pipeline runners already have it, and they register it as signed with a specific keyring file, which may clash with the older style of registration found in the tests. With this change, we assume that the caller has registered the repo as a prerequisite. I've tested that the pipeline passes with this change. ## Azure IoT Edge PR checklist:
damonbarry
added a commit
to damonbarry/iotedge
that referenced
this pull request
May 1, 2024
This pipeline should probably have been updated in Azure#7262 but was missed. This change: - Updates the pipeline to look for test binaries in the net8.0 folder. - Removes the code that registers packages.microsoft.com. The pipeline runners already have it, and they register it as signed with a specific keyring file, which may clash with the older style of registration found in the tests. With this change, we assume that the caller has registered the repo as a prerequisite. I've tested that the pipeline passes with this change.
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
In preparation for v1.5, this change updates our C# code to .NET 8.0. It also updates our dependency on the IoT SDKs to the latest LTS versions (Microsoft.Azure.Devices.Client 1.36.10, Microsoft.Azure.Devices 1.31.6).
I had to upgrade our dependency on Azure.Storage.Blobs because the device SDK upgraded theirs. This required that I upgrade the code in Edge Agent and some test modules to use newer storage blob libraries that aren't deprecated. I did local testing of the Edge Agent code to ensure that the new calls work as expected.
I updated the buildBranch.sh and runTests.sh scripts. buildBranch.sh was building two different ways: (1) it was doing a standard build of all .NET components from the repo root (
dotnet build -c Release
), and (2) it was publishing each "app" in a manner suitable for including in Docker images. I simplified it to just focus on the second scenario. For the first, I updated dotnet.yaml to calldotnet test
directly. I simplified runTests.sh to usedotnet test
instead ofdotnet vstest
(which is being deprecated) becausedotnet test
now supports running pre-built binaries instead of always building the binaries itself. Note thatdotnet test
apparently doesn't support some of the parallelization features that vstest did, but the time difference is minimal and the script logic is vastly simplified.I updated EdgeHubTriggerCsharp.csproj to specify its own TargetFramework property, rather than including netcoreappVersion.props, because it has dependedencies that don't yet support .NET 8.
I successfully ran the CI Build pipeline with these changes. To test, I ran the end-to-end tests, nested end-to-end tests, connectivity tests, and ISA-95 smoke tests against the new bits.
Azure IoT Edge PR checklist:
This checklist is used to make sure that common guidelines for a pull request are followed.
General Guidelines and Best Practices
Testing Guidelines