// Current versions are read from images/constants.yml via ConstantsYamlReader.

namespace Microsoft.Oryx.BuildScriptGenerator.DotNetCore
{
    public static class DotNetCoreRunTimeVersions
    {
        public const string DotNetCoreRuntimeBaseTag = "20240430.1";

        public const string NetCoreApp10 = "1.0.16";

        public const string NetCoreApp11 = "1.1.13";

        public const string NetCoreApp20 = "2.0.9";

        public const string NetCoreApp21 = "2.1.30";

        public const string NetCoreApp21Sha = "b7433c9f03f7363759a044b50d8cca9486cfe402fdf62163696ba6a172e9839a140553e3d3298bb75c89dda2f6f4bec294847411f3fc2796fa4881a2b01a7178";

        public const string AspnetCoreApp21 = "2.1.30";

        public const string AspnetCoreApp21Sha = "60f65e2e37bb9af54f809ef0f4fe814c4c0dd9c969dea1aa81e94c0dc2433c5011cde39118196310ffac4e248b24924a2c154534194e70a8cdae40dfc81fe3d1";

        public const string NetCoreApp22 = "2.2.8";

        public const string NetCoreApp22Sha = "954072376698be69acb7e277df2c243f931e10529def21dcbf9ce277609b30d462126bf8b8b3cab36476bec3d63a927b8e44e59e4d4cade23eef45956fba1ffd";

        public const string NetCoreApp30 = "3.0.3";

        public const string NetCoreApp30Sha = "3d1f0ba2f293f43e087a8940a0f4736561f43b9f28bc5beda79a61f887e258543aea4dc71e88414a7c6e271dcda984a989afb62fc659a72223707a179cdde9c5";

        public const string AspnetCoreApp30 = "3.0.3";

        public const string AspnetCoreApp30Sha = "d88366ac20204c5acb4b80bc40396d608d6c067b25baeef54204e77dde48fb515bd463743745a0982ba8c9182fc751306a4e796f91060b2d013ffbea7d9a2dc8";

        public const string NetCoreApp31 = "3.1.32";

        public const string NetCoreApp31Sha = "a1de9bbc3d2e3a4f5f52b7742c678b182a58a724d36232997511e390027044d60144a7e010a29d6ee016ec91f2911daef28ac5712a827fff8bdde73314b7e002";

        public const string AspnetCoreApp31 = "3.1.32";

        public const string AspnetCoreApp31Sha = "0aa2aceda3d0b9f6bf02456d4e4b917c221c4f18eff30c8b6418e7514681baa9bb9ccc6b8c78949a92664922db4fb2b2a0dac9da11f775aaef618d9c491bb319";

        public const string NetCoreApp50 = "5.0.17";

        public const string NetCoreApp50Sha = "a9c4784930a977abbc42aff1337dda06ec588c1ec4769a59f9fcab4d5df4fc9efe65f8e61e5433db078f67a94ea2dfe870c32c482a50d4c16283ffacacff4261";

        public const string AspnetCoreApp50 = "5.0.17";

        public const string AspnetCoreApp50Sha = "d8e87804e9e86273c6512785bd5a6f0e834ff3f4bbebc11c4fcdf16ab4fdfabd0d981a756955267c1aa9bbeec596de3728ce9b2e6415d2d80daef0d999a5df6d";

        public const string NetCoreApp60 = "6.0.35";

        public const string NetCoreApp60Sha = "d8d10d600fb664336949576f8ec0534dbffd573f754b9e741f20812221fafcac5f509a7e1ab44e9e63fc31a7b5dbcb19e4ec1930ffd29312212dc7454977090e";

        public const string AspnetCoreApp60 = "6.0.35";

        public const string AspnetCoreApp60Sha = "d86da938338a6d97250436d49340e8f114c05b46512ca562aadca6f3e77403d36468d3f34ed5f2d935c070f9e14aedf7299f5a03d2964dbd6576b9a2d3e776e8";

        public const string NetCoreApp70 = "7.0.20";

        public const string NetCoreApp70Sha = "87855297338555a7b577d7e314e5dbf2c2350f8c867a489cd1e535634bad5c123a1871464d37fc9421837ff5d426c2eadecbe0f60bbf3fd32bc2461f47790a40";

        public const string AspnetCoreApp70 = "7.0.20";

        public const string AspnetCoreApp70Sha = "62ed9743972043a72e48d5aa2f7fdf3483cf684a32b051315004d1c778e9712bf66e5e7a97a5a53993fa8e92daf5bacaf2cdb3eae44bb9a9e25532b9a80f4f70";

        public static string NetCoreApp80 => ConstantsYamlReader.Get("NET_CORE_APP_80");

        public static string NetCoreApp80Sha => ConstantsYamlReader.Get("NET_CORE_APP_80_SHA");

        public static string AspnetCoreApp80 => ConstantsYamlReader.Get("ASPNET_CORE_APP_80");

        public static string AspnetCoreApp80Sha => ConstantsYamlReader.Get("ASPNET_CORE_APP_80_SHA");

        public static string NetCoreApp90 => ConstantsYamlReader.Get("NET_CORE_APP_90");

        public static string NetCoreApp90Sha => ConstantsYamlReader.Get("NET_CORE_APP_90_SHA");

        public static string AspnetCoreApp90 => ConstantsYamlReader.Get("ASPNET_CORE_APP_90");

        public static string AspnetCoreApp90Sha => ConstantsYamlReader.Get("ASPNET_CORE_APP_90_SHA");

        public static string NetCoreApp100 => ConstantsYamlReader.Get("NET_CORE_APP_100");

        public static string NetCoreApp100Sha => ConstantsYamlReader.TryGet("NET_CORE_APP_100_SHA");

        public static string AspnetCoreApp100 => ConstantsYamlReader.Get("ASPNET_CORE_APP_100");

        public static string AspnetCoreApp100Sha => ConstantsYamlReader.TryGet("ASPNET_CORE_APP_100_SHA");
    }
}