blob: 3088fd07e60830cfbbbfff17d69c9cb5d4c30972 [file] [log] [blame]
# Copyright 2018 The Chromium Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
from recipe_engine.post_process import DoesNotRun, Filter, StatusFailure
DEPS = [
'recipe_engine/raw_io',
'recipe_engine/step',
'docker',
]
def RunSteps(api):
api.docker.ensure_installed()
version = api.docker.get_version()
if version:
api.step('log version', cmd=None).presentation.step_text = version
api.docker.login()
api.docker.run(
'testimage',
cmd_args=['test', 'cmd'],
dir_mapping=[('/foo', '/bar')],
env={
'var1': '1',
'var2': '2'
},
inherit_luci_context=True,
)
api.docker('push',
'gcr.io/chromium-container-registry/image:2018-11-16-01-25')
def GenTests(api):
yield api.test('example')
yield api.test(
'fail_installed',
api.step_data('ensure docker installed', retcode=1),
api.post_process(StatusFailure),
)
yield api.test(
'fail_get_version',
api.override_step_data('docker version',
api.raw_io.stream_output('Foo: bar')),
api.post_process(DoesNotRun, 'log version'),
api.post_process(Filter('docker version')),
)