Obtenha nomes de nós que tenham uma função específica

1

Como posso obter uma lista de nós com uma função específica?

Poderia ser algo assim:

for node in 'knife node list'; do
  [[ -n "'knife node show $node | grep $ROLE_NAME'" ]] &&  echo $node
done

Existe uma maneira de fazer isso via faca sem sobrecarga?

    
por ДМИТРИЙ МАЛИКОВ 25.06.2012 / 14:05

2 respostas

6

Existe uma solução:

knife search node "roles:$ROLE_NAME"
    
por 25.06.2012 / 14:33
0

O cabeçalho da "busca por faca" é enviado para stderr, então você pode usar

knife search "role:$ROLE_NAME" -i 2>/dev/null

apenas retorna uma lista de nós. Útil se você quiser envolvê-lo em uma declaração for:

for n in $(knife search "role:$ROLE_NAME" -i 2>/dev/null); do
  // do something here
done
    
por 22.05.2017 / 16:52

Tags