Merge "Expose the docker build_arg to build.py"

This commit is contained in:
Jenkins 2016-01-19 09:51:47 +00:00 committed by Gerrit Code Review
commit 11cdd5b8ea
3 changed files with 23 additions and 2 deletions

View File

@ -261,7 +261,8 @@ class WorkerThread(Thread):
nocache=self.nocache,
rm=True,
pull=pull,
forcerm=self.forcerm):
forcerm=self.forcerm,
buildargs=self.conf.build_args):
stream = json.loads(response.decode('utf-8'))
if 'stream' in stream:

View File

@ -63,6 +63,8 @@ _CLI_OPTS = [
cfg.BoolOpt('debug', short='d', default=False,
deprecated_group='kolla-build',
help='Turn on debugging log level'),
cfg.DictOpt('build-args',
help='Set docker build time variables'),
cfg.StrOpt('include-header', short='i',
deprecated_group='kolla-build',
help=('Path to custom file to be added at '

View File

@ -45,4 +45,22 @@ class WorkerThreadTest(base.TestCase):
mock_client().build.assert_called_once_with(
path=FAKE_IMAGE['path'], tag=FAKE_IMAGE['fullname'],
nocache=False, rm=True, pull=True, forcerm=True)
nocache=False, rm=True, pull=True, forcerm=True,
buildargs=None)
@mock.patch('docker.Client')
def test_build_image_with_build_arg(self, mock_client):
build_args = {
'HTTP_PROXY': 'http://localhost:8080',
'NO_PROXY': '127.0.0.1'
}
self.conf.set_override('build_args', build_args)
worker = build.WorkerThread(mock.Mock(),
mock.Mock(),
self.conf)
worker.builder(FAKE_IMAGE)
mock_client().build.assert_called_once_with(
path=FAKE_IMAGE['path'], tag=FAKE_IMAGE['fullname'],
nocache=False, rm=True, pull=True, forcerm=True,
buildargs=build_args)