new type: __daemontools_service
This commit is contained in:
		
					parent
					
						
							
								1322e85eac
							
						
					
				
			
			
				commit
				
					
						cf0ab2a5bd
					
				
			
		
					 6 changed files with 37 additions and 0 deletions
				
			
		
							
								
								
									
										31
									
								
								cdist/conf/type/__daemontools_service/manifest
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										31
									
								
								cdist/conf/type/__daemontools_service/manifest
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,31 @@
 | 
			
		|||
#!/bin/sh
 | 
			
		||||
 | 
			
		||||
RUN_PREFIX="#!/bin/sh
 | 
			
		||||
exec 2>&1
 | 
			
		||||
exec "  # mind the space :D
 | 
			
		||||
 | 
			
		||||
name=$__object_id
 | 
			
		||||
servicedir=$(cat "$__object/parameter/servicedir")
 | 
			
		||||
run=$(cat "$__object/parameter/run")
 | 
			
		||||
runfile=$(cat "$__object/parameter/run-file")
 | 
			
		||||
logrun=$(cat "$__object/parameter/log-run")
 | 
			
		||||
 | 
			
		||||
badusage() {
 | 
			
		||||
	echo "__daemontools_service/$__object_id: exactly one of --run, --run-file must be set" >&2
 | 
			
		||||
	exit 1
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
[ -z "$run$runfile" ] && badusage
 | 
			
		||||
[ -n "$run" ] && [ -n "$runfile" ] && badusage
 | 
			
		||||
 | 
			
		||||
__directory $servicedir/$name/log/main --parents
 | 
			
		||||
 | 
			
		||||
echo "$RUN_PREFIX$run" | require="__directory/$servicedir/$name/log/main" __config_file "$servicedir/$name/run" \
 | 
			
		||||
	--onchange "svc -t '$servicedir/$name' 2>/dev/null" \
 | 
			
		||||
	--mode 755 \
 | 
			
		||||
	--source "${runfile:--}"
 | 
			
		||||
 | 
			
		||||
echo "$RUN_PREFIX$logrun" | require="__directory/$servicedir/$name/log/main" __config_file $servicedir/$name/log/run \
 | 
			
		||||
	--onchange "svc -t '$servicedir/$name/log' 2>/dev/null" \
 | 
			
		||||
	--mode 755 \
 | 
			
		||||
	--source "-"
 | 
			
		||||
| 
						 | 
				
			
			@ -0,0 +1 @@
 | 
			
		|||
multilog t ./main
 | 
			
		||||
| 
						 | 
				
			
			@ -0,0 +1 @@
 | 
			
		|||
/service
 | 
			
		||||
							
								
								
									
										4
									
								
								cdist/conf/type/__daemontools_service/parameter/optional
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										4
									
								
								cdist/conf/type/__daemontools_service/parameter/optional
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,4 @@
 | 
			
		|||
log-run
 | 
			
		||||
run
 | 
			
		||||
run-file
 | 
			
		||||
servicedir
 | 
			
		||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue