diff --git a/.travis.yml b/.travis.yml index b81db682..625c2f2e 100644 --- a/.travis.yml +++ b/.travis.yml @@ -18,3 +18,4 @@ env: - REPO_TYPE=conda - REPO_TYPE=venv - REPO_TYPE=julia + - REPO_TYPE=dockerfile diff --git a/repo2docker/detectors.py b/repo2docker/detectors.py index 7afabc38..f6fa2d65 100644 --- a/repo2docker/detectors.py +++ b/repo2docker/detectors.py @@ -677,6 +677,15 @@ class DockerBuildPack(BuildPack): with open('Dockerfile') as f: return f.read() + def build(self, image_spec): + client = docker.APIClient(version='auto', **docker.utils.kwargs_from_env()) + for line in client.build( + path=os.getcwd(), + tag=image_spec, + decode=True + ): + yield line + class LegacyBinderDockerBuildPack(BuildPack): name = 'Legacy Binder Dockerfile' diff --git a/tests/dockerfile/jupyter-stack/Dockerfile b/tests/dockerfile/jupyter-stack/Dockerfile new file mode 100644 index 00000000..a25b0cdb --- /dev/null +++ b/tests/dockerfile/jupyter-stack/Dockerfile @@ -0,0 +1,4 @@ +FROM jupyter/base-notebook:b4dd11e16ae4 + +RUN pip install there +ADD verify verify diff --git a/tests/dockerfile/jupyter-stack/verify b/tests/dockerfile/jupyter-stack/verify new file mode 100755 index 00000000..71cd9c52 --- /dev/null +++ b/tests/dockerfile/jupyter-stack/verify @@ -0,0 +1,7 @@ +#!/usr/bin/env python +import sys + +assert sys.version_info[:2] == (3, 6) + +import jupyter +import there diff --git a/tests/dockerfile/simple/Dockerfile b/tests/dockerfile/simple/Dockerfile new file mode 100644 index 00000000..e8ab22db --- /dev/null +++ b/tests/dockerfile/simple/Dockerfile @@ -0,0 +1,6 @@ +FROM alpine:3.5 + +ENTRYPOINT "/bin/sh" + +ADD sayhi.sh /usr/local/bin/sayhi.sh +ADD verify verify diff --git a/tests/dockerfile/simple/sayhi.sh b/tests/dockerfile/simple/sayhi.sh new file mode 100755 index 00000000..fae96a32 --- /dev/null +++ b/tests/dockerfile/simple/sayhi.sh @@ -0,0 +1,3 @@ +#!/bin/bash +echo hi +exit 0 diff --git a/tests/dockerfile/simple/verify b/tests/dockerfile/simple/verify new file mode 100755 index 00000000..65d02e29 --- /dev/null +++ b/tests/dockerfile/simple/verify @@ -0,0 +1,3 @@ +#!/bin/sh +set -e +/usr/local/bin/sayhi.sh