Skip to content
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

[MAN-369] laerdal mcu mgr new releases do not get auto announced as intended when merging to develop master main #120

Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
18 commits
Select commit Hold shift + click to select a range
f27d80a
clean (Laerdal.Builder.targets): ShouldSkipMacCatalyst -> Should_Skip…
ksidirop-laerdal Jul 9, 2024
5d3090a
fix (Laerdal.CreateNewReleaseInGithub.sh): fix the bug caused by curl…
ksidirop-laerdal Jul 9, 2024
6a6b128
sidefix (Laerdal.Builder.targets): fix SourceRoot value for the vario…
ksidirop-laerdal Jul 9, 2024
4fc2b9c
sidefix (Laerdal.Builder.targets): we now pass ContinuousIntegrationB…
ksidirop-laerdal Jul 9, 2024
dcc4740
clean (Laerdal.McuMgr.csproj)
ksidirop-laerdal Jul 9, 2024
1064f35
feat (Laerdal.SetupBuildEnvironment.sh): list xcode-sdks from xcode's…
ksidirop-laerdal Jul 9, 2024
51411a6
refa (Laerdal.Mac.CompileAndGenerateFatLibs.sh): the script now emits…
ksidirop-laerdal Jul 9, 2024
5b73884
refa (Laerdal.Mac.CompileAndGenerateFatLibs.sh): SDK_VERSION -> XCODE…
ksidirop-laerdal Jul 9, 2024
5b37574
fix (Laerdal.McuMgr.Bindings.iOS.csproj): we now explicitly set XCODE…
ksidirop-laerdal Jul 9, 2024
65af908
refa (Laerdal.Mac.CompileAndGenerateFatLibs.sh): if no $XCODEBUILD_TA…
ksidirop-laerdal Jul 9, 2024
71d03e8
refa (FileDownloader.DownloadAsync()): trivial neutral internal renam…
ksidirop-laerdal Jul 9, 2024
6e6f30f
doc (FileDownloader.DownloadAsync()): add comments explaining our int…
ksidirop-laerdal Jul 9, 2024
0722dc0
fix (FileDownloaderTestbed.SingleFileDownloadAsync.ShouldThrowRemoteF…
ksidirop-laerdal Jul 9, 2024
078e34f
fix (tests-suite): all tests have been refactored to raise the state-…
ksidirop-laerdal Jul 9, 2024
ea1aa43
fix (Laerdal.Mac.CompileAndGenerateFatLibs.sh): fix the way we initia…
ksidirop-laerdal Jul 9, 2024
39e4b13
refa (FileUploader.UploadAsync()): we now rely on the file-uploaded e…
ksidirop-laerdal Jul 9, 2024
d4119ba
refa (FileUploader.UploadAsync()): trivial neutral renames for the sa…
ksidirop-laerdal Jul 9, 2024
77bec88
clean (tests-suite): remove unused using-directives
ksidirop-laerdal Jul 9, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/workflows/github-actions.yml
Original file line number Diff line number Diff line change
Expand Up @@ -63,7 +63,7 @@ jobs:
msbuild \
"Laerdal.Builder.targets" \
-m:1 \
-p:ShouldSkipMacCatalyst="false" \
-p:Should_Skip_MacCatalyst="false" \
\
-p:PackageOutputPath="${{env.BUILD_REPOSITORY_FOLDERPATH}}/Artifacts" \
-p:Laerdal_Gradle_Path="/opt/homebrew/opt/gradle@7/bin/gradle" \
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,12 +8,20 @@
#
# Note that all parameters passed to xcodebuild must be in the form of -parameter value instead of --parameter

declare SDK_VERSION="" # xcodebuild -showsdks
declare XCODEBUILD_TARGET_SDK="${XCODEBUILD_TARGET_SDK:-iphoneos}"
declare XCODEBUILD_TARGET_SDK_VERSION="${XCODEBUILD_TARGET_SDK_VERSION}" # xcodebuild -showsdks

if [ "$XCODEBUILD_TARGET_SDK" == "iphoneos" ] && [ -z "$XCODEBUILD_TARGET_SDK_VERSION" ]; then # ios
XCODEBUILD_TARGET_SDK_VERSION="17.2"

elif [ "$XCODEBUILD_TARGET_SDK" == "macosx" ] && [ -z "$XCODEBUILD_TARGET_SDK_VERSION" ]; then # maccatalyst
XCODEBUILD_TARGET_SDK_VERSION="14.2"
fi

declare SWIFT_BUILD_CONFIGURATION="${SWIFT_BUILD_CONFIGURATION:-Release}"

declare SUPPORTS_MACCATALYST="${SUPPORTS_MACCATALYST:-NO}"
declare XCODEBUILD_TARGET_SDK_WITH_VERSION_IF_ANY="$XCODEBUILD_TARGET_SDK$SDK_VERSION" # if the version is the empty string then the latest version of the sdk will be used which is fine
declare XCODEBUILD_TARGET_SDK_WITH_VERSION_IF_ANY="$XCODEBUILD_TARGET_SDK$XCODEBUILD_TARGET_SDK_VERSION"

declare SWIFT_OUTPUT_PATH="${SWIFT_OUTPUT_PATH:-./VendorFrameworks/swift-framework-proxy/}"

Expand All @@ -38,6 +46,8 @@ function print_macos_sdks() {
echo "** xcode version : '$( "xcodebuild" -version )'"
echo "** xcode sdks :"
xcodebuild -showsdks
echo "** xcode sdks visible to sharpie :"
sharpie xcode -sdks

echo
echo "** SWIFT_BUILD_PATH : '$SWIFT_BUILD_PATH' "
Expand All @@ -51,9 +61,9 @@ function print_macos_sdks() {
echo "** OUTPUT_FOLDER_NAME : '$OUTPUT_FOLDER_NAME' "
echo "** OUTPUT_SHARPIE_HEADER_FILES_PATH : '$OUTPUT_SHARPIE_HEADER_FILES_PATH' "
echo
echo "** SDK_VERSION : '${SDK_VERSION:-(No specific version specified so the latest version will be used)}'"
echo "** SUPPORTS_MACCATALYST : '$SUPPORTS_MACCATALYST' "
echo "** XCODEBUILD_TARGET_SDK : '$XCODEBUILD_TARGET_SDK' "
echo "** XCODEBUILD_TARGET_SDK_VERSION : '${XCODEBUILD_TARGET_SDK_VERSION:-(No specific version specified so the latest version will be used)}'"
echo "** XCODEBUILD_TARGET_SDK_WITH_VERSION_IF_ANY : '$XCODEBUILD_TARGET_SDK_WITH_VERSION_IF_ANY' "
echo
}
Expand Down Expand Up @@ -168,6 +178,7 @@ function create_fat_binaries() {
fi

echo "**** (FatBinaries 5/8) Generating binding api definition and structs"
set -x
sharpie \
bind \
-sdk "$XCODEBUILD_TARGET_SDK_WITH_VERSION_IF_ANY" \
Expand All @@ -177,6 +188,7 @@ function create_fat_binaries() {
"$SWIFT_OUTPUT_PATH/$SWIFT_PROJECT_NAME.framework/Headers/$SWIFT_PROJECT_NAME-Swift.h" \
-clang -arch arm64 # vital needed for mac-catalyst
local exitCode=$?
set +x

if [ $exitCode -ne 0 ]; then
echo "** [FAILED] Failed to generate binding api definitions and structs"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -159,7 +159,7 @@

<!-- 1. build and generate the fat libs from the proxy swift project -->
<Exec WorkingDirectory="../Laerdal.McuMgr.Bindings.MacCatalystAndIos.Native" Command=" chmod +x ./Laerdal.Mac.CompileAndGenerateFatLibs.sh "/>
<Exec WorkingDirectory="../Laerdal.McuMgr.Bindings.MacCatalystAndIos.Native" Command=" SWIFT_OUTPUT_PATH='$(NativeFrameworkParentFolderpath)' XCODEBUILD_TARGET_SDK='iphoneos' ./Laerdal.Mac.CompileAndGenerateFatLibs.sh "/>
<Exec WorkingDirectory="../Laerdal.McuMgr.Bindings.MacCatalystAndIos.Native" Command=" SWIFT_OUTPUT_PATH='$(NativeFrameworkParentFolderpath)' XCODEBUILD_TARGET_SDK='iphoneos' ./Laerdal.Mac.CompileAndGenerateFatLibs.sh "/>

<!-- warning its absolutely vital to remove any softlink files as they are causing -->
<!-- warning codesign to fail when using the resulting nuget in maui apps go figure ... -->
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,6 @@
using Laerdal.McuMgr.DeviceResetter.Contracts;
using Laerdal.McuMgr.DeviceResetter.Contracts.Enums;
using Laerdal.McuMgr.DeviceResetter.Contracts.Native;
using GenericNativeDeviceResetterCallbacksProxy_ = Laerdal.McuMgr.DeviceResetter.DeviceResetter.GenericNativeDeviceResetterCallbacksProxy;

namespace Laerdal.McuMgr.Tests.DeviceResetter
{
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -59,9 +59,9 @@ public override EFileDownloaderVerdict BeginDownload(string remoteFilePath)
StateChangedAdvertisement(remoteFilePath, EFileDownloaderState.Idle, EFileDownloaderState.Downloading);

await Task.Delay(20);
DownloadCompletedAdvertisement(remoteFilePath, _mockedFileData);

StateChangedAdvertisement(remoteFilePath, EFileDownloaderState.Downloading, EFileDownloaderState.Complete);
StateChangedAdvertisement(remoteFilePath, EFileDownloaderState.Downloading, EFileDownloaderState.Complete); // order
DownloadCompletedAdvertisement(remoteFilePath, _mockedFileData); // order
});

return verdict;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -51,8 +51,8 @@ public override EFileDownloaderVerdict BeginDownload(string remoteFilePath)
StateChangedAdvertisement(remoteFilePath, EFileDownloaderState.Idle, EFileDownloaderState.Downloading);

await Task.Delay(20);
DownloadCompletedAdvertisement(remoteFilePath, new byte[] { });
StateChangedAdvertisement(remoteFilePath, EFileDownloaderState.Downloading, EFileDownloaderState.Complete);
StateChangedAdvertisement(remoteFilePath, EFileDownloaderState.Downloading, EFileDownloaderState.Complete); // order
DownloadCompletedAdvertisement(remoteFilePath, new byte[] { }); // order
});

return verdict;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -96,23 +96,26 @@ public override EFileDownloaderVerdict BeginDownload(string remoteFilePath)
var remoteFilePathUppercase = remoteFilePath.ToUpperInvariant();
if (remoteFilePathUppercase.Contains("some/file/that/exist/but/is/erroring/out/when/we/try/to/download/it.bin".ToUpperInvariant()))
{
StateChangedAdvertisement(remoteFilePath, oldState: EFileDownloaderState.Downloading, newState: EFileDownloaderState.Error);
FatalErrorOccurredAdvertisement(remoteFilePath, "foobar");
}
else if (remoteFilePathUppercase.Contains("some/file/that/doesnt/exist.bin".ToUpperInvariant()))
{
StateChangedAdvertisement(remoteFilePath, oldState: EFileDownloaderState.Downloading, newState: EFileDownloaderState.Error);
FatalErrorOccurredAdvertisement(remoteFilePath, "NO ENTRY (5)");
}
else if (remoteFilePathUppercase.Contains("some/file/that/exist/and/completes/after/a/couple/of/attempts.bin".ToUpperInvariant())
&& _retryCountForProblematicFile++ < 3)
{
StateChangedAdvertisement(remoteFilePath, oldState: EFileDownloaderState.Downloading, newState: EFileDownloaderState.Error);
FatalErrorOccurredAdvertisement(remoteFilePath, "ping pong");
}
else
{
_expectedResults.TryGetValue(remoteFilePath, out var expectedFileContent);

DownloadCompletedAdvertisement(remoteFilePath, expectedFileContent);
StateChangedAdvertisement(remoteFilePath, EFileDownloaderState.Downloading, EFileDownloaderState.Complete);
StateChangedAdvertisement(remoteFilePath, EFileDownloaderState.Downloading, EFileDownloaderState.Complete); // order
DownloadCompletedAdvertisement(remoteFilePath, expectedFileContent); // order
}
});

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -59,8 +59,9 @@ public override EFileDownloaderVerdict BeginDownload(string remoteFilePath)
StateChangedAdvertisement(remoteFilePath, EFileDownloaderState.Idle, EFileDownloaderState.Downloading);

await Task.Delay(20);
DownloadCompletedAdvertisement(remoteFilePath, new byte[] { });
StateChangedAdvertisement(remoteFilePath, EFileDownloaderState.Downloading, EFileDownloaderState.Complete);

StateChangedAdvertisement(remoteFilePath, EFileDownloaderState.Downloading, EFileDownloaderState.Complete); // order
DownloadCompletedAdvertisement(remoteFilePath, new byte[] { }); // order
});

return verdict;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -50,8 +50,9 @@ public override EFileDownloaderVerdict BeginDownload(string remoteFilePath)
StateChangedAdvertisement(remoteFilePath, EFileDownloaderState.Idle, EFileDownloaderState.Downloading);

await Task.Delay(20);
DownloadCompletedAdvertisement(remoteFilePath, new byte[] { });
StateChangedAdvertisement(remoteFilePath, EFileDownloaderState.Downloading, EFileDownloaderState.Complete);

StateChangedAdvertisement(remoteFilePath, EFileDownloaderState.Downloading, EFileDownloaderState.Complete); // order
DownloadCompletedAdvertisement(remoteFilePath, new byte[] { }); // order
});

return verdict;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -103,9 +103,8 @@ public override EFileDownloaderVerdict BeginDownload(string remoteFilePath)
return;
}

DownloadCompletedAdvertisement(remoteFilePath, _mockedFileData);

StateChangedAdvertisement(remoteFilePath, EFileDownloaderState.Downloading, EFileDownloaderState.Complete);
StateChangedAdvertisement(remoteFilePath, EFileDownloaderState.Downloading, EFileDownloaderState.Complete); // order
DownloadCompletedAdvertisement(remoteFilePath, _mockedFileData); // order
});

return verdict;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -83,9 +83,8 @@ public override EFileDownloaderVerdict BeginDownload(string remoteFilePath)

await Task.Delay(2_000);

FatalErrorOccurredAdvertisement(remoteFilePath, "fatal error occurred");

StateChangedAdvertisement(remoteFilePath, EFileDownloaderState.Downloading, EFileDownloaderState.Error);
FatalErrorOccurredAdvertisement(remoteFilePath, "fatal error occurred");
});

return verdict;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -94,9 +94,8 @@ public override EFileDownloaderVerdict BeginDownload(string remoteFilePath)

await Task.Delay(100);

FatalErrorOccurredAdvertisement(remoteFilePath, _nativeErrorMessageForFileNotFound);

StateChangedAdvertisement(remoteFilePath, EFileDownloaderState.Downloading, EFileDownloaderState.Error);
FatalErrorOccurredAdvertisement(remoteFilePath, _nativeErrorMessageForFileNotFound);
});

return verdict;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -55,9 +55,9 @@ public override EFileDownloaderVerdict BeginDownload(string remoteFilePath)
StateChangedAdvertisement(remoteFilePath, EFileDownloaderState.Idle, EFileDownloaderState.Downloading);

await Task.Delay(20);
DownloadCompletedAdvertisement(remoteFilePath, _mockedFileData);

StateChangedAdvertisement(remoteFilePath, EFileDownloaderState.Downloading, EFileDownloaderState.Complete);
StateChangedAdvertisement(remoteFilePath, EFileDownloaderState.Downloading, EFileDownloaderState.Complete); // order
DownloadCompletedAdvertisement(remoteFilePath, _mockedFileData); // order
});

return verdict;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -115,9 +115,8 @@ public override EFileDownloaderVerdict BeginDownload(string remoteFilePath)
if (_cancellationTokenSource.IsCancellationRequested)
return;

DownloadCompletedAdvertisement(remoteFilePath, _mockedFileData);

StateChangedAdvertisement(remoteFilePath, EFileDownloaderState.Downloading, EFileDownloaderState.Complete);
StateChangedAdvertisement(remoteFilePath, EFileDownloaderState.Downloading, EFileDownloaderState.Complete); // order
DownloadCompletedAdvertisement(remoteFilePath, _mockedFileData); // order
}, _cancellationTokenSource.Token);

return verdict;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -58,10 +58,13 @@ public override EFileDownloaderVerdict BeginDownload(string remoteFilePath)
Task.Run(async () => //00 vital
{
await Task.Delay(10);

StateChangedAdvertisement(resource: remoteFilePath, oldState: EFileDownloaderState.Idle, newState: EFileDownloaderState.Downloading);

await Task.Delay(1_000);
StateChangedAdvertisement(resource: remoteFilePath, oldState: EFileDownloaderState.Downloading, newState: EFileDownloaderState.Complete);

StateChangedAdvertisement(resource: remoteFilePath, oldState: EFileDownloaderState.Downloading, newState: EFileDownloaderState.Complete); // order
DownloadCompletedAdvertisement(remoteFilePath, new byte[]{}); // order
});

return verdict;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -97,9 +97,8 @@ public override EFileDownloaderVerdict BeginDownload(string remoteFilePath)

await Task.Delay(100);

FatalErrorOccurredAdvertisement(remoteFilePath, _nativeErrorMessageForFileNotFound);

StateChangedAdvertisement(remoteFilePath, EFileDownloaderState.Downloading, EFileDownloaderState.Error);
StateChangedAdvertisement(remoteFilePath, EFileDownloaderState.Downloading, EFileDownloaderState.Error); // order simulates how the native code behaves
FatalErrorOccurredAdvertisement(remoteFilePath, _nativeErrorMessageForFileNotFound); // order simulates how the csharp wrapper behaves
});

return verdict;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,6 @@
using Laerdal.McuMgr.FileDownloader.Contracts;
using Laerdal.McuMgr.FileDownloader.Contracts.Enums;
using Laerdal.McuMgr.FileDownloader.Contracts.Native;
using GenericNativeFileDownloaderCallbacksProxy_ = Laerdal.McuMgr.FileDownloader.FileDownloader.GenericNativeFileDownloaderCallbacksProxy;

namespace Laerdal.McuMgr.Tests.FileDownloader
{
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -56,9 +56,8 @@ public override EFileUploaderVerdict BeginUpload(string remoteFilePath, byte[] m
StateChangedAdvertisement(remoteFilePath, EFileUploaderState.Idle, EFileUploaderState.Uploading);

await Task.Delay(20);
FileUploadedAdvertisement(remoteFilePath);

StateChangedAdvertisement(remoteFilePath, EFileUploaderState.Uploading, EFileUploaderState.Complete);
StateChangedAdvertisement(remoteFilePath, EFileUploaderState.Uploading, EFileUploaderState.Complete); // order
FileUploadedAdvertisement(remoteFilePath); // order
});

return verdict;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -50,8 +50,8 @@ public override EFileUploaderVerdict BeginUpload(string remoteFilePath, byte[] d
StateChangedAdvertisement(remoteFilePath, EFileUploaderState.Idle, EFileUploaderState.Uploading);

await Task.Delay(20);
FileUploadedAdvertisement(remoteFilePath);
StateChangedAdvertisement(remoteFilePath, EFileUploaderState.Uploading, EFileUploaderState.Complete);
FileUploadedAdvertisement(remoteFilePath);
});

return verdict;
Expand Down
Loading