Fixes and refinements to the dockerfile build system.
This commit is contained in:
parent
9b9a29c310
commit
ffc33e454c
6 changed files with 58 additions and 10 deletions
|
@ -45,7 +45,7 @@ def babysit_builder(request):
|
|||
repository_build = model.get_repository_build(request['build_id'])
|
||||
|
||||
# check if there is already a DO node for this build job, if so clean it up
|
||||
old_id = repository_build.digitalocean_build_node_id
|
||||
old_id = repository_build.build_node_id
|
||||
if old_id
|
||||
old_droplet = digitalocean.Droplet(old_id)
|
||||
old_droplet.destroy()
|
||||
|
@ -60,7 +60,7 @@ def babysit_builder(request):
|
|||
size_id=66, # 512MB,
|
||||
backup_active=False)
|
||||
droplet.create(ssh_key_ids=[app.config['DO_SSH_KEY_ID']])
|
||||
repository_build.digitalocean_build_node_id = droplet.id
|
||||
repository_build.build_node_id = droplet.id
|
||||
repository_build.phase = 'starting'
|
||||
repository_build.save()
|
||||
|
||||
|
@ -115,6 +115,8 @@ def babysit_builder(request):
|
|||
|
||||
# wait for the job to be complete
|
||||
status_url = start_build.headers['Location']
|
||||
repository_build.status_url = status_url
|
||||
repository_build.save()
|
||||
|
||||
logger.debug('Waiting for job to be complete')
|
||||
status = get_status(status_url)
|
||||
|
@ -128,12 +130,15 @@ def babysit_builder(request):
|
|||
repository_build.phase = 'error'
|
||||
else:
|
||||
repository_build.phase = 'completed'
|
||||
repository_build.save()
|
||||
|
||||
# clean up the DO node
|
||||
logger.debug('Cleaning up DO node.')
|
||||
droplet.destroy()
|
||||
|
||||
repository_build.status_url = None
|
||||
repository_build.build_node_id = None;
|
||||
repository_build.save()
|
||||
|
||||
return True
|
||||
|
||||
|
||||
|
|
Reference in a new issue