Microsoft.Azure.Batch 16.2.0
已保留前缀
dotnet add package Microsoft.Azure.Batch --version 16.2.0
NuGet\Install-Package Microsoft.Azure.Batch -Version 16.2.0
<PackageReference Include="Microsoft.Azure.Batch" Version="16.2.0" />
paket add Microsoft.Azure.Batch --version 16.2.0
#r "nuget: Microsoft.Azure.Batch, 16.2.0"
// Install Microsoft.Azure.Batch as a Cake Addin #addin nuget:?package=Microsoft.Azure.Batch&version=16.2.0 // Install Microsoft.Azure.Batch as a Cake Tool #tool nuget:?package=Microsoft.Azure.Batch&version=16.2.0
许可说明
Azure Batch C# 客户端现在采用 MIT 许可证。在 2017 年 3 月 10 日之前它采用 Apache 2.0 许可证。
Azure Batch SDK 开发者指南
Microsoft.Azure.Batch.sln
是您获得与 Azure Batch C# 客户端库相关的所有相关信息的单点。此解决方案文件包含与 Azure Batch 客户端相关的所有项目(包括测试和工具)。
更改 Azure Batch 客户端
根据您希望进行的更改类型,所需的工作量会有所不同。如果你遵循这个流程,就不应该有任何遗漏。
- 更新存放在 Azure/azure-rest-api-specs GitHub 仓库(具体见 此处)中的 Azure Batch Swagger 规范。
- 在 Swagger 规范中添加新的实体类型。
- 在 Swagger 规范中添加新的 API 以路径-动词对的形式。
- 在 Swagger 规范中添加/删除现有实体类型的属性。
- 按照以下步骤重新生成
src\GeneratedProtocol
文件夹:[在此处生成src\GeneratedProtocol
文件夹的步骤](#generate-the-srcgeneratedprotocol-folder-using-autorest)。 - 更新位于
Tools\ObjectModelCodeGenerator\Spec
中的对应便利层规范文件。- 添加与 Swagger 中定义的实体匹配的新实体。
- 在 Swagger 规范中按照相同的步骤添加/删除现有实体的属性。
- 确保文档得到适当更新以反映 Swagger 规范中的更改(查看 API 版本的 Swagger 差分通常很有帮助)。
- 使用以下步骤从便利层规范文件重新生成
src\Generated
文件夹:[在此处生成src\Generated
文件夹的步骤](#generate-the-srcgenerated-folder)。 - 将任何自定义代码添加到
src
目录中的partial
类中的Generated
对象。- 你可能想要这样做以添加
[Obsolete]
属性或添加一些辅助工厂方法。
- 你可能想要这样做以添加
- 如果有任何 API 已更改,或添加了新的 API,必须更新以下位置:
src\IProtocolLayer.cs
接口。src\ProtocolLayer.cs
类。- 对应的操作类,例如
PoolOperations.cs
。 - 操作执行的对应实体,例如
CloudPool.cs
。
- 将您的新模型和 API 的测试添加到正确的测试项目中。
Azure.Batch.Unit.Tests
用于单元测试。这些测试没有任何外部依赖(它们完全在内存中运行)并在持续集成作业中用于验证提交。BatchClientIntegrationTests
用于集成测试。这些测试针对实际的 Azure Batch 端点运行,并在 CI 中不运行。有关如何运行这些测试的更多详细信息,请参阅 [运行端到端测试](#running-the-end-to-end-tests)。- 注意:应该在可能的情况下优先添加单元测试而不是集成测试——集成测试应该保留以确保 Batch 服务接受 Swagger 请求。应在一个服务测试中测试服务行为,而不是在客户端。
- 更新
CHANGELOG.md
文件和在src/Microsoft.Azure.Batch.csproj
中的Version
标签。确保如果你进行了重大更改,请更新版本号的主版本。 - 运行测试并确保通过。
- 在 https://github.com/Azure/azure-sdk-for-net 上打开 PR。
使用 AutoRest 生成 src\GeneratedProtocol
文件夹
GeneratedProtocol 文件夹包含由来自 Swagger 规范的 AutoRest 工具生成的代码。AutoRest 工具有自己的命令行界面,你可以直接使用它,或者你可以运行以下命令:
生成 src\Generated
文件夹
此文件夹包含 Azure Batch 的便利层模型。它是从自定义工具生成的。自定义工具读取位于 Tools\ObjectModelCodeGenerator\Spec
的所有规范文件。便利层模型比 Swagger 规范提供的元数据更多,因此此文件是 Swagger 之上的额外映射层,提供更多详细信息。注意:这些规范文件都与模型有关,它们与实际 API 没有关系。
- 这里还需要添加 Swagger 规范中定义的新实体。以现有实体为例。
- 如果属性的属性类型或名称在底层的 Swagger 规范中发生了变化,也应在本地进行更新。
规范文件中有许多具有特定意义的特殊标志。查看支持哪些标志及其级别的最简单方法是通过查看后台代码生成代码
- 对于属性:
Tools\ObjectModelCodeGeneration\CodeGenerationLibrary\PropertyData.cs
- 对于类型:
Tools\ObjectModelCodeGeneration\CodeGenerationLibrary\ObjectModelTypeData.cs
在 Tools\ObjectModelCodeGenerator\Spec
中添加并更新所需文件后,将 ObjectModelCodeGenerator
标记为 Visual Studio 的启动项目,并运行它 - 它将重新生成 src\Generated
文件夹的内容。
运行端到端测试
完整的端到端测试通过需要 20-40 分钟。以下环境变量必须设置才能使端到端测试生效 - 建议设置一个脚本来设置所有这些设置,以便以后可以轻松重用
MABOM_BatchAccountEndpoint
:您的 Batch 账户的端点,例如https://<account>.<region>.batch.azure.com
MABOM_BatchAccountSubscriptionId
:您的 Batch 和存储账户所在的订阅 ID。请注意,您的存储账户和 Batch 账户需要位于同一订阅中。MABOM_BatchAccountResourceGroupName
:您的 Batch 账户所在的资源组。MABOM_BatchAccountName
:您的 Batch 账户的名称。MABOM_BatchAccountKey
:您的 Batch 账户的密钥。MABOM_StorageAccountResourceGroupName
:您的存储账户资源组的名称。MABOM_StorageAccount
:您的存储账户的名称。MABOM_StorageKey
:您的存储账户的密钥。MABOM_BlobEndpoint
:存储账户的 blob 端点,例如https://<account>.blob.core.windows.net
MABOM_BatchManagementEndpoint
:您要针对的租户的管理端点。这通常是https://management.azure.com/
。MABOM_AzureAuthenticationClientId
:具有对您使用的订阅(#2)的参与者访问权限的 AAD 应用注册表的客户端 ID。MABOM_AzureAuthenticationClientSecret
:App 注册表的密钥(#11)。
如果您运行针对测试租户的测试,还必须设置
MABOM_BatchTRPExtraHeaders
为 x-ms-version=2015-12-01;x-ms-client-tenant-id=microsoft.onmicrosoft.comMABOM_BatchTRPCertificateThumbprint
:用于与 Batch 资源提供者进行身份验证的指纹。
产品 | 版本 兼容和额外的计算目标框架版本。 |
---|---|
.NET | net5.0 已计算。 net5.0-windows 已计算。 net6.0 已计算。 net6.0-android 已计算。 net6.0-ios 已计算。 net6.0-maccatalyst 已计算。 net6.0-macos 已计算。 net6.0-tvos 已计算。 net6.0-windows 已计算。 net7.0 已计算。 net7.0-android 已计算。 net7.0-ios 已计算。 net7.0-maccatalyst 已计算。 net7.0-macos 已计算。 net7.0-tvos 已计算。 net7.0-windows 已计算。 net8.0 已计算。 net8.0-android 已计算。 net8.0-browser 已计算。 net8.0-ios 已计算。 net8.0-maccatalyst 已计算。 net8.0-macos 已计算。 net8.0-tvos 已计算。 net8.0-windows 已计算。 |
.NET Core | netcoreapp1.0 已计算。 netcoreapp1.1 已计算。 netcoreapp2.0 已计算。 netcoreapp2.1 已计算。 netcoreapp2.2 已计算。 netcoreapp3.0 已计算。 netcoreapp3.1 已计算。 |
.NET Standard | netstandard1.4 兼容。 netstandard1.5 已计算。 netstandard1.6 已计算。 netstandard2.0 兼容。 netstandard2.1 已计算。 |
.NET Framework | net452 支持。 net46 已计算。 net461 支持。 net462 已计算。 net463 已计算。 net47 已计算。 net471 已计算。 net472 已计算。 net48 已计算。 net481 已计算。 |
MonoAndroid | monoandroid 已计算。 |
MonoMac | monomac 已计算。 |
MonoTouch | monotouch 已计算。 |
Tizen | tizen30 已计算。 tizen40 已计算。 tizen60 已计算。 |
Universal Windows Platform | uap 已计算。 uap10.0 已计算。 |
Xamarin.iOS | xamarinios 已计算。 |
Xamarin.Mac | xamarinmac 已计算。 |
Xamarin.TVOS | xamarintvos 已计算。 |
Xamarin.WatchOS | xamarinwatchos 已计算。 |
-
.NETFramework 4.5.2
- Microsoft.Rest.ClientRuntime (>= 2.3.24 & < 3.0.0)
- Microsoft.Rest.ClientRuntime.Azure (>= 3.3.18 & < 4.0.0)
- Newtonsoft.Json (>= 10.0.3)
- System.Text.Encodings.Web (>= 4.5.1)
-
.NETFramework 4.6.1
- Microsoft.Rest.ClientRuntime (>= 2.3.24 & < 3.0.0)
- Microsoft.Rest.ClientRuntime.Azure (>= 3.3.18 & < 4.0.0)
- Newtonsoft.Json (>= 10.0.3)
- System.Text.Encodings.Web (>= 4.5.1)
-
.NETStandard 1.4
- Microsoft.AspNetCore.WebUtilities (>= 1.1.2)
- Microsoft.Rest.ClientRuntime (>= 2.3.24 & < 3.0.0)
- Microsoft.Rest.ClientRuntime.Azure (>= 3.3.18 & < 4.0.0)
- NETStandard.Library (>= 1.6.1)
- Newtonsoft.Json (>= 10.0.3)
- System.Net.Http (>= 4.3.4)
- System.Text.Encodings.Web (>= 4.5.1)
-
.NETStandard 2.0
- Microsoft.AspNetCore.WebUtilities (>= 2.2.0)
- Microsoft.Rest.ClientRuntime (>= 2.3.24 & < 3.0.0)
- Microsoft.Rest.ClientRuntime.Azure (>= 3.3.18 & < 4.0.0)
- Newtonsoft.Json (>= 10.0.3)
- System.Net.Http (>= 4.3.4)
- System.Text.Encodings.Web (>= 4.5.1)
NuGet 包 (3)
显示依赖于 Microsoft.Azure.Batch 的前 3 个 NuGet 包
包 | 下载 |
---|---|
Microsoft.Azure.Batch.Conventions.Files 此库封装了一组用于Azure Batch任务和作业输出的存储约定,便于客户端通过任务ID、作业ID和输出类型浏览和检索输出。 |
|
Microsoft.Azure.Batch.FileStaging 此库简化了在Microsoft Azure Batch服务中用于任务的资源文件的上传。详细信息请访问我们的主页 - http://azure.microsoft.com/services/batch/。技术概述请参阅http://azure.microsoft.com/documentation/articles/batch-technical-overview/。API参考请参阅http://go.microsoft.com/fwlink/?LinkId=717949。 |
|
ProWorks.Azure.Batch
包描述 |
GitHub仓库 (5)
显示依赖Microsoft.Azure.Batch的GitHub最受欢迎的前5个仓库
仓库 | 星标 |
---|---|
Azure/azure-sdk-for-net
此仓库用于.NET Azure SDK的活跃开发。对于SDK的消费者,我们建议访问我们的公共开发者文档https://learn.microsoft.com/dotnet/azure/或我们的版本化开发者文档https://azure.github.io/azure-sdk-for-net。
|
|
Azure/azure-powershell
Microsoft Azure PowerShell
|
|
Azure-Samples/azure-batch-samples
Azure Batch和HPC代码示例
|
|
microsoft/CromwellOnAzure
Microsoft Genomics在Azure上的Broad Institute的Cromwell工作流引擎实现
|
|
APSIMInitiative/ApsimX
ApsimX是APSIM的下一代
|
版本 | 下载 | 最后更新 |
---|---|---|
16.2.0 | 66,431 | 2/29/2024 |
16.1.0 | 31,037 | 1/27/2024 |
16.0.0 | 175,625 | 6/15/2023 |
15.4.0 | 242,546 | 11/1/2022 |
15.3.0 | 361,733 | 1/14/2022 |
15.1.0 | 258,139 | 8/11/2021 |
15.0.0 | 16,540 | 7/31/2021 |
14.0.0 | 355,405 | 9/29/2020 |
13.0.0 | 295,493 | 3/6/2020 |
12.0.0 | 200,831 | 8/7/2019 |
11.0.0 | 147,013 | 6/6/2019 |
10.1.0 | 88,458 | 2/25/2019 |
10.0.0 | 76,198 | 12/14/2018 |
9.0.1 | 81,742 | 11/2/2018 |
9.0.0 | 45,943 | 8/24/2018 |
8.1.2 | 115,789 | 5/24/2018 |