| 
									
										
										
										
											2011-02-17 15:12:50 +01:00
										 |  |  | #!/bin/sh | 
					
						
							|  |  |  | # | 
					
						
							|  |  |  | # 2010-2011 Nico Schottelius (nico-cdist at schottelius.org) | 
					
						
							|  |  |  | # | 
					
						
							|  |  |  | # This file is part of cdist. | 
					
						
							|  |  |  | # | 
					
						
							|  |  |  | # cdist is free software: you can redistribute it and/or modify | 
					
						
							|  |  |  | # it under the terms of the GNU General Public License as published by | 
					
						
							|  |  |  | # the Free Software Foundation, either version 3 of the License, or | 
					
						
							|  |  |  | # (at your option) any later version. | 
					
						
							|  |  |  | # | 
					
						
							|  |  |  | # cdist is distributed in the hope that it will be useful, | 
					
						
							|  |  |  | # but WITHOUT ANY WARRANTY; without even the implied warranty of | 
					
						
							|  |  |  | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the | 
					
						
							|  |  |  | # GNU General Public License for more details. | 
					
						
							|  |  |  | # | 
					
						
							|  |  |  | # You should have received a copy of the GNU General Public License | 
					
						
							|  |  |  | # along with cdist. If not, see <http://www.gnu.org/licenses/>. | 
					
						
							|  |  |  | # | 
					
						
							|  |  |  | # | 
					
						
							| 
									
										
										
										
											2011-03-19 23:14:48 +01:00
										 |  |  | # Exec code locally and remote | 
					
						
							| 
									
										
										
										
											2011-02-17 15:12:50 +01:00
										 |  |  | # | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | . cdist-config | 
					
						
							| 
									
										
										
										
											2011-02-17 15:36:27 +01:00
										 |  |  | [ $# -eq 1 ] || __cdist_usage "<target host>" | 
					
						
							| 
									
										
										
										
											2011-02-17 15:12:50 +01:00
										 |  |  | set -e | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2011-02-25 01:42:13 +01:00
										 |  |  | __cdist_target_host="$1"; shift | 
					
						
							| 
									
										
										
										
											2011-02-17 15:12:50 +01:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2011-03-19 23:14:48 +01:00
										 |  |  | __cdist_object_list "$__cdist_out_object_dir" > "$__cdist_tmp_file" | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2011-03-20 02:01:02 +01:00
										 |  |  | # NEED TO CREATE ARRAY, SSH DESTROYS WHILE READ LOOP | 
					
						
							| 
									
										
										
										
											2011-03-19 23:14:48 +01:00
										 |  |  | while read object; do | 
					
						
							| 
									
										
										
										
											2011-03-20 02:01:02 +01:00
										 |  |  |    set -- "$@" "$object" | 
					
						
							|  |  |  | done < "$__cdist_tmp_file" | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | while [ $# -ge 1 ]; do | 
					
						
							|  |  |  |    object="$1"; shift | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2011-03-19 23:14:48 +01:00
										 |  |  |    # Code local | 
					
						
							| 
									
										
										
										
											2011-03-20 02:01:02 +01:00
										 |  |  |    cdist-code-run "$__cdist_out_object_dir" "$object" \ | 
					
						
							|  |  |  |       "${__cdist_name_gencode_local}"                 \ | 
					
						
							| 
									
										
										
										
											2011-03-20 22:42:00 +01:00
										 |  |  |          || __cdist_exit_err "Remote code failed for $object" | 
					
						
							| 
									
										
										
										
											2011-03-19 23:14:48 +01:00
										 |  |  | 
 | 
					
						
							|  |  |  |    # Code remote | 
					
						
							| 
									
										
										
										
											2011-03-23 17:24:48 +01:00
										 |  |  |    cdist-run-remote "$__cdist_target_host"                                 \ | 
					
						
							|  |  |  |       "cdist-code-run" "${__cdist_remote_out_object_base_dir}" "$object"   \ | 
					
						
							|  |  |  |       "${__cdist_name_gencode_remote}"                                     \ | 
					
						
							| 
									
										
										
										
											2011-03-20 22:42:00 +01:00
										 |  |  |       || __cdist_exit_err "Remote code failed for $object" | 
					
						
							| 
									
										
										
										
											2011-03-19 23:14:48 +01:00
										 |  |  | done < "$__cdist_tmp_file" |