#!/opt/thinlinc/libexec/python3
# -*-mode: python; coding: utf-8 -*-
#
# Copyright 2002-2014 Cendio AB.
# For more information, see http://www.cendio.com
if 82 - 82: Iii1i
import os
import sys
import locale
import subprocess
if 87 - 87: Ii % i1i1i1111I . Oo / OooOoo * I1Ii1I1 - I1I
from thinlinc import hiveconf
from thinlinc import prefix
from thinlinc . vsm . subcluster import SubCluster
if 81 - 81: i1 + ooOOO / oOo0O00 * i1iiIII111 * IiIIii11Ii
if 84 - 84: ooo000 - Ooo0Ooo + iI1iII1I1I1i . IIiIIiIi11I1
def iI111iiIi11i ( ) :
 print ( "Run commands on all machines in ThinLinc cluster, using ssh" , file = sys . stderr )
 print ( "Usage:" , sys . argv [ 0 ] , "[OPTION]... COMMAND" , file = sys . stderr )
 print ( "[OPTION] can be any ssh option" , file = sys . stderr )
 print ( file = sys . stderr )
 print ( "Example: Install a package:" , file = sys . stderr )
 print ( "tl-ssh-all -l root rpm -Uvh /root/qgo-1.0.2-1.fc5.i386.rpm" , file = sys . stderr )
 sys . exit ( 1 )
 if 77 - 77: iIiii1i - ooo0O0oO00 . o00o0OO00O
 if 57 - 57: iiIi1 - i1 % i1 % i1i1i1111I . Ii
def iI ( ) :
 locale . setlocale ( locale . LC_ALL , "" )
 if 10 - 10: ooOOO / IIiIIiIi11I1 * ooo0O0oO00 / o00o0OO00O / o00o0OO00O
 oOooo0OOO = hiveconf . open_hive ( os . path . join ( prefix . get_tl_prefix ( ) ,
 "etc" , "thinlinc.hconf" ) )
 if 53 - 53: Ii * Oo * ooo000 . i1iiIII111
 ii1Ii = SubCluster ( oOooo0OOO , None )
 oOooO0 = ii1Ii . get_all_agents ( )
 if oOooO0 is None :
  print ( "Cannot find any agent servers" , file = sys . stderr )
  print ( "Unless you synchronize /opt/thinlinc/etc/conf.d/cluster.hconf," , file = sys . stderr )
  print ( "tl-ssh-all will only work on the master host" , file = sys . stderr )
  sys . exit ( 1 )
  if 13 - 13: ooo0O0oO00
 if len ( sys . argv ) < 2 :
  iI111iiIi11i ( )
  if 2 - 2: i1
 IIiIiiIiI = "ssh"
 OO0000 = [ IIiIiiIiI ]
 if 92 - 92: I1I / I1I + o00o0OO00O . ooo0O0oO00
 for Iio0 in oOooO0 :
  i1i = OO0000 [ : ]
  if 87 - 87: Oo - o00o0OO00O
  if 32 - 32: Ii % i1i1i1111I % o00o0OO00O - iIiii1i % i1iiIII111
  if 34 - 34: i1iiIII111 * i1
  i1i . append ( Iio0 )
  if 34 - 34: oOo0O00 / i1iiIII111 - Iii1i . iI1iII1I1I1i
  if 80 - 80: i1i1i1111I . I1I % ooOOO % IiIIii11Ii / i1i1i1111I
  i1i . extend ( sys . argv [ 1 : ] )
  print ( "running on host:" , Iio0 , ": " , " " . join ( i1i ) , file = sys . stderr )
  IiI11I = subprocess . call ( i1i )
  if IiI11I != 0 :
   print ( " **** ssh for host %s failed ****" % Iio0 , file = sys . stderr )
   if 79 - 79: Iii1i % ooo0O0oO00 * Oo + ooOOO / Oo . ooo0O0oO00
   if 20 - 20: iiIi1 + i1iiIII111 / I1I
if __name__ == "__main__" :
 iI ( )
# dd678faae9ac167bc83abf78e5cb2f3f0688d3a3
