如何计算 Puppet Erb 文件中的值

如何计算 Puppet Erb 文件中的值

我的应用程序 my_app.pp 值具有以下值:

akka_application_cluster_seed_nodes => '"akka.tcp://ActorSystem@host1:2551","akka.tcp://ActorSystem@host2:2551","akka.tcp://ActorSystem@host3:2551"'

现在在我的 erb 文件中,min-nr-of-members值应该通过将数组的大小akka_application_cluster_seed_nodes除以 2 加 1 来计算

 $min-nr-of-members = $akka_application_cluster_seed_nodes.size/2 +1

例如:

  auto-down-unreachable-after = <%= get_param('akka_cluster_auto_down_unreachable_after')%>

and something like this:
      <% $cluster= get_param('akka_cluster_auto_down_unreachable_after') %>
      <% $minNumOfNodes = ($cluster.size / 2)+1 %>

min-nr-of-members = <% $minNumOfNodes %>

答案1

这应该可以解决问题:

<% minNumOfNodes = (@akka_application_cluster_seed_nodes.split(',').length / 2)+1 %>
min-nr-of-members = <%=minNumOfNodes%>

<% %> 内部只是纯粹的 Ruby,因此我们采用原始字符串,用逗号分隔,进行计数,然后对其进行必要的计算。

相关内容