FMI 工具箱 Matlab Azure Devops CI 网络服务帐户的管道错误
FMI Toolbox Matlab Azure Devops CI Pipeline Bugs with network service account
我正在为 Azure DevOps 上的 Matlab/Simulink 项目创建一个 CI 管道。构建管道稳定并重现与本地计算机执行相同的输出。然而,测试管道存在问题。欢迎任何解决方案!
操作:
我的项目使用 Modelon FMI 工具箱来 运行 工厂模型。我的本地计算机 运行 所有 matlab 单元测试,其中 运行 一个包含我的 Modelon FMU 的 Simulink 文件,没有任何问题并生成 jUnit 测试报告 xml。我使用 azure-pipeline.yml 文件将相同的文件调用到 运行。
预期:
我希望得到与我的本地 运行 相同的结果,并且 pass/fail 在作业 运行 CLI 中显示相同的结果。
结果:
从 Azure Pipeline 执行时,那些 FMU 工厂导致我的所有测试失败。同样的错误 29 次。
https://www.modelon.com/products-services/modelon-deployment-suite/fmi-toolbox/
Error occurred in TestSim/testSim(File=****************_slx) and it did not run to completion.
---------
Error ID:
---------
'Simulink:modelReference:NormalModeSimulationError'
--------------
Error Details:
--------------
Error using testRunner (line 18)
An error occurred during simulation of Model block '*******************/PLANT_*****'.
Error in TestSim/testSim (line 31)
simOutRes = testRunner(File,duration);
Caused by:
Error using testRunner (line 18)
An error occurred during simulation of Model block 'PLANT_*****/*****/************'.
Error using testRunner (line 18)
Error reported by S-function 'sfun_fmu_cs_********' in 'PLANT_******************/******************************':
Error: FMI Toolbox running in DEMO mode: Only examples included in the FMI Toolbox distribution can be run.
Please contact sales@modelon.com in order to obtain an evaluation license or to purchase FMI Toolbox for MATLAB.
================================================================================
信息:
这是我试过的。
- 我确认我有适当的许可证:
Version of the Licensing toolkit client library
v11.10.0.0 build 95001 x64_n6
---------------------
Performing test for feature: FMI_TOOLBOX
Feature: 'FMI_TOOLBOX'
Feature version: '2021.0625'
Feature is checked out
License type:
Server license IP: ******.******.***.***
2/2 licenses in use
Expiration date:
25-jun-2021
Number of days until expiration:
246
Start date:
10-jun-2020
License number:
****-****-****-****-****-****-****-****
Daemon name:
modelon
Notice:
Customer ************* Product FMI ToolBox for Matlab
Issuer:
Modelon AB
我将 Azure Pipeline 代理服务的用户帐户更改为 运行 我自己的帐户并且一切正常。它像在本地一样构建和测试我所有的 FMU 块,然后在 Azure Pipelines 上发布报告。我发现该错误仅发生在 Azure 默认网络服务帐户上。出于安全原因和其他原因,我也希望它能在网络服务上工作。
我在网上做了一些快速讲座。
解决方案:
我发现网络服务帐户和我的用户帐户使用不同的 %APPDATA% 文件夹。
C:\Users\*******\AppData\Roaming\Modelon\Licenses\Server
和
C:\Windows\ServiceProfiles\NetworkService\AppData\Roaming\Modelon\Licenses\Server
在网络服务文件夹中我什么都没有,但在我的文件夹中有一个 fmi_licence.lic 文件,内容如下:
SERVER **************.com ANY *****
USE_SERVER
将文件添加到我的网络服务 %APPDATA% 并将这些行添加到我的 Azure Pipeline YMAL 文件后,许可证被检查为工作网络许可证并且我的项目在 [=37 时停止在演示模式下工作=] 在网络服务帐户上。
#Making FMI Toolbox licence check
- script: |
echo fmitoolbox_license; > fmitoolboxLicenseCheck.m
displayName: 'Making FMI Toolbox licence check'
#FMI Toolbox licence check Action
- task: RunMATLABCommand@0
inputs:
command: fmitoolboxLicenseCheck
displayName: 'FMI Toolbox Licence Check Action'
更多阅读:
Find temp folder for user Network Service?
https://superuser.com/questions/197576/network-service-account-password
我正在为 Azure DevOps 上的 Matlab/Simulink 项目创建一个 CI 管道。构建管道稳定并重现与本地计算机执行相同的输出。然而,测试管道存在问题。欢迎任何解决方案!
操作:
我的项目使用 Modelon FMI 工具箱来 运行 工厂模型。我的本地计算机 运行 所有 matlab 单元测试,其中 运行 一个包含我的 Modelon FMU 的 Simulink 文件,没有任何问题并生成 jUnit 测试报告 xml。我使用 azure-pipeline.yml 文件将相同的文件调用到 运行。
预期:
我希望得到与我的本地 运行 相同的结果,并且 pass/fail 在作业 运行 CLI 中显示相同的结果。
结果:
从 Azure Pipeline 执行时,那些 FMU 工厂导致我的所有测试失败。同样的错误 29 次。
https://www.modelon.com/products-services/modelon-deployment-suite/fmi-toolbox/
Error occurred in TestSim/testSim(File=****************_slx) and it did not run to completion.
---------
Error ID:
---------
'Simulink:modelReference:NormalModeSimulationError'
--------------
Error Details:
--------------
Error using testRunner (line 18)
An error occurred during simulation of Model block '*******************/PLANT_*****'.
Error in TestSim/testSim (line 31)
simOutRes = testRunner(File,duration);
Caused by:
Error using testRunner (line 18)
An error occurred during simulation of Model block 'PLANT_*****/*****/************'.
Error using testRunner (line 18)
Error reported by S-function 'sfun_fmu_cs_********' in 'PLANT_******************/******************************':
Error: FMI Toolbox running in DEMO mode: Only examples included in the FMI Toolbox distribution can be run.
Please contact sales@modelon.com in order to obtain an evaluation license or to purchase FMI Toolbox for MATLAB.
================================================================================
信息:
这是我试过的。
- 我确认我有适当的许可证:
Version of the Licensing toolkit client library
v11.10.0.0 build 95001 x64_n6
---------------------
Performing test for feature: FMI_TOOLBOX
Feature: 'FMI_TOOLBOX'
Feature version: '2021.0625'
Feature is checked out
License type:
Server license IP: ******.******.***.***
2/2 licenses in use
Expiration date:
25-jun-2021
Number of days until expiration:
246
Start date:
10-jun-2020
License number:
****-****-****-****-****-****-****-****
Daemon name:
modelon
Notice:
Customer ************* Product FMI ToolBox for Matlab
Issuer:
Modelon AB
我将 Azure Pipeline 代理服务的用户帐户更改为 运行 我自己的帐户并且一切正常。它像在本地一样构建和测试我所有的 FMU 块,然后在 Azure Pipelines 上发布报告。我发现该错误仅发生在 Azure 默认网络服务帐户上。出于安全原因和其他原因,我也希望它能在网络服务上工作。
我在网上做了一些快速讲座。
解决方案:
我发现网络服务帐户和我的用户帐户使用不同的 %APPDATA% 文件夹。
C:\Users\*******\AppData\Roaming\Modelon\Licenses\Server
和
C:\Windows\ServiceProfiles\NetworkService\AppData\Roaming\Modelon\Licenses\Server
在网络服务文件夹中我什么都没有,但在我的文件夹中有一个 fmi_licence.lic 文件,内容如下:
SERVER **************.com ANY *****
USE_SERVER
将文件添加到我的网络服务 %APPDATA% 并将这些行添加到我的 Azure Pipeline YMAL 文件后,许可证被检查为工作网络许可证并且我的项目在 [=37 时停止在演示模式下工作=] 在网络服务帐户上。
#Making FMI Toolbox licence check
- script: |
echo fmitoolbox_license; > fmitoolboxLicenseCheck.m
displayName: 'Making FMI Toolbox licence check'
#FMI Toolbox licence check Action
- task: RunMATLABCommand@0
inputs:
command: fmitoolboxLicenseCheck
displayName: 'FMI Toolbox Licence Check Action'
更多阅读:
Find temp folder for user Network Service?
https://superuser.com/questions/197576/network-service-account-password