mirror of
				https://github.com/xcat2/confluent.git
				synced 2025-10-30 19:02:29 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			83 lines
		
	
	
		
			2.8 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			83 lines
		
	
	
		
			2.8 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| function set_confluent_vars() {
 | |
|     if [ -z "$mgr" ]; then
 | |
|         mgr=$(grep ^deploy_server: /etc/confluent/confluent.deploycfg | sed -e 's/[^ ]*: //')
 | |
|     fi
 | |
|     if [ -z "$profile" ]; then
 | |
|         profile=$(grep ^profile: /etc/confluent/confluent.deploycfg | sed -e 's/[^ ]*: //')
 | |
|     fi
 | |
| }
 | |
| 
 | |
| fetch_remote() {
 | |
|     if [ -f /etc/confluent/ca.pem ]; then
 | |
|         curlargs=" --cacert /etc/confluent/ca.pem"
 | |
|     fi
 | |
|     set_confluent_vars
 | |
|     curl -f -sS $curlargs https://$mgr/confluent-public/os/$profile/scripts/$1 > $1
 | |
|     if [ $? != 0 ]; then echo $1 failed to download; return 1; fi
 | |
| }
 | |
| 
 | |
| run_remote() {
 | |
|     requestedcmd="'$*'"
 | |
|     curlargs=""
 | |
|     if [ -f /etc/confluent/ca.pem ]; then
 | |
|         curlargs=" --cacert /etc/confluent/ca.pem"
 | |
|     fi
 | |
|     set_confluent_vars
 | |
|     echo
 | |
|     echo '---------------------------------------------------------------------------'
 | |
|     echo Running $requestedcmd from https://$mgr/confluent-public/os/$profile/scripts/
 | |
|     tmpdir=$(mktemp -d)
 | |
|     echo Executing in $tmpdir
 | |
|     cd $tmpdir
 | |
|     curl -f -sS $curlargs https://$mgr/confluent-public/os/$profile/scripts/$1 > $1
 | |
|     if [ $? != 0 ]; then echo $requestedcmd failed to download; return 1; fi
 | |
|     chmod +x $1
 | |
|     cmd=$1
 | |
|     if [ -x /usr/bin/chcon ]; then
 | |
|         chcon system_u:object_r:bin_t:s0 $cmd
 | |
|     fi
 | |
|     shift
 | |
|     ./$cmd $*
 | |
|     retcode=$?
 | |
|     echo "$requestedcmd exited with code $retcode"
 | |
|     cd - > /dev/null
 | |
|     return $retcode
 | |
| }
 | |
| 
 | |
| run_remote_python() {
 | |
|     echo
 | |
|     set_confluent_vars
 | |
|     if [ -f /etc/confluent/ca.pem ]; then
 | |
|         curlargs=" --cacert /etc/confluent/ca.pem"
 | |
|     fi
 | |
|     echo '---------------------------------------------------------------------------'
 | |
|     echo Running python script "'$*'" from https://$mgr/confluent-public/os/$profile/scripts/
 | |
|     tmpdir=$(mktemp -d)
 | |
|     echo Executing in $tmpdir
 | |
|     cd $tmpdir
 | |
|     curl -f -sS $curlargs https://$mgr/confluent-public/os/$profile/scripts/$1 > $1
 | |
|     if [ $? != 0 ]; then echo "'$*'" failed to download; return 1; fi
 | |
|     /usr/libexec/platform-python $*
 | |
|     retcode=$?
 | |
|     echo "'$*' exited with code $retcode"
 | |
|     cd - > /dev/null
 | |
|     return $retcode
 | |
| }
 | |
| 
 | |
| run_remote_config() {
 | |
|     echo
 | |
|     set_confluent_vars
 | |
|     apiclient=/opt/confluent/bin/apiclient
 | |
|     if [ -f /etc/confluent/apiclient ]; then
 | |
|         apiclient=/etc/confluent/apiclient
 | |
|     fi
 | |
|     echo '---------------------------------------------------------------------------'
 | |
|     echo Requesting to run remote configuration for "'$*'" from $mgr under profile $profile
 | |
|     /usr/libexec/platform-python $apiclient /confluent-api/self/remoteconfig/"$*" -d {}
 | |
|     /usr/libexec/platform-python $apiclient /confluent-api/self/remoteconfig/status -w 204
 | |
|     echo
 | |
|     echo 'Completed remote configuration'
 | |
|     echo '---------------------------------------------------------------------------'
 | |
|     return
 | |
| }
 |