作为juju
框架的新手,我正在为简单的machine
部署而进行,目的是在其上执行简单的action
。
因此,我创建了一个charm
捆绑包,构建并使用juju
成功部署了它。该捆绑包包含一个称为"触摸"的action
这将字符串(即文件名(作为输入,并在计算机上创建带有该名称的文件。
机器变为" Active"之后当我使用以下方式列出部署的机器中的操作时:
juju actions charmLayer
我将action
与其描述一起列出。
现在,执行操作时"触摸"时使用:
juju run-action charmLayer/0 touch filename="/home/ubuntu/manual.txt"
我收到以下消息:
用ID排队的动作:D6B39965-9A2C-41C6-8DB7-B4060E587033
然后,当我检查动作状态时:
juju show-action-status d6b39965-9a2c-41c6-8db7-b4060e587033
我得到以下内容:
动作:
动作:触摸
完成:" 2019-05-03 11:56:51'
ID:D6B39965-9A2C-41C6-8DB7-B4060E587033
状态:失败
单位:
Charmlayer/0
然后,当我检查操作输出时:
juju show-action-output d6b39965-9a2c-41c6-8db7-b4060e587033
我得到以下内容:
消息:退出状态1
状态:失败
计时:
完成:2019-05-03 11:56:51 0000 UTC
重任:2019-05-03 11:56:48 0000 UTC
开始:2019-05-03 11:56:51 0000 UTC
使用:
检查日志时juju debug-log
我看到以下输出:
单位-Charmlayer-0:13:23:14 Debug Unit.Charmlayer/0.Touch Trackback(最近的电话最后一次(:
unit-charmlayer-0:13:23:14 debug unit.Charmlayer/0.Touch文件&quot&quot&quot&quot&quot/var/lib/juju/agents/unit-charmlayer-0/carm/carm/carm/cans/touch&quot&quot&quot&quot'在
中单位-Charmlayer-0:13:23:14 Debug Unit.Charmlayer/0.Touch carms.Reactive Import Main,set_flag
单位 - charmlayer-0:13:23:14 debug unit.Charmlayer/0.Touch Importerror:没有名为'Charms.Reactive'的模块'
我的问题为什么我要获得charms.reactive
的ImportError
?
您可以发布代码吗?如果我们可以看到您如何构成自己的魅力,我们也许可以提供帮助。(这应该是评论,而不是答案。我没有代表(。
在答案中,您是否导入魅力。如果您正在编写反应性魅力,则如果您做了charm init
,它应该已经包含在您身上。否则,您可能需要在Python脚本的顶部添加import charms.reactive
。