对于Chef (12.5)自定义资源,如何从另一个操作调用一个操作并保留顺序?
在Chef (12.5)中,可以通过使用notifies
和subscribes
来从一个操作调用另一个操作并保留顺序。
notifies
:在一个操作中,可以使用notifies
通知另一个操作执行。当指定的条件满足时,通知将被发送给另一个操作。示例代码如下:my_custom_resource 'resource_name' do
action :create
notifies :run, 'another_custom_resource[resource_name]', :immediately
end
another_custom_resource 'resource_name' do
action :nothing
# 执行的操作
end
在上述示例中,当my_custom_resource
的create
操作完成后,将立即通知another_custom_resource
的run
操作执行。
subscribes
:在一个操作中,可以使用subscribes
订阅另一个操作的执行。当指定的条件满足时,订阅将触发当前操作执行。示例代码如下:another_custom_resource 'resource_name' do
action :create
# 执行的操作
subscribes :run, 'my_custom_resource[resource_name]', :immediately
end
my_custom_resource 'resource_name' do
action :nothing
end
在上述示例中,当another_custom_resource
的create
操作执行时,将立即订阅my_custom_resource
的run
操作,触发当前操作执行。
通过使用notifies
和subscribes
,可以在Chef (12.5)中实现从一个操作调用另一个操作并保留顺序。这种方式可以确保在特定条件下,操作按照指定的顺序执行。
腾讯云相关产品和产品介绍链接地址:
领取专属 10元无门槛券
手把手带您无忧上云