git-svn-id: https://svn.code.sf.net/p/xcat/code/xcat-core/branches/2.8@15733 8638fb3e-16cb-4fca-ae20-7b5d299a9bcd
		
			
				
	
	
		
			91 lines
		
	
	
		
			2.5 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			91 lines
		
	
	
		
			2.5 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
| #!/bin/sh
 | |
| # IBM(c) 2013 EPL license http://www.eclipse.org/legal/epl-v10.html
 | |
| 
 | |
| 
 | |
| #-------------------------------------------------------------------------------
 | |
| #=head1  config_puppet_client
 | |
| #=head2  This command configure the puppet client on a xCAT node. 
 | |
| #        It is used by install_puppet_client on Ubuntu and puppet kit on RH.
 | |
| #=cut
 | |
| #-------------------------------------------------------------------------------
 | |
| 
 | |
| echo "Configuring pupper client....."
 | |
| #check if the current node is also a puppet master
 | |
| ismaster=0
 | |
| if [ -f /etc/puppet/fileserver.conf ]; then
 | |
|    ismaster=1 
 | |
| fi
 | |
| 
 | |
| #configure the puppet.conf file. 
 | |
| #the pupper server can be passed as an argument or as an environmental variable
 | |
| #the default is $SITEMASTER
 | |
| ARGNUM=$#;
 | |
| if [ $ARGNUM -gt 1 ]; then
 | |
|     if [ $2 = "-s" ]; then
 | |
| 	puppet_server=$2
 | |
|     fi
 | |
| else
 | |
|     if [ -n "$PUPPETSERVER" ]; then
 | |
| 	puppet_server=$PUPPETSERVER
 | |
|     fi
 | |
| fi
 | |
| if [ -z "$puppet_server" ]; then
 | |
|     puppet_server=$SITEMASTER
 | |
| fi
 | |
| 
 | |
| echo "puppet_server=$puppet_server"
 | |
| 
 | |
| confname="/etc/puppet/puppet.conf"
 | |
| if [ ! -f "$confname" ]; then
 | |
|     touch $confname
 | |
| else
 | |
|     cp -f $confname ${confname}.save
 | |
|     #remove the old configuration if any
 | |
|     sed -i "/# xcat-added-agent-section-start-here/,/# xcat-added-agent-section-end-here/ d" $confname
 | |
|     sed -i "/# xcat-added-main-section-start-here/,/# xcat-added-main-section-end-here/ d" $confname
 | |
| fi
 | |
| 
 | |
| if [ $ismaster -ne 1 ]; then
 | |
|     grep "\[main\]" $confname
 | |
|     if [ $? -eq 0 ]; then
 | |
| 	sed -i "/\[main\]/ a\
 | |
|             # xcat-added-main-section-end-here #" $confname	
 | |
| 	sed -i "/\[main\]/ a\
 | |
|             certname = $NODE" $confname
 | |
| 	sed -i "/\[main\]/ a\
 | |
|             # xcat-added-main-section-start-here #" $confname	
 | |
|     else
 | |
| 	echo "[main]" >> $confname
 | |
| 	echo "# xcat-added-main-section-start-here #" >> $confname
 | |
| 	echo "   certname=$NODE" >> $confname
 | |
| 	echo "# xcat-added-main-section-end-here #" >> $confname
 | |
|     fi
 | |
| fi
 | |
| 
 | |
| grep "\[agent\]" $confname
 | |
| if [ $? -eq 0 ]; then
 | |
|     sed -i "/\[agent\]/ a\
 | |
|     # xcat-added-agent-section-end-here #" $confname
 | |
|     sed -i "/\[agent\]/ a\
 | |
|       server = $puppet_server" $confname
 | |
|     sed -i "/\[agent\]/ a\
 | |
|       pluginsync = true" $confname
 | |
|     sed -i "/\[agent\]/ a\
 | |
|     # xcat-added-agent-section-start-here #" $confname
 | |
| else
 | |
|     echo "   "  >> $confname
 | |
|     echo "[agent]" >> $confname
 | |
|     echo "# xcat-added-agent-section-start-here #" >> $confname
 | |
|     echo "  pluginsync = true" >> $confname
 | |
|     echo "  server = $puppet_server" >> $confname
 | |
|     echo "# xcat-added-agent-section-end-here #" >> $confname
 | |
| fi    
 | |
| 
 | |
| exit 0
 | |
| 
 | |
| 
 | |
| 
 | |
| 
 | |
| 
 | |
| 
 |