You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							34 lines
						
					
					
						
							827 B
						
					
					
				
			
		
		
	
	
							34 lines
						
					
					
						
							827 B
						
					
					
				| #!/usr/bin/env python
 | |
| 
 | |
| # simple service that waits for network access and tries to update every hour
 | |
| 
 | |
| import time
 | |
| import subprocess
 | |
| from selfdrive.swaglog import cloudlog
 | |
| 
 | |
| NICE_LOW_PRIORITY = ["nice", "-n", "19"]
 | |
| def main(gctx=None):
 | |
|   while True:
 | |
|     # try network
 | |
|     r = subprocess.call(["ping", "-W", "4", "-c", "1", "8.8.8.8"])
 | |
|     if r:
 | |
|       time.sleep(60)
 | |
|       continue
 | |
| 
 | |
|     # download application update
 | |
|     try:
 | |
|       r = subprocess.check_output(NICE_LOW_PRIORITY + ["git", "fetch"], stderr=subprocess.STDOUT)
 | |
|     except subprocess.CalledProcessError, e:
 | |
|       cloudlog.event("git fetch failed",
 | |
|         cmd=e.cmd,
 | |
|         output=e.output,
 | |
|         returncode=e.returncode)
 | |
|       time.sleep(60)
 | |
|       continue
 | |
|     cloudlog.info("git fetch success: %s", r)
 | |
| 
 | |
|     time.sleep(60*60)
 | |
| 
 | |
| if __name__ == "__main__":
 | |
|   main()
 | |
| 
 | |
| 
 |