| 
									
										
										
										
											2017-02-06 20:40:28 +02:00
										 |  |  | // Imports
 | 
					
						
							|  |  |  | import {getEnvVar} from '../common/utils'; | 
					
						
							|  |  |  | import {uploadServerFactory} from './upload-server-factory'; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | // Constants
 | 
					
						
							|  |  |  | const AIO_BUILDS_DIR = getEnvVar('AIO_BUILDS_DIR'); | 
					
						
							| 
									
										
										
										
											2017-03-02 00:04:03 +02:00
										 |  |  | const AIO_DOMAIN_NAME = getEnvVar('AIO_DOMAIN_NAME'); | 
					
						
							| 
									
										
										
										
											2017-02-28 21:10:46 +02:00
										 |  |  | const AIO_GITHUB_ORGANIZATION = getEnvVar('AIO_GITHUB_ORGANIZATION'); | 
					
						
							|  |  |  | const AIO_GITHUB_TEAM_SLUGS = getEnvVar('AIO_GITHUB_TEAM_SLUGS'); | 
					
						
							|  |  |  | const AIO_GITHUB_TOKEN = getEnvVar('AIO_GITHUB_TOKEN'); | 
					
						
							|  |  |  | const AIO_PREVIEW_DEPLOYMENT_TOKEN = getEnvVar('AIO_PREVIEW_DEPLOYMENT_TOKEN'); | 
					
						
							|  |  |  | const AIO_REPO_SLUG = getEnvVar('AIO_REPO_SLUG'); | 
					
						
							| 
									
										
										
										
											2017-06-19 01:15:07 +03:00
										 |  |  | const AIO_TRUSTED_PR_LABEL = getEnvVar('AIO_TRUSTED_PR_LABEL'); | 
					
						
							| 
									
										
										
										
											2017-02-06 20:40:28 +02:00
										 |  |  | const AIO_UPLOAD_HOSTNAME = getEnvVar('AIO_UPLOAD_HOSTNAME'); | 
					
						
							|  |  |  | const AIO_UPLOAD_PORT = +getEnvVar('AIO_UPLOAD_PORT'); | 
					
						
							| 
									
										
										
										
											2017-05-17 07:07:28 +03:00
										 |  |  | const AIO_WWW_USER = getEnvVar('AIO_WWW_USER'); | 
					
						
							| 
									
										
										
										
											2017-02-06 20:40:28 +02:00
										 |  |  | 
 | 
					
						
							|  |  |  | // Run
 | 
					
						
							| 
									
										
										
										
											2017-05-17 07:07:28 +03:00
										 |  |  | process.setuid(AIO_WWW_USER);   // TODO(gkalpak): Find more suitable way to run as `www-data`.
 | 
					
						
							| 
									
										
										
										
											2017-02-06 20:40:28 +02:00
										 |  |  | _main(); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | // Functions
 | 
					
						
							|  |  |  | function _main() { | 
					
						
							|  |  |  |   uploadServerFactory. | 
					
						
							| 
									
										
										
										
											2017-02-28 21:10:46 +02:00
										 |  |  |     create({ | 
					
						
							|  |  |  |       buildsDir: AIO_BUILDS_DIR, | 
					
						
							| 
									
										
										
										
											2017-03-02 00:04:03 +02:00
										 |  |  |       domainName: AIO_DOMAIN_NAME, | 
					
						
							| 
									
										
										
										
											2017-02-28 21:10:46 +02:00
										 |  |  |       githubOrganization: AIO_GITHUB_ORGANIZATION, | 
					
						
							|  |  |  |       githubTeamSlugs: AIO_GITHUB_TEAM_SLUGS.split(','), | 
					
						
							|  |  |  |       githubToken: AIO_GITHUB_TOKEN, | 
					
						
							|  |  |  |       repoSlug: AIO_REPO_SLUG, | 
					
						
							|  |  |  |       secret: AIO_PREVIEW_DEPLOYMENT_TOKEN, | 
					
						
							| 
									
										
										
										
											2017-06-19 01:15:07 +03:00
										 |  |  |       trustedPrLabel: AIO_TRUSTED_PR_LABEL, | 
					
						
							| 
									
										
										
										
											2017-02-28 21:10:46 +02:00
										 |  |  |     }). | 
					
						
							| 
									
										
										
										
											2017-02-06 20:40:28 +02:00
										 |  |  |     listen(AIO_UPLOAD_PORT, AIO_UPLOAD_HOSTNAME); | 
					
						
							|  |  |  | } |