add pypy dockerfile
This commit is contained in:
		
							parent
							
								
									8c9a60decf
								
							
						
					
					
						commit
						e7459095cf
					
				
							
								
								
									
										2
									
								
								pypy/master/Dockerfile
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										2
									
								
								pypy/master/Dockerfile
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,2 @@ | |||||||
|  | from pypy:2-onbuild | ||||||
|  | CMD /usr/src/app/start_buildbot.sh | ||||||
							
								
								
									
										16
									
								
								pypy/master/buildbot.tac
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										16
									
								
								pypy/master/buildbot.tac
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,16 @@ | |||||||
|  | import sys | ||||||
|  | 
 | ||||||
|  | from buildbot.master import BuildMaster | ||||||
|  | from twisted.application import service | ||||||
|  | from twisted.python.log import FileLogObserver, ILogObserver | ||||||
|  | 
 | ||||||
|  | basedir = '/usr/src/app' | ||||||
|  | configfile = 'master.cfg' | ||||||
|  | 
 | ||||||
|  | # note: this line is matched against to check that this is a buildmaster | ||||||
|  | # directory; do not edit it. | ||||||
|  | application = service.Application('buildmaster') | ||||||
|  | application.setComponent(ILogObserver, FileLogObserver(sys.stdout).emit) | ||||||
|  | 
 | ||||||
|  | m = BuildMaster(basedir, configfile, umask=None) | ||||||
|  | m.setServiceParent(application) | ||||||
							
								
								
									
										2
									
								
								pypy/master/requirements.txt
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										2
									
								
								pypy/master/requirements.txt
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,2 @@ | |||||||
|  | buildbot[bundle] | ||||||
|  | psycopg2cffi-compat | ||||||
							
								
								
									
										56
									
								
								pypy/master/start_buildbot.sh
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										56
									
								
								pypy/master/start_buildbot.sh
									
									
									
									
									
										Executable file
									
								
							| @ -0,0 +1,56 @@ | |||||||
|  | #!/bin/sh | ||||||
|  | 
 | ||||||
|  | # startup script for purely stateless master | ||||||
|  | 
 | ||||||
|  | # we download the config from an arbitrary curl accessible tar.gz file (which github can generate for us) | ||||||
|  | 
 | ||||||
|  | B=`pwd` | ||||||
|  | 
 | ||||||
|  | if [ -z "$BUILDBOT_CONFIG_URL" ] | ||||||
|  | then | ||||||
|  |     if [ ! -f "$B/master.cfg" ] | ||||||
|  |     then | ||||||
|  |         echo No master.cfg found nor $$BUILDBOT_CONFIG_URL ! | ||||||
|  |         echo Please provide a master.cfg file in $B or provide a $$BUILDBOT_CONFIG_URL variable via -e | ||||||
|  |         exit 1 | ||||||
|  |     fi | ||||||
|  | 
 | ||||||
|  | else | ||||||
|  |     BUILDBOT_CONFIG_DIR=${BUILDBOT_CONFIG_DIR:-config} | ||||||
|  |     mkdir -p $B/$BUILDBOT_CONFIG_DIR | ||||||
|  |     # if it ends with .tar.gz then its a tarball, else its directly the file | ||||||
|  |     if echo "$BUILDBOT_CONFIG_URL" | grep '.tar.gz$' >/dev/null | ||||||
|  |     then | ||||||
|  |         until curl -sL $BUILDBOT_CONFIG_URL | tar -xz --strip-components=1 --directory=$B/$BUILDBOT_CONFIG_DIR | ||||||
|  |         do | ||||||
|  |             echo "Can't download from \$BUILDBOT_CONFIG_URL: $BUILDBOT_CONFIG_URL" | ||||||
|  |             sleep 1 | ||||||
|  |         done | ||||||
|  | 
 | ||||||
|  |         ln -sf $B/$BUILDBOT_CONFIG_DIR/master.cfg $B/master.cfg | ||||||
|  | 
 | ||||||
|  |         if [ -f $B/$BUILDBOT_CONFIG_DIR/buildbot.tac ] | ||||||
|  |         then | ||||||
|  |             ln -sf $B/$BUILDBOT_CONFIG_DIR/buildbot.tac $B/buildbot.tac | ||||||
|  |         fi | ||||||
|  |     else | ||||||
|  |         until curl -sL $BUILDBOT_CONFIG_URL > $B/master.cfg | ||||||
|  |         do | ||||||
|  |             echo "Can't download from $$BUILDBOT_CONFIG_URL: $BUILDBOT_CONFIG_URL" | ||||||
|  |         done | ||||||
|  |     fi | ||||||
|  | fi | ||||||
|  | # copy the default buildbot.tac if not provided by the config | ||||||
|  | if [ ! -f $B/buildbot.tac ] | ||||||
|  | then | ||||||
|  |     cp /usr/src/buildbot/contrib/docker/master/buildbot.tac $B | ||||||
|  | fi | ||||||
|  | # wait for db to start by trying to upgrade the master | ||||||
|  | until buildbot upgrade-master $B | ||||||
|  | do | ||||||
|  |     echo "Can't upgrade master yet. Waiting for database ready?" | ||||||
|  |     sleep 1 | ||||||
|  | done | ||||||
|  | 
 | ||||||
|  | # we use exec so that twistd use the pid 1 of the container, and so that signals are properly forwarded | ||||||
|  | exec twistd -ny $B/buildbot.tac | ||||||
		Loading…
	
		Reference in New Issue
	
	Block a user