使用GitHub®操作,您可以在工作流中构建和测试MATLAB®项目。例如,您可以自动识别项目中的任何代码问题,运行测试并生成测试和覆盖工件,并将文件打包到工具箱中。MATLAB的GitHub操作允许您在上运行MATLAB代码和Simulink®模型自托管或托管GitHub跑步者:
- 要使用自托管跑步者,您必须使用MATLAB设置一台计算机作为您的自托管跑步器,并使用GitHub Actions注册跑步者。跑步者使用系统路径上最顶级的MATLAB版本来执行您的工作流。
- 要使用GitHub托管的跑步者,必须包括设置MATLAB在您的工作流中设置您首选的MATLAB版本(R2021a或更高版本)。
要在工作流中运行MATLAB,请在.github/工作流
存储库的目录:
使用设置MATLAB在GitHub托管的跑步者上设置MATLAB和其他MathWorks®产品的操作。该操作将在Linux®、Windows®或macOS运行程序上设置指定的MATLAB版本(R2021a或更高版本)。如果未指定版本,则该操作将设置MATLAB的最新版本。
定义工作流时,请将此操作指定为matlab-作用/setup-matlab@v2
。有关详细信息,请参阅设置MATLAB的操作.
使用运行MATLAB Build调用MATLAB构建工具并运行构建任务的操作,例如识别代码问题、运行测试和打包工具箱。要使用此操作,您需要MATLAB R2022b或更高版本。
定义工作流时,请将此操作指定为matlab操作/运行build@v2
。有关详细信息,请参阅运行MATLAB构建的操作.
使用运行MATLAB测试自动运行使用MATLAB单元测试框架或Simulink Test™编写的测试的操作。您可以将此操作与可选输入一起使用,以生成各种测试和覆盖工件。
定义工作流时,请将此操作指定为matlab-作用/运行测试@v2
。有关详细信息,请参阅运行MATLAB测试的操作.
使用运行MATLAB命令运行MATLAB脚本、函数和语句的操作。您可以使用此操作灵活地自定义测试运行或在MATLAB中向工作流添加步骤。
定义工作流时,请将此操作指定为matlab-作用/运行命令@v2
。有关详细信息,请参阅运行MATLAB命令的操作.
在自托管的运行程序上,运行名为构建文件。米
存储库的根目录以及它们所依赖的所有任务。要运行任务,请指定运行MATLAB Build工作流中的操作。(运行MATLAB BuildMATLAB R2022b及更高版本支持该操作。)
名称:在生成文件中运行默认任务
在:[推送]
工作:我的工作:名称:运行MATLAB Build
在上运行:自托管
步骤:-名称:签出存储库
使用:行动/签出@v4-名称:运行生成
使用:matlab-作用/运行build@v2
在GitHub托管的跑步者上使用最新版本的MATLAB,在您的MATLAB项目并以JUnit-style XML格式生成测试结果,以Cobertura XML格式生成代码覆盖率结果。要在跑步器上设置最新版本的MATLAB,请指定设置MATLAB工作流中的操作。要运行测试并生成工件,请指定运行MATLAB测试行动。
名称:生成测试和覆盖工件
在:[推送]
工作:我的工作:名称:运行MATLAB测试
在上运行:ubuntu最新
步骤:-名称:签出存储库
使用:行动/签出@v4-名称:设置MATLAB
使用:matlab-作用/设置matlab@v2-名称:运行测试
使用:matlab-作用/运行测试@v2
具有:测试结果-junit:测试结果/结果.xml
代码平均值:code-coverage/coverage.xml
在名为的文件中运行命令我的手稿。米
在GitHub托管的运行程序上使用MATLAB R2023b在存储库的根目录下运行。要在运行程序上设置指定的MATLAB版本,请指定设置MATLAB操作及其释放
在工作流中输入。要运行脚本,请指定运行MATLAB命令行动。
名称:运行MATLAB脚本
在:[推动]
工作:我的工作:名称:运行MATLAB脚本
在上运行:ubuntu最新
步骤:-名称:签出存储库
使用:行动/签出@v4-名称:设置MATLAB
使用:matlab-作用/setup-matlab@v2
具有:释放:2023亿南非兰特-名称:运行脚本
使用:matlab-作用/运行命令@v2
具有:命令:我的脚本
在Self-Hosted Runner上指定MATLAB版本
当您使用运行MATLAB Build,运行MATLAB测试,或运行MATLAB命令动作,跑步者使用系统路径上最顶级的MATLAB版本。如果跑步者在路径上找不到任何MATLAB版本,则操作失败。
您可以将您首选的MATLAB版本添加到路径
自托管运行器的系统环境变量。例如,在路径前加上MATLAB R2020,并使用它来运行脚本。该步骤取决于您的操作系统和MATLAB根文件夹。
名称:在Self-Hosted Runner上指定MATLAB版本
在:[推送]
工作:我的工作:名称:运行MATLAB脚本
在上运行:自托管
步骤:-名称:签出存储库
使用:行动/签出@v4-名称:在Windows上将MATLAB前置到PATH(PowerShell)
如果:runner.os==“Windows”
运行:echo“C:\Program Files\MATLAB\R2020 b\bin”|输出文件-文件路径$env:GITHUB_PATH-编码utf8-附加-名称:在Linux上将MATLAB前置到PATH
如果:runner.os==“Linux”
运行:echo“/usr/local/MATLAB/R2020 b/bin”>>$GITHUB_PATH-名称:在macOS上准备MATLAB到PATH
如果:runner.os==“macOS”
运行:echo“/Applications/MATLAB_R2020b.app/bin”>>$GITHUB_PATH-名称:运行脚本
使用:matlab-作用/运行命令@v2
具有:命令:我的手稿
在GitHub托管的跑步者上,您需要MATLAB批量许可令牌如果您的项目是私有的,或者您的工作流包含转换产品,例如MATLAB Coder™和MATLAB Compiler™。批量许可令牌是使MATLAB能够在非交互式环境中启动的字符串。您可以通过提交MATLAB批量许可试点形式。
要使用MATLAB批量许可令牌:
- 将令牌设置为机密。有关机密的更多信息,请参阅在GitHub操作中使用秘密.
- 将机密映射到名为
MLM_LICENSE_TOKEN(MLM_许可证_确定)
在您的工作流中。
例如,在GitHub托管的运行程序上使用最新版本的MATLAB,在您的私人项目中运行测试。要在跑步器上设置最新版本的MATLAB,请指定设置MATLAB工作流中的操作。要运行测试,请指定运行MATLAB测试行动。在这个例子中,我的代币
保存批授权令牌的机密的名称。
名称:使用MATLAB批量授权令牌
在:[推送]
环境价值:MLM_LICENSE_TOKEN(MLM_许可证_确定):${{secrets.MyToken}}
工作:我的工作:名称:在私人项目中运行MATLAB测试
在上运行:ubuntu最新
步骤:-名称:签出存储库
使用:行动/签出@v4-名称:设置MATLAB
使用:matlab-作用/setup-matlab@v2-名称:运行测试
使用:matlab-作用/运行测试@v2
- 要在MATLAB中使用GitHub操作,请为存储库启用GitHubActions。有关GitHub操作权限的更多信息,请参阅管理存储库的GitHub操作设置.
- 默认情况下,当您使用运行MATLAB Build,运行MATLAB测试,或运行MATLAB命令操作时,存储库的根目录用作MATLAB启动文件夹。要使用不同的文件夹运行MATLAB代码,请指定
-标准偏差
启动选项或包含光盘
命令时使用运行MATLAB命令行动。
- 这个运行MATLAB Build操作使用
-批处理
选项调用内置工具
命令。此外,在MATLAB R2019a及更高版本中运行MATLAB测试和运行MATLAB命令操作使用-批处理
非交互启动MATLAB的选项。在使用-批处理
选项。要运行需要相同首选项的代码,请使用单个操作。
- 当您使用设置MATLAB,运行MATLAB Build,运行MATLAB测试、和运行MATLAB命令操作时,您执行根据单独条款获得许可的第三方代码。
如果您有任何问题或建议,请联系MathWorkscontinuous-integration@mathworks.com.