35 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
			
		
		
	
	
			35 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
| // Imports
 | |
| import {getEnvVar} from '../common/utils';
 | |
| import {uploadServerFactory} from './upload-server-factory';
 | |
| 
 | |
| // Constants
 | |
| const AIO_BUILDS_DIR = getEnvVar('AIO_BUILDS_DIR');
 | |
| const AIO_DOMAIN_NAME = getEnvVar('AIO_DOMAIN_NAME');
 | |
| 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');
 | |
| const AIO_UPLOAD_HOSTNAME = getEnvVar('AIO_UPLOAD_HOSTNAME');
 | |
| const AIO_UPLOAD_PORT = +getEnvVar('AIO_UPLOAD_PORT');
 | |
| const AIO_WWW_USER = getEnvVar('AIO_WWW_USER');
 | |
| 
 | |
| // Run
 | |
| process.setuid(AIO_WWW_USER);   // TODO(gkalpak): Find more suitable way to run as `www-data`.
 | |
| _main();
 | |
| 
 | |
| // Functions
 | |
| function _main() {
 | |
|   uploadServerFactory.
 | |
|     create({
 | |
|       buildsDir: AIO_BUILDS_DIR,
 | |
|       domainName: AIO_DOMAIN_NAME,
 | |
|       githubOrganization: AIO_GITHUB_ORGANIZATION,
 | |
|       githubTeamSlugs: AIO_GITHUB_TEAM_SLUGS.split(','),
 | |
|       githubToken: AIO_GITHUB_TOKEN,
 | |
|       repoSlug: AIO_REPO_SLUG,
 | |
|       secret: AIO_PREVIEW_DEPLOYMENT_TOKEN,
 | |
|     }).
 | |
|     listen(AIO_UPLOAD_PORT, AIO_UPLOAD_HOSTNAME);
 | |
| }
 |