add method to get config as json to node model
This commit is contained in:
		
							parent
							
								
									2dbacafabb
								
							
						
					
					
						commit
						ef1fa4c4e6
					
				| @ -117,4 +117,58 @@ class Node extends Model | ||||
| 
 | ||||
|         return self::$guzzle[$node]; | ||||
|     } | ||||
| 
 | ||||
|     /** | ||||
|      * Returns the configuration in JSON format | ||||
|      * | ||||
|      * @param boolean $pretty Wether to pretty print the JSON or not | ||||
|      * @return string The configration in JSON format | ||||
|      */ | ||||
|     public function getConfigurationAsJson($pretty = false) { | ||||
|         $config = array( | ||||
|             'web' => array( | ||||
|                 'host' => '0.0.0.0', | ||||
|                 'listen' => $this->daemonListen, | ||||
|                 'ssl' => array( | ||||
|                     'enabled' => $this->scheme === 'https', | ||||
|                     'certificate' => '/etc/letsencrypt/live/localhost/fullchain.pem', | ||||
|                     'key' => '/etc/letsencrypt/live/localhost/privkey.pem' | ||||
|                 ) | ||||
|             ), | ||||
|             'docker' => array( | ||||
|                 'socket' => '/var/run/docker.sock', | ||||
|                 'autoupdate_images' => true | ||||
|             ), | ||||
|             'sftp' => array( | ||||
|                 'path' => $this->daemonBase, | ||||
|                 'port' => $this->daemonSFTP, | ||||
|                 'container' => 'ptdl-sftp' | ||||
|             ), | ||||
|             'query' => array( | ||||
|                 'kill_on_fail' => true, | ||||
|                 'fail_limit' => 5 | ||||
|             ), | ||||
|             'logger' => array( | ||||
|                 'path' => 'logs/', | ||||
|                 'src' => false, | ||||
|                 'level' => 'info', | ||||
|                 'period' => '1d', | ||||
|                 'count' => 3 | ||||
|             ), | ||||
|             'remote' => array( | ||||
|                 'base' => config('app.url'), | ||||
|                 'download' => route('remote.download'), | ||||
|                 'installed' => route('remote.install') | ||||
|             ), | ||||
|             'uploads' => array( | ||||
|                 'size_limit' => $this->upload_size | ||||
|             ), | ||||
|             'keys' => array($this->daemonSecret) | ||||
|         ); | ||||
| 
 | ||||
|         $json_options = JSON_UNESCAPED_SLASHES; | ||||
|         if ($pretty) $json_options |= JSON_PRETTY_PRINT; | ||||
| 
 | ||||
|         return json_encode($config, $json_options); | ||||
|     } | ||||
| } | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user
	 Jakob Schrettenbrunner
						Jakob Schrettenbrunner