(List (FunctionDef gen_knife_config [] (Com {[LIT_CHARS cat]} < (HereDocRedirectNode here_end='EOF' do_expansion=True body_word={[DQ [LIT_CHARS "current_dir = File.dirname(__FILE__)\n"][LIT_CHARS "log_level :info\n"][LIT_CHARS "log_location STDOUT\n"][LIT_CHARS "node_name "][RIGHT_D_QUOTE "\""][LIT_CHARS admin][RIGHT_D_QUOTE "\""][LIT_CHARS "\n"][LIT_CHARS "client_key "][RIGHT_D_QUOTE "\""][LIT_CHARS "#{current_dir}/admin.pem"][RIGHT_D_QUOTE "\""][LIT_CHARS "\n"][LIT_CHARS "validation_client_name "][RIGHT_D_QUOTE "\""][LIT_CHARS bcpc-validator][RIGHT_D_QUOTE "\""][LIT_CHARS "\n"][LIT_CHARS "validation_key "][RIGHT_D_QUOTE "\""][LIT_CHARS "#{current_dir}/bcpc-validator.pem"][RIGHT_D_QUOTE "\""][LIT_CHARS "\n"][LIT_CHARS "chef_server_url "][RIGHT_D_QUOTE "\""][LIT_CHARS "https://bcpc-bootstrap/organizations/bcpc"][RIGHT_D_QUOTE "\""][LIT_CHARS "\n"][LIT_CHARS "cache_type 'BasicFile'\n"][LIT_CHARS "cache_options( :path => "][RIGHT_D_QUOTE "\""][LIT_CHARS "#{ENV['HOME']}/.chef/checksums"][RIGHT_D_QUOTE "\""][LIT_CHARS " )\n"][LIT_CHARS "cookbook_path ["][RIGHT_D_QUOTE "\""][LIT_CHARS "#{current_dir}/../cookbooks"][RIGHT_D_QUOTE "\""][LIT_CHARS "]\n"]]} 0), > ) ) (FunctionDef copy_client_keys [] (List (If (DBracket {B1 UNARY_STRING_n {[DQ [VarSub SUDO_USER]]}}) (= scope= flags=0 words=[] bindings=[('OWNER', {[VarSub SUDO_USER]})]) (ElseTrue) (= scope= flags=0 words=[] bindings=[('OWNER', {[VarSub USER]})]) ) (Com {[LIT_CHARS install]} {[LIT_CHARS -d]} {[LIT_CHARS -m0770]} {[LIT_CHARS -o]} {[VarSub OWNER]} {[LIT_CHARS .chef]}) (Com {[LIT_CHARS sudo]} {[LIT_CHARS install]} {[LIT_CHARS -m0600]} {[LIT_CHARS -o]} {[VarSub OWNER]} {[LIT_CHARS /etc/opscode/admin.pem]} {[LIT_CHARS .chef/admin.pem]}) (Com {[LIT_CHARS sudo]} {[LIT_CHARS install]} {[LIT_CHARS -m0600]} {[LIT_CHARS -o]} {[VarSub OWNER]} {[LIT_CHARS /etc/opscode/bcpc-validator.pem]} {[LIT_CHARS .chef/bcpc-validator.pem]}) ) ) (Com {[LIT_CHARS set]} {[LIT_CHARS -x]}) (= scope= flags=0 words=[] bindings=[('PROXY_INFO_FILE', {[DQ [LIT_CHARS /home/vagrant/proxy_info.sh]]})]) (If (DBracket {B1 UNARY_FILE_f {[VarSub PROXY_INFO_FILE]}}) (Com {[LIT_CHARS .]} {[VarSub PROXY_INFO_FILE]}) ) (If (DBracket {B1 UNARY_FILE_f {[LIT_CHARS ./proxy_setup.sh]}}) (Com {[LIT_CHARS .]} {[LIT_CHARS ./proxy_setup.sh]}) ) (If (DBracket {B1 UNARY_STRING_z {[DQ [VarSub 1]]}}) (= scope= flags=0 words=[] bindings=[('BOOTSTRAP_IP', {[LIT_CHARS 10.0.100.3]})]) (ElseTrue) (= scope= flags=0 words=[] bindings=[('BOOTSTRAP_IP', {[VarSub 1]})]) ) (If (DBracket {B1 UNARY_STRING_z {[DQ [VarSub 2]]}}) (= scope= flags=0 words=[] bindings=[('USER', {[LIT_CHARS root]})]) (ElseTrue) (= scope= flags=0 words=[] bindings=[('USER', {[VarSub 2]})]) ) (If (DBracket {B1 UNARY_FILE_f {[LIT_CHARS .chef/knife.rb]}}) (List (AndOr OP_OR_IF (Com {[LIT_CHARS knife]} {[LIT_CHARS node]} {[LIT_CHARS delete]} {[ComSub (Com {[LIT_CHARS hostname]} {[LIT_CHARS -f]})]} {[LIT_CHARS -y]}) (Com {[LIT_CHARS true]}) ) (AndOr OP_OR_IF (Com {[LIT_CHARS knife]} {[LIT_CHARS client]} {[LIT_CHARS delete]} {[VarSub USER]} {[LIT_CHARS -y]}) (Com {[LIT_CHARS true]}) ) (Com {[LIT_CHARS mv]} {[LIT_CHARS .chef/]} {[DQ [LIT_CHARS .chef_found_][ComSub (Com {[LIT_CHARS date]} {[LIT_OTHER "+"] [DQ [LIT_CHARS "%m-%d-%Y %H:%M:%S"]]})]]}) ) ) (Com {[LIT_CHARS install]} {[LIT_CHARS -d]} {[LIT_CHARS -m0700]} {[LIT_CHARS .chef]}) (Com {[LIT_CHARS gen_knife_config]} < (FilenameRedirectNode filename={[LIT_CHARS .chef/knife.rb]} "> 1), > ) (Com {[LIT_CHARS cp]} {[LIT_CHARS -p]} {[LIT_CHARS .chef/knife.rb]} {[LIT_CHARS .chef/knife-proxy.rb]}) (If (DBracket {B! {B1 UNARY_STRING_z {[DQ [VarSub http_proxy]]}}}) (List (Com {[LIT_CHARS echo]} {[DQ [LIT_CHARS "http_proxy "][\ LIT_ESCAPED_CHAR "\\\""][VarSub http_proxy][\ LIT_ESCAPED_CHAR "\\\""]]} < (FilenameRedirectNode filename={[LIT_CHARS .chef/knife-proxy.rb]} >"> 1), > ) (Com {[LIT_CHARS echo]} {[DQ [LIT_CHARS "https_proxy "][\ LIT_ESCAPED_CHAR "\\\""][VarSub https_proxy][\ LIT_ESCAPED_CHAR "\\\""]]} < (FilenameRedirectNode filename={[LIT_CHARS .chef/knife-proxy.rb]} >"> 1), > ) ) ) (Com {[LIT_CHARS copy_client_keys]}) (Com {[LIT_CHARS knife]} {[LIT_CHARS ssl]} {[LIT_CHARS fetch]}) (Com {[LIT_CHARS cd]} {[LIT_CHARS cookbooks]}) (For cookbook [{[DQ [LIT_CHARS "apt 1.10.0"]]}, {[LIT_CHARS ubuntu]}, {[LIT_CHARS cron]}, {[LIT_CHARS ntp]}, {[DQ [LIT_CHARS "yum 3.2.2"]]}, {[DQ [LIT_CHARS "logrotate 1.6.0"]]}]) (If (DBracket {B! {B1 UNARY_FILE_d {[VarSub cookbook transform_ops=[VS_UNARY_PERCENT {[LIT_CHARS " *"]}]]}}}) (List (Com {[LIT_CHARS knife]} {[LIT_CHARS cookbook]} {[LIT_CHARS site]} {[LIT_CHARS download]} {[VarSub cookbook]} {[LIT_CHARS --config]} {[LIT_CHARS ../.chef/knife-proxy.rb]}) (Com {[LIT_CHARS tar]} {[LIT_CHARS zxf]} {[VarSub cookbook transform_ops=[VS_UNARY_PERCENT {[LIT_CHARS " *"]}]] [LIT_OTHER "*"] [LIT_CHARS .tar.gz]}) (Com {[LIT_CHARS rm]} {[VarSub cookbook transform_ops=[VS_UNARY_PERCENT {[LIT_CHARS " *"]}]] [LIT_OTHER "*"] [LIT_CHARS .tar.gz]}) (If (DBracket {B1 UNARY_FILE_f {[VarSub cookbook transform_ops=[VS_UNARY_PERCENT {[LIT_CHARS " *"]}]] [LIT_CHARS .patch]}}) (List (Com {[LIT_CHARS pushd]} {[VarSub cookbook transform_ops=[VS_UNARY_PERCENT {[LIT_CHARS " *"]}]]}) (Com {[LIT_CHARS patch]} {[LIT_CHARS -p1]} < (FilenameRedirectNode filename={[LIT_CHARS ../] [VarSub cookbook transform_ops=[VS_UNARY_PERCENT {[LIT_CHARS " *"]}]] [LIT_CHARS .patch]} 0), > ) (Com {[LIT_CHARS popd]}) ) ) ) ) ) )