From dc6a5736b36fa8bc97b76839b4ed74c66a901afd Mon Sep 17 00:00:00 2001 From: Anton Sarukhanov <code@ant.sr> Date: Sun, 19 Apr 2020 22:23:23 -0400 Subject: [PATCH] dockerize --- .gitlab-ci.yml | 37 +++++++++++++++++++++++++++++-------- Dockerfile | 9 +++++++++ requirements.txt | 1 + 3 files changed, 39 insertions(+), 8 deletions(-) create mode 100644 Dockerfile diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index dcc7891..64f48a1 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -1,16 +1,37 @@ image: python:3-buster -before_script: - - pip install -r requirements-dev.txt +stages: + - test + - build + analyze: + stage: test + before_script: + - pip install -r requirements-dev.txt script: - - bandit whatformat/*.py whatformat/util/*.py - - flake8 --config=.flake8 whatformat/*.py whatformat/util/*.py - - mypy whatformat/*.py whatformat/util/*.py - - pydocstyle whatformat/*.py whatformat/util/*.py - - pylint whatformat/*.py whatformat/util/*.py + - bandit whatformat/*.py whatformat/util/*.py + - flake8 --config=.flake8 whatformat/*.py whatformat/util/*.py + - mypy whatformat/*.py whatformat/util/*.py + - pydocstyle whatformat/*.py whatformat/util/*.py + - pylint whatformat/*.py whatformat/util/*.py test: + stage: test + before_script: + - pip install -r requirements-dev.txt script: - - python3 -m unittest + - python3 -m unittest + +build_image: + stage: build + image: + name: gcr.io/kaniko-project/executor:debug + entrypoint: [""] + variables: + IMAGE_TAG: $CI_REGISTRY_IMAGE:$CI_COMMIT_REF_SLUG + script: + - echo "{\"auths\":{\"$CI_REGISTRY\":{\"username\":\"$CI_REGISTRY_USER\",\"password\":\"$CI_REGISTRY_PASSWORD\"}}}" > /kaniko/.docker/config.json + - /kaniko/executor --context $CI_PROJECT_DIR --dockerfile $CI_PROJECT_DIR/Dockerfile --destination $CI_REGISTRY_IMAGE:$CI_COMMIT_TAG + only: + - tags diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..f3356b1 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,9 @@ +FROM python:3-buster +WORKDIR /opt/whatformat + +COPY / /opt/whatformat +RUN pip install -r /opt/whatformat/requirements.txt + +CMD gunicorn -w 4 -b 0.0.0.0:80 whatformat.app:app + +EXPOSE 80/tcp diff --git a/requirements.txt b/requirements.txt index 4352144..2b1f4ac 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,3 +1,4 @@ python-dateutil==2.8.1 Flask==1.1.1 Flask-Caching==1.8.0 +gunicorn==20.0.4 -- GitLab