fix(buildman, endpoint): added in fix upload gzip and dockerfile

This commit is contained in:
Charlton Austin 2017-03-29 12:54:15 -04:00
parent 64cd139552
commit df5a6aabe2
4 changed files with 63 additions and 19 deletions

View file

@ -125,11 +125,11 @@ class BuildComponent(BaseComponent):
# password: The password for pulling the base image (if any).
# TODO: Charlie Tuesday, March 28, 2017 come back and clean up build_subdir.
dockerfile_path = os.path.relpath(build_config.get('build_subdir'), build_config.get('context'))
context, dockerfile_path = self.extract_dockerfile_args(build_config)
build_arguments = {
'build_package': build_job.get_build_package_url(self.user_files),
'context': build_config.get('context'),
'context': context,
'dockerfile_path': dockerfile_path,
'repository': repository_name,
'registry': self.registry_hostname,
@ -174,6 +174,18 @@ class BuildComponent(BaseComponent):
# by this point, so it makes sense to have a timeout.
self._last_heartbeat = datetime.datetime.utcnow() + BUILD_HEARTBEAT_DELAY
@staticmethod
def extract_dockerfile_args(build_config):
dockerfile_path = build_config.get('build_subdir', '')
context = build_config.get('context', '')
if not (dockerfile_path == '' or context == ''):
# This should not happen and can be removed when we centralize validating build_config
if ".." in os.path.relpath(dockerfile_path, context):
return os.path.split(dockerfile_path)
dockerfile_path = os.path.relpath(dockerfile_path, context)
return context, dockerfile_path
@staticmethod
def _commit_sha(build_config):
""" Determines whether the metadata is using an old schema or not and returns the commit. """