From be12dbf51d7a254b97c9d491c8410b8e4295c886 Mon Sep 17 00:00:00 2001 From: Paul Cothenet Date: Tue, 9 Nov 2021 12:13:52 -0800 Subject: [PATCH 1/2] Run all of the things without python --- Dockerfile | 27 +++++++++++++++++++++++++++ Makefile | 17 +++++++++-------- 2 files changed, 36 insertions(+), 8 deletions(-) create mode 100644 Dockerfile diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..939ba87 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,27 @@ +FROM python:3.8.6 AS base + + +FROM base AS lint + +RUN pip install black + +WORKDIR /data +ENTRYPOINT ["black"] + + +FROM base AS build + +COPY requirements.txt . +RUN pip install -r requirements.txt + +CMD [ "python", "setup.py", "install" ] + + +FROM build as test + +COPY test-requirements.txt . +RUN pip install -r test-requirements.txt + +COPY . . + +ENTRYPOINT ["python", "-m", "unittest", "discover", "test/"] \ No newline at end of file diff --git a/Makefile b/Makefile index 5e5c18b..b760e03 100644 --- a/Makefile +++ b/Makefile @@ -1,18 +1,19 @@ SHELL = /bin/bash -build: install lint +build: lint install install: - pip install -r requirements.txt && \ - python setup.py install + docker build --target build . -t patch-python-build && \ + docker run --rm -v $(PWD)/build:/build patch-python-lint . lint: - pip install black && \ - black . + docker build --target lint . -t patch-python-lint && \ + docker run --rm -v $(PWD):/data patch-python-lint . test: - pip install -r test-requirements.txt && \ - pip install -r requirements.txt && \ - python -m unittest discover test/ + docker build --target test . -t patch-python-test && \ + docker run --rm \ + -e SANDBOX_API_KEY=${SANDBOX_API_KEY} \ + patch-python-test .PHONY: build lint test From aa0579cbe6a0431faa38b5afad22b4a58503482d Mon Sep 17 00:00:00 2001 From: Paul Cothenet Date: Tue, 9 Nov 2021 12:19:45 -0800 Subject: [PATCH 2/2] Touch-up --- Dockerfile | 11 ++++++++--- Makefile | 2 +- 2 files changed, 9 insertions(+), 4 deletions(-) diff --git a/Dockerfile b/Dockerfile index 939ba87..fbbde8d 100644 --- a/Dockerfile +++ b/Dockerfile @@ -9,15 +9,20 @@ WORKDIR /data ENTRYPOINT ["black"] -FROM base AS build +FROM base AS dependencies COPY requirements.txt . RUN pip install -r requirements.txt -CMD [ "python", "setup.py", "install" ] +FROM dependencies AS build -FROM build as test +COPY . . + +ENTRYPOINT [ "python", "setup.py", "install" ] + + +FROM dependencies as test COPY test-requirements.txt . RUN pip install -r test-requirements.txt diff --git a/Makefile b/Makefile index b760e03..2f37cd9 100644 --- a/Makefile +++ b/Makefile @@ -4,7 +4,7 @@ build: lint install install: docker build --target build . -t patch-python-build && \ - docker run --rm -v $(PWD)/build:/build patch-python-lint . + docker run --rm -v $(PWD)/build:/build patch-python-build lint: docker build --target lint . -t patch-python-lint && \