From: Santiago Fernandez Madero Date: Tue, 17 Aug 2021 01:01:52 +0000 (-0700) Subject: Add linux mariner to rolling builds for libraries tests (#57322) X-Git-Tag: accepted/tizen/unified/20220110.054933~353 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=380cfc9f3b4e1dab3266f44bb178ec456a9ae8a6;p=platform%2Fupstream%2Fdotnet%2Fruntime.git Add linux mariner to rolling builds for libraries tests (#57322) * Add linux mariner to rolling builds for libraries tests * Adjust ChasChaPoly crypto test for mariner * Disable tests failing on mono --- diff --git a/eng/pipelines/libraries/helix-queues-setup.yml b/eng/pipelines/libraries/helix-queues-setup.yml index 041053d..b7690e8 100644 --- a/eng/pipelines/libraries/helix-queues-setup.yml +++ b/eng/pipelines/libraries/helix-queues-setup.yml @@ -72,6 +72,7 @@ jobs: - (Fedora.34.Amd64.Open)ubuntu.1604.amd64.open@mcr.microsoft.com/dotnet-buildtools/prereqs:fedora-34-helix-20210728124700-4f64125 - (Ubuntu.1910.Amd64.Open)ubuntu.1604.amd64.open@mcr.microsoft.com/dotnet-buildtools/prereqs:ubuntu-19.10-helix-amd64-cfcfd50-20191030180623 - (Debian.10.Amd64.Open)ubuntu.1604.amd64.open@mcr.microsoft.com/dotnet-buildtools/prereqs:debian-10-helix-amd64-bfcd90a-20200121150006 + - (Mariner.1.0.Amd64.Open)ubuntu.1604.amd64.open@mcr.microsoft.com/dotnet-buildtools/prereqs:cbl-mariner-1.0-helix-20210528192219-92bf620 - ${{ if eq(parameters.jobParameters.isFullMatrix, false) }}: - (Centos.8.Amd64.Open)Ubuntu.1604.Amd64.Open@mcr.microsoft.com/dotnet-buildtools/prereqs:centos-8-helix-20201229003624-c1bf759 - RedHat.7.Amd64.Open diff --git a/src/libraries/Common/tests/TestUtilities/System/PlatformDetection.Unix.cs b/src/libraries/Common/tests/TestUtilities/System/PlatformDetection.Unix.cs index cff5e22..9949270 100644 --- a/src/libraries/Common/tests/TestUtilities/System/PlatformDetection.Unix.cs +++ b/src/libraries/Common/tests/TestUtilities/System/PlatformDetection.Unix.cs @@ -28,6 +28,7 @@ namespace System public static bool IsUbuntu1710OrHigher => IsDistroAndVersionOrHigher("ubuntu", 17, 10); public static bool IsUbuntu1804 => IsDistroAndVersion("ubuntu", 18, 04); public static bool IsUbuntu1810OrHigher => IsDistroAndVersionOrHigher("ubuntu", 18, 10); + public static bool IsMariner => IsDistroAndVersion("mariner"); public static bool IsSLES => IsDistroAndVersion("sles"); public static bool IsTizen => IsDistroAndVersion("tizen"); public static bool IsFedora => IsDistroAndVersion("fedora"); diff --git a/src/libraries/System.Net.Requests/tests/HttpWebRequestTest.cs b/src/libraries/System.Net.Requests/tests/HttpWebRequestTest.cs index b669972..d5062de 100644 --- a/src/libraries/System.Net.Requests/tests/HttpWebRequestTest.cs +++ b/src/libraries/System.Net.Requests/tests/HttpWebRequestTest.cs @@ -24,12 +24,14 @@ namespace System.Net.Tests { using Configuration = System.Net.Test.Common.Configuration; + [ActiveIssue("https://github.com/dotnet/runtime/issues/57506", typeof(PlatformDetection), nameof(PlatformDetection.IsMonoRuntime), nameof(PlatformDetection.IsMariner))] public sealed class HttpWebRequestTest_Async : HttpWebRequestTest { public HttpWebRequestTest_Async(ITestOutputHelper output) : base(output) { } protected override Task GetResponseAsync(HttpWebRequest request) => request.GetResponseAsync(); } + [ActiveIssue("https://github.com/dotnet/runtime/issues/57506", typeof(PlatformDetection), nameof(PlatformDetection.IsMonoRuntime), nameof(PlatformDetection.IsMariner))] public sealed class HttpWebRequestTest_Sync : HttpWebRequestTest { public HttpWebRequestTest_Sync(ITestOutputHelper output) : base(output) { } diff --git a/src/libraries/System.Net.Security/tests/FunctionalTests/AssemblyInfo.cs b/src/libraries/System.Net.Security/tests/FunctionalTests/AssemblyInfo.cs index 667ca1c..68b152e 100644 --- a/src/libraries/System.Net.Security/tests/FunctionalTests/AssemblyInfo.cs +++ b/src/libraries/System.Net.Security/tests/FunctionalTests/AssemblyInfo.cs @@ -1,7 +1,9 @@ // Licensed to the .NET Foundation under one or more agreements. // The .NET Foundation licenses this file to you under the MIT license. +using System; using Xunit; [assembly: ActiveIssue("https://github.com/dotnet/runtime/issues/34690", TestPlatforms.Windows, TargetFrameworkMonikers.Netcoreapp, TestRuntimes.Mono)] +[assembly: ActiveIssue("https://github.com/dotnet/runtime/issues/57506", typeof(PlatformDetection), nameof(PlatformDetection.IsMonoRuntime), nameof(PlatformDetection.IsMariner))] [assembly: SkipOnPlatform(TestPlatforms.Browser, "System.Net.Security is not supported on Browser")] \ No newline at end of file diff --git a/src/libraries/System.Security.Cryptography.Algorithms/tests/ChaCha20Poly1305Tests.cs b/src/libraries/System.Security.Cryptography.Algorithms/tests/ChaCha20Poly1305Tests.cs index 1d7ee47..a694991 100644 --- a/src/libraries/System.Security.Cryptography.Algorithms/tests/ChaCha20Poly1305Tests.cs +++ b/src/libraries/System.Security.Cryptography.Algorithms/tests/ChaCha20Poly1305Tests.cs @@ -453,6 +453,11 @@ namespace System.Security.Cryptography.Algorithms.Tests // Android with API Level 28 is the minimum API Level support for ChaChaPoly1305. expectedIsSupported = OperatingSystem.IsAndroidVersionAtLeast(28); } + else if (PlatformDetection.IsMariner) + { + // OpenSSL is present, and a high enough version, + // but the distro build options turned off ChaCha/Poly. + } else if (PlatformDetection.OpenSslPresentOnSystem && (PlatformDetection.IsOSX || PlatformDetection.IsOpenSslSupported)) { diff --git a/src/libraries/System.Security.Cryptography.Pkcs/tests/AssemblyInfo.cs b/src/libraries/System.Security.Cryptography.Pkcs/tests/AssemblyInfo.cs new file mode 100644 index 0000000..6c1e2b4 --- /dev/null +++ b/src/libraries/System.Security.Cryptography.Pkcs/tests/AssemblyInfo.cs @@ -0,0 +1,7 @@ +// Licensed to the .NET Foundation under one or more agreements. +// The .NET Foundation licenses this file to you under the MIT license. + +using System; +using Xunit; + +[assembly: ActiveIssue("https://github.com/dotnet/runtime/issues/57506", typeof(PlatformDetection), nameof(PlatformDetection.IsMonoRuntime), nameof(PlatformDetection.IsMariner))] \ No newline at end of file diff --git a/src/libraries/System.Security.Cryptography.Pkcs/tests/System.Security.Cryptography.Pkcs.Tests.csproj b/src/libraries/System.Security.Cryptography.Pkcs/tests/System.Security.Cryptography.Pkcs.Tests.csproj index c6a84f3..b829196 100644 --- a/src/libraries/System.Security.Cryptography.Pkcs/tests/System.Security.Cryptography.Pkcs.Tests.csproj +++ b/src/libraries/System.Security.Cryptography.Pkcs/tests/System.Security.Cryptography.Pkcs.Tests.csproj @@ -8,6 +8,7 @@ Link="CommonTest\System\Security\Cryptography\ByteUtils.cs" /> + diff --git a/src/libraries/System.Security.Cryptography.X509Certificates/tests/CertificateCreation/CertificateRequestChainTests.cs b/src/libraries/System.Security.Cryptography.X509Certificates/tests/CertificateCreation/CertificateRequestChainTests.cs index 10c33ca..8767fd2 100644 --- a/src/libraries/System.Security.Cryptography.X509Certificates/tests/CertificateCreation/CertificateRequestChainTests.cs +++ b/src/libraries/System.Security.Cryptography.X509Certificates/tests/CertificateCreation/CertificateRequestChainTests.cs @@ -7,6 +7,7 @@ using Xunit; namespace System.Security.Cryptography.X509Certificates.Tests.CertificateCreation { + [ActiveIssue("https://github.com/dotnet/runtime/issues/57506", typeof(PlatformDetection), nameof(PlatformDetection.IsMonoRuntime), nameof(PlatformDetection.IsMariner))] public static class CertificateRequestChainTests { public static bool PlatformSupportsPss { get; } = DetectPssSupport(); diff --git a/src/libraries/System.Security.Cryptography.X509Certificates/tests/ChainTests.cs b/src/libraries/System.Security.Cryptography.X509Certificates/tests/ChainTests.cs index bf0b9e2..614ae07 100644 --- a/src/libraries/System.Security.Cryptography.X509Certificates/tests/ChainTests.cs +++ b/src/libraries/System.Security.Cryptography.X509Certificates/tests/ChainTests.cs @@ -11,6 +11,7 @@ using Xunit; namespace System.Security.Cryptography.X509Certificates.Tests { + [ActiveIssue("https://github.com/dotnet/runtime/issues/57506", typeof(PlatformDetection), nameof(PlatformDetection.IsMonoRuntime), nameof(PlatformDetection.IsMariner))] public static class ChainTests { private static bool TrustsMicrosoftDotComRoot diff --git a/src/libraries/System.Security.Cryptography.X509Certificates/tests/CollectionTests.cs b/src/libraries/System.Security.Cryptography.X509Certificates/tests/CollectionTests.cs index cdbc914..e31f2c3 100644 --- a/src/libraries/System.Security.Cryptography.X509Certificates/tests/CollectionTests.cs +++ b/src/libraries/System.Security.Cryptography.X509Certificates/tests/CollectionTests.cs @@ -884,6 +884,7 @@ namespace System.Security.Cryptography.X509Certificates.Tests } [Fact] + [ActiveIssue("https://github.com/dotnet/runtime/issues/57506", typeof(PlatformDetection), nameof(PlatformDetection.IsMonoRuntime), nameof(PlatformDetection.IsMariner))] public static void X509ChainElementCollection_CopyTo_NonZeroLowerBound_ThrowsIndexOutOfRangeException() { using (var microsoftDotCom = new X509Certificate2(TestData.MicrosoftDotComSslCertBytes)) @@ -1293,6 +1294,7 @@ namespace System.Security.Cryptography.X509Certificates.Tests } [Fact] + [ActiveIssue("https://github.com/dotnet/runtime/issues/57506", typeof(PlatformDetection), nameof(PlatformDetection.IsMonoRuntime), nameof(PlatformDetection.IsMariner))] public static void X509ChainElementCollection_IndexerVsEnumerator() { using (var microsoftDotCom = new X509Certificate2(TestData.MicrosoftDotComSslCertBytes)) diff --git a/src/libraries/System.Security.Cryptography.X509Certificates/tests/DynamicChainTests.cs b/src/libraries/System.Security.Cryptography.X509Certificates/tests/DynamicChainTests.cs index 2c6df3e..32d0ac6 100644 --- a/src/libraries/System.Security.Cryptography.X509Certificates/tests/DynamicChainTests.cs +++ b/src/libraries/System.Security.Cryptography.X509Certificates/tests/DynamicChainTests.cs @@ -10,6 +10,7 @@ using Xunit; namespace System.Security.Cryptography.X509Certificates.Tests { + [ActiveIssue("https://github.com/dotnet/runtime/issues/57506", typeof(PlatformDetection), nameof(PlatformDetection.IsMonoRuntime), nameof(PlatformDetection.IsMariner))] public static class DynamicChainTests { private static X509Extension BasicConstraintsCA => new X509BasicConstraintsExtension( diff --git a/src/libraries/System.Security.Cryptography.X509Certificates/tests/FindTests.cs b/src/libraries/System.Security.Cryptography.X509Certificates/tests/FindTests.cs index a734da8..4abcce8 100644 --- a/src/libraries/System.Security.Cryptography.X509Certificates/tests/FindTests.cs +++ b/src/libraries/System.Security.Cryptography.X509Certificates/tests/FindTests.cs @@ -231,6 +231,7 @@ namespace System.Security.Cryptography.X509Certificates.Tests } [Fact] + [ActiveIssue("https://github.com/dotnet/runtime/issues/57506", typeof(PlatformDetection), nameof(PlatformDetection.IsMonoRuntime), nameof(PlatformDetection.IsMariner))] [SkipOnPlatform(PlatformSupport.MobileAppleCrypto, "Root certificate store is not accessible")] public static void FindByValidThumbprint_RootCert() { diff --git a/src/libraries/System.Security.Cryptography.X509Certificates/tests/RevocationTests/AiaTests.cs b/src/libraries/System.Security.Cryptography.X509Certificates/tests/RevocationTests/AiaTests.cs index 88cf0c2..89882f4 100644 --- a/src/libraries/System.Security.Cryptography.X509Certificates/tests/RevocationTests/AiaTests.cs +++ b/src/libraries/System.Security.Cryptography.X509Certificates/tests/RevocationTests/AiaTests.cs @@ -8,6 +8,7 @@ using Xunit; namespace System.Security.Cryptography.X509Certificates.Tests.RevocationTests { + [ActiveIssue("https://github.com/dotnet/runtime/issues/57506", typeof(PlatformDetection), nameof(PlatformDetection.IsMonoRuntime), nameof(PlatformDetection.IsMariner))] [SkipOnPlatform(TestPlatforms.Android, "Android does not support AIA fetching")] public static class AiaTests { diff --git a/src/libraries/System.Security.Cryptography.X509Certificates/tests/X509StoreTests.cs b/src/libraries/System.Security.Cryptography.X509Certificates/tests/X509StoreTests.cs index a484d32..8a89ba2 100644 --- a/src/libraries/System.Security.Cryptography.X509Certificates/tests/X509StoreTests.cs +++ b/src/libraries/System.Security.Cryptography.X509Certificates/tests/X509StoreTests.cs @@ -428,6 +428,7 @@ namespace System.Security.Cryptography.X509Certificates.Tests } [Fact] + [ActiveIssue("https://github.com/dotnet/runtime/issues/57506", typeof(PlatformDetection), nameof(PlatformDetection.IsMonoRuntime), nameof(PlatformDetection.IsMariner))] [SkipOnPlatform(PlatformSupport.MobileAppleCrypto, "Root certificate store is not accessible")] public static void MachineRootStore_NonEmpty() {