vagrant/plugins/providers/docker/action/pull.rb

28 lines
667 B
Ruby

module VagrantPlugins
module DockerProvider
module Action
class Pull
def initialize(app, env)
@app = app
end
def call(env)
@env = env
@machine = env[:machine]
@provider_config = @machine.provider_config
@driver = @machine.provider.driver
# Skip pulling if the image is built
return @app.call(env) if @env[:create_image]
image = @provider_config.image
env[:ui].output(I18n.t("docker_provider.pull", image: image))
@driver.pull(image)
@app.call(env)
end
end
end
end
end