add cdist_package with dynamic backend selector
Signed-off-by: Nico Schottelius <nico@kr.ethz.ch>
This commit is contained in:
		
					parent
					
						
							
								4f64845969
							
						
					
				
			
			
				commit
				
					
						9ac20660ef
					
				
			
		
					 7 changed files with 95 additions and 2 deletions
				
			
		
							
								
								
									
										0
									
								
								conf/lib/cdist_explore_hostname
									
										
									
									
									
										
										
										Executable file → Normal file
									
								
							
							
						
						
									
										0
									
								
								conf/lib/cdist_explore_hostname
									
										
									
									
									
										
										
										Executable file → Normal file
									
								
							
							
								
								
									
										0
									
								
								conf/lib/cdist_explore_os
									
										
									
									
									
										
										
										Executable file → Normal file
									
								
							
							
						
						
									
										0
									
								
								conf/lib/cdist_explore_os
									
										
									
									
									
										
										
										Executable file → Normal file
									
								
							
							
								
								
									
										0
									
								
								conf/lib/cdist_explore_pkg_system
									
										
									
									
									
										
										
										Executable file → Normal file
									
								
							
							
						
						
									
										0
									
								
								conf/lib/cdist_explore_pkg_system
									
										
									
									
									
										
										
										Executable file → Normal file
									
								
							
							
								
								
									
										28
									
								
								conf/lib/cdist_package_backend_pacman
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										28
									
								
								conf/lib/cdist_package_backend_pacman
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,28 @@ | |||
| #!/bin/sh | ||||
| # | ||||
| # 2010 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/>. | ||||
| # | ||||
| # | ||||
| # Install a package | ||||
| # | ||||
| # | ||||
| 
 | ||||
| cdist_package_backend_pacman_install() | ||||
| { | ||||
|    pacman --noconfirm --noprogressbar "$@" | ||||
| } | ||||
|  | @ -19,8 +19,19 @@ | |||
| # | ||||
| # | ||||
| 
 | ||||
| cdist_package_install() | ||||
| cdist_package() | ||||
| { | ||||
|    : | ||||
|    # select backend | ||||
|    backend="$(cdist_package_select_backend)" | ||||
| 
 | ||||
|    case "$1" in | ||||
|       install|remove) | ||||
|          operation="$1"; shift | ||||
|          echo ${backend}_${operation} "$@" | ||||
|       ;; | ||||
|        | ||||
|       *) | ||||
|          echo "Unsupported operation" | ||||
|       ;; | ||||
|    esac | ||||
| } | ||||
|  |  | |||
							
								
								
									
										30
									
								
								conf/lib/cdist_package_select_backend
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										30
									
								
								conf/lib/cdist_package_select_backend
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,30 @@ | |||
| #!/bin/sh | ||||
| # | ||||
| # 2010 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/>. | ||||
| # | ||||
| # | ||||
| # Select correct package management system | ||||
| # | ||||
| # | ||||
| 
 | ||||
| cdist_package_select_backend() | ||||
| { | ||||
|    echo "cdist_package_backend_$(cdist_explore_pkg_system)" | ||||
| 
 | ||||
| 
 | ||||
| } | ||||
							
								
								
									
										24
									
								
								test/test_package_install
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										24
									
								
								test/test_package_install
									
										
									
									
									
										Executable file
									
								
							|  | @ -0,0 +1,24 @@ | |||
| #!/bin/sh | ||||
| # | ||||
| # 2010 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/>. | ||||
| # | ||||
| # | ||||
| 
 | ||||
| . cdist-config | ||||
| 
 | ||||
| cdist_package install "$@" | ||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue