diff --git a/.idea/runConfigurations/docker_compose_up_django.xml b/.idea/runConfigurations/Local.xml
similarity index 55%
rename from .idea/runConfigurations/docker_compose_up_django.xml
rename to .idea/runConfigurations/Local.xml
index dc9cd29..1b625bc 100644
--- a/.idea/runConfigurations/docker_compose_up_django.xml
+++ b/.idea/runConfigurations/Local.xml
@@ -1,16 +1,18 @@
-
+
-
+
-
\ No newline at end of file
+
diff --git a/.idea/runConfigurations/migrate.xml b/.idea/runConfigurations/migrate.xml
index 448a6eb..e3bbf11 100644
--- a/.idea/runConfigurations/migrate.xml
+++ b/.idea/runConfigurations/migrate.xml
@@ -12,13 +12,16 @@
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
@@ -27,6 +30,6 @@
-
+
diff --git a/compose/local/django/start b/compose/local/django/start
index f076ee5..df27b71 100644
--- a/compose/local/django/start
+++ b/compose/local/django/start
@@ -6,4 +6,4 @@ set -o nounset
python manage.py migrate
-python manage.py runserver_plus 0.0.0.0:8000
+python manage.py runserver 0.0.0.0:8000
diff --git a/compose/local/docs/Dockerfile b/compose/local/docs/Dockerfile
deleted file mode 100644
index 6f1bb8b..0000000
--- a/compose/local/docs/Dockerfile
+++ /dev/null
@@ -1,64 +0,0 @@
-ARG PYTHON_VERSION=3.9-slim-bullseye
-
-# define an alias for the specfic python version used in this file.
-FROM python:${PYTHON_VERSION} as python
-
-
-# Python build stage
-FROM python as python-build-stage
-
-ENV PYTHONDONTWRITEBYTECODE 1
-
-RUN apt-get update && apt-get install --no-install-recommends -y \
- # dependencies for building Python packages
- build-essential \
- # psycopg2 dependencies
- libpq-dev \
- # cleaning up unused files
- && apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false \
- && rm -rf /var/lib/apt/lists/*
-
-# Requirements are installed here to ensure they will be cached.
-COPY ./requirements /requirements
-
-# create python dependency wheels
-RUN pip wheel --no-cache-dir --no-deps --wheel-dir /usr/src/app/wheels \
- -r /requirements/local.txt -r /requirements/production.txt \
- && rm -rf /requirements
-
-
-# Python 'run' stage
-FROM python as python-run-stage
-
-ARG BUILD_ENVIRONMENT
-ENV PYTHONUNBUFFERED 1
-ENV PYTHONDONTWRITEBYTECODE 1
-
-RUN apt-get update && apt-get install --no-install-recommends -y \
- # To run the Makefile
- make \
- # psycopg2 dependencies
- libpq-dev \
- # Translations dependencies
- gettext \
- # Uncomment below lines to enable Sphinx output to latex and pdf
- # texlive-latex-recommended \
- # texlive-fonts-recommended \
- # texlive-latex-extra \
- # latexmk \
- # cleaning up unused files
- && apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false \
- && rm -rf /var/lib/apt/lists/*
-
-# copy python dependency wheels from python-build-stage
-COPY --from=python-build-stage /usr/src/app/wheels /wheels
-
-# use wheels to install python dependencies
-RUN pip install --no-cache /wheels/* \
- && rm -rf /wheels
-
-COPY ./compose/local/docs/start /start-docs
-RUN sed -i 's/\r$//g' /start-docs
-RUN chmod +x /start-docs
-
-WORKDIR /docs
diff --git a/compose/local/docs/start b/compose/local/docs/start
deleted file mode 100644
index fd2e0de..0000000
--- a/compose/local/docs/start
+++ /dev/null
@@ -1,7 +0,0 @@
-#!/bin/bash
-
-set -o errexit
-set -o pipefail
-set -o nounset
-
-make livehtml
diff --git a/docs/Makefile b/docs/Makefile
deleted file mode 100644
index 6957700..0000000
--- a/docs/Makefile
+++ /dev/null
@@ -1,29 +0,0 @@
-# Minimal makefile for Sphinx documentation
-#
-
-# You can set these variables from the command line, and also
-# from the environment for the first two.
-SPHINXOPTS ?=
-SPHINXBUILD ?= sphinx-build
-SOURCEDIR = .
-BUILDDIR = ./_build
-APP = /app
-
-.PHONY: help livehtml apidocs Makefile
-
-# Put it first so that "make" without argument is like "make help".
-help:
- @$(SPHINXBUILD) -M help "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O) -c .
-
-# Build, watch and serve docs with live reload
-livehtml:
- sphinx-autobuild -b html --host 0.0.0.0 --port 9000 --watch $(APP) -c . $(SOURCEDIR) $(BUILDDIR)/html
-
-# Outputs rst files from django application code
-apidocs:
- sphinx-apidoc -o $(SOURCEDIR)/api $(APP)
-
-# Catch-all target: route all unknown targets to Sphinx using the new
-# "make mode" option. $(O) is meant as a shortcut for $(SPHINXOPTS).
-%: Makefile
- @$(SPHINXBUILD) -M $@ "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O) -c .
diff --git a/docs/__init__.py b/docs/__init__.py
deleted file mode 100644
index 8772c82..0000000
--- a/docs/__init__.py
+++ /dev/null
@@ -1 +0,0 @@
-# Included so that Django's startproject comment runs against the docs directory
diff --git a/docs/conf.py b/docs/conf.py
deleted file mode 100644
index 610663e..0000000
--- a/docs/conf.py
+++ /dev/null
@@ -1,63 +0,0 @@
-# Configuration file for the Sphinx documentation builder.
-#
-# This file only contains a selection of the most common options. For a full
-# list see the documentation:
-# https://www.sphinx-doc.org/en/master/usage/configuration.html
-
-# -- Path setup --------------------------------------------------------------
-
-# If extensions (or modules to document with autodoc) are in another directory,
-# add these directories to sys.path here. If the directory is relative to the
-# documentation root, use os.path.abspath to make it absolute, like shown here.
-
-import os
-import sys
-
-import django
-
-if os.getenv("READTHEDOCS", default=False) == "True":
- sys.path.insert(0, os.path.abspath(".."))
- os.environ["DJANGO_READ_DOT_ENV_FILE"] = "True"
- os.environ["USE_DOCKER"] = "no"
-else:
- sys.path.insert(0, os.path.abspath("/app"))
-os.environ["DATABASE_URL"] = "sqlite:///readthedocs.db"
-os.environ.setdefault("DJANGO_SETTINGS_MODULE", "config.settings.local")
-django.setup()
-
-# -- Project information -----------------------------------------------------
-
-project = "BenchCoach"
-copyright = """2022, Anthony Correa"""
-author = "Anthony Correa"
-
-
-# -- General configuration ---------------------------------------------------
-
-# Add any Sphinx extension module names here, as strings. They can be
-# extensions coming with Sphinx (named 'sphinx.ext.*') or your custom
-# ones.
-extensions = [
- "sphinx.ext.autodoc",
- "sphinx.ext.napoleon",
-]
-
-# Add any paths that contain templates here, relative to this directory.
-# templates_path = ["_templates"]
-
-# List of patterns, relative to source directory, that match files and
-# directories to ignore when looking for source files.
-# This pattern also affects html_static_path and html_extra_path.
-exclude_patterns = ["_build", "Thumbs.db", ".DS_Store"]
-
-# -- Options for HTML output -------------------------------------------------
-
-# The theme to use for HTML and HTML Help pages. See the documentation for
-# a list of builtin themes.
-#
-html_theme = "alabaster"
-
-# Add any paths that contain custom static files (such as style sheets) here,
-# relative to this directory. They are copied after the builtin static files,
-# so a file named "default.css" will overwrite the builtin "default.css".
-# html_static_path = ["_static"]
diff --git a/docs/howto.rst b/docs/howto.rst
deleted file mode 100644
index 9888d48..0000000
--- a/docs/howto.rst
+++ /dev/null
@@ -1,38 +0,0 @@
-How To - Project Documentation
-======================================================================
-
-Get Started
-----------------------------------------------------------------------
-
-Documentation can be written as rst files in `benchcoach/docs`.
-
-
-To build and serve docs, use the commands::
-
- docker-compose -f local.yml up docs
-
-
-
-Changes to files in `docs/_source` will be picked up and reloaded automatically.
-
-`Sphinx `_ is the tool used to build documentation.
-
-Docstrings to Documentation
-----------------------------------------------------------------------
-
-The sphinx extension `apidoc `_ is used to automatically document code using signatures and docstrings.
-
-Numpy or Google style docstrings will be picked up from project files and available for documentation. See the `Napoleon `_ extension for details.
-
-For an in-use example, see the `page source <_sources/users.rst.txt>`_ for :ref:`users`.
-
-To compile all docstrings automatically into documentation source files, use the command:
- ::
-
- make apidocs
-
-
-This can be done in the docker container:
- ::
-
- docker run --rm docs make apidocs
diff --git a/docs/index.rst b/docs/index.rst
deleted file mode 100644
index 94a4f57..0000000
--- a/docs/index.rst
+++ /dev/null
@@ -1,24 +0,0 @@
-.. BenchCoach documentation master file, created by
- sphinx-quickstart.
- You can adapt this file completely to your liking, but it should at least
- contain the root `toctree` directive.
-
-Welcome to BenchCoach's documentation!
-======================================================================
-
-.. toctree::
- :maxdepth: 2
- :caption: Contents:
-
- howto
- pycharm/configuration
- users
-
-
-
-Indices and tables
-==================
-
-* :ref:`genindex`
-* :ref:`modindex`
-* :ref:`search`
diff --git a/docs/make.bat b/docs/make.bat
deleted file mode 100644
index acb9332..0000000
--- a/docs/make.bat
+++ /dev/null
@@ -1,46 +0,0 @@
-@ECHO OFF
-
-pushd %~dp0
-
-REM Command file for Sphinx documentation
-
-
-if "%SPHINXBUILD%" == "" (
- set SPHINXBUILD=sphinx-build -c .
-)
-set SOURCEDIR=_source
-set BUILDDIR=_build
-set APP=..\benchcoach
-
-if "%1" == "" goto help
-
-%SPHINXBUILD% >NUL 2>NUL
-if errorlevel 9009 (
- echo.
- echo.The 'sphinx-build' command was not found. Make sure you have Sphinx
- echo.installed, then set the SPHINXBUILD environment variable to point
- echo.to the full path of the 'sphinx-build' executable. Alternatively you
- echo.may add the Sphinx directory to PATH.
- echo.
- echo.Install sphinx-autobuild for live serving.
- echo.If you don't have Sphinx installed, grab it from
- echo.http://sphinx-doc.org/
- exit /b 1
-)
-
-%SPHINXBUILD% -b %1 %SOURCEDIR% %BUILDDIR% %SPHINXOPTS% %O%
-goto end
-
-:livehtml
-sphinx-autobuild -b html --open-browser -p 9000 --watch %APP% -c . %SOURCEDIR% %BUILDDIR%/html
-GOTO :EOF
-
-:apidocs
-sphinx-apidoc -o %SOURCEDIR%/api %APP%
-GOTO :EOF
-
-:help
-%SPHINXBUILD% -b help %SOURCEDIR% %BUILDDIR% %SPHINXOPTS% %O%
-
-:end
-popd
diff --git a/docs/pycharm/configuration.rst b/docs/pycharm/configuration.rst
deleted file mode 100644
index a662467..0000000
--- a/docs/pycharm/configuration.rst
+++ /dev/null
@@ -1,70 +0,0 @@
-Docker Remote Debugging
-=======================
-
-To connect to python remote interpreter inside docker, you have to make sure first, that Pycharm is aware of your docker.
-
-Go to *Settings > Build, Execution, Deployment > Docker*. If you are on linux, you can use docker directly using its socket `unix:///var/run/docker.sock`, if you are on Windows or Mac, make sure that you have docker-machine installed, then you can simply *Import credentials from Docker Machine*.
-
-.. image:: images/1.png
-
-Configure Remote Python Interpreter
------------------------------------
-
-This repository comes with already prepared "Run/Debug Configurations" for docker.
-
-.. image:: images/2.png
-
-But as you can see, at the beginning there is something wrong with them. They have red X on django icon, and they cannot be used, without configuring remote python interpreter. To do that, you have to go to *Settings > Build, Execution, Deployment* first.
-
-
-Next, you have to add new remote python interpreter, based on already tested deployment settings. Go to *Settings > Project > Project Interpreter*. Click on the cog icon, and click *Add Remote*.
-
-.. image:: images/3.png
-
-Switch to *Docker Compose* and select `local.yml` file from directory of your project, next set *Service name* to `django`
-
-.. image:: images/4.png
-
-Having that, click *OK*. Close *Settings* panel, and wait few seconds...
-
-.. image:: images/7.png
-
-After few seconds, all *Run/Debug Configurations* should be ready to use.
-
-.. image:: images/8.png
-
-**Things you can do with provided configuration**:
-
-* run and debug python code
-
-.. image:: images/f1.png
-
-* run and debug tests
-
-.. image:: images/f2.png
-.. image:: images/f3.png
-
-* run and debug migrations or different django management commands
-
-.. image:: images/f4.png
-
-* and many others..
-
-Known issues
-------------
-
-* Pycharm hangs on "Connecting to Debugger"
-
-.. image:: images/issue1.png
-
-This might be fault of your firewall. Take a look on this ticket - https://youtrack.jetbrains.com/issue/PY-18913
-
-* Modified files in `.idea` directory
-
-Most of the files from `.idea/` were added to `.gitignore` with a few exceptions, which were made, to provide "ready to go" configuration. After adding remote interpreter some of these files are altered by PyCharm:
-
-.. image:: images/issue2.png
-
-In theory you can remove them from repository, but then, other people will lose a ability to initialize a project from provided configurations as you did. To get rid of this annoying state, you can run command::
-
- $ git update-index --assume-unchanged benchcoach.iml
diff --git a/docs/pycharm/images/1.png b/docs/pycharm/images/1.png
deleted file mode 100644
index 06908a1..0000000
Binary files a/docs/pycharm/images/1.png and /dev/null differ
diff --git a/docs/pycharm/images/2.png b/docs/pycharm/images/2.png
deleted file mode 100644
index 1fb8cf1..0000000
Binary files a/docs/pycharm/images/2.png and /dev/null differ
diff --git a/docs/pycharm/images/3.png b/docs/pycharm/images/3.png
deleted file mode 100644
index 32c9335..0000000
Binary files a/docs/pycharm/images/3.png and /dev/null differ
diff --git a/docs/pycharm/images/4.png b/docs/pycharm/images/4.png
deleted file mode 100644
index cf07f9d..0000000
Binary files a/docs/pycharm/images/4.png and /dev/null differ
diff --git a/docs/pycharm/images/7.png b/docs/pycharm/images/7.png
deleted file mode 100644
index 4f8807e..0000000
Binary files a/docs/pycharm/images/7.png and /dev/null differ
diff --git a/docs/pycharm/images/8.png b/docs/pycharm/images/8.png
deleted file mode 100644
index 05946f2..0000000
Binary files a/docs/pycharm/images/8.png and /dev/null differ
diff --git a/docs/pycharm/images/f1.png b/docs/pycharm/images/f1.png
deleted file mode 100644
index 2d8c4b6..0000000
Binary files a/docs/pycharm/images/f1.png and /dev/null differ
diff --git a/docs/pycharm/images/f2.png b/docs/pycharm/images/f2.png
deleted file mode 100644
index b123a47..0000000
Binary files a/docs/pycharm/images/f2.png and /dev/null differ
diff --git a/docs/pycharm/images/f3.png b/docs/pycharm/images/f3.png
deleted file mode 100644
index 713ab54..0000000
Binary files a/docs/pycharm/images/f3.png and /dev/null differ
diff --git a/docs/pycharm/images/f4.png b/docs/pycharm/images/f4.png
deleted file mode 100644
index 11668ec..0000000
Binary files a/docs/pycharm/images/f4.png and /dev/null differ
diff --git a/docs/pycharm/images/issue1.png b/docs/pycharm/images/issue1.png
deleted file mode 100644
index 1bb68ee..0000000
Binary files a/docs/pycharm/images/issue1.png and /dev/null differ
diff --git a/docs/pycharm/images/issue2.png b/docs/pycharm/images/issue2.png
deleted file mode 100644
index 174f6fd..0000000
Binary files a/docs/pycharm/images/issue2.png and /dev/null differ
diff --git a/docs/users.rst b/docs/users.rst
deleted file mode 100644
index 18b2bac..0000000
--- a/docs/users.rst
+++ /dev/null
@@ -1,15 +0,0 @@
- .. _users:
-
-Users
-======================================================================
-
-Starting a new project, it’s highly recommended to set up a custom user model,
-even if the default User model is sufficient for you.
-
-This model behaves identically to the default user model,
-but you’ll be able to customize it in the future if the need arises.
-
-.. automodule:: benchcoach.users.models
- :members:
- :noindex:
-
diff --git a/linode.yml b/linode.yml
deleted file mode 100644
index 89aa407..0000000
--- a/linode.yml
+++ /dev/null
@@ -1,86 +0,0 @@
-version: '3'
-
-volumes:
- benchcoach_local_postgres_data: {}
- benchcoach_local_postgres_data_backups: {}
- certs: {}
- vhost: {}
- html: {}
- acme: {}
-
-services:
- django:
- build:
- context: .
- dockerfile: ./compose/linode/django/Dockerfile
- image: benchcoach_local_django
- container_name: benchcoach_local_django
- platform: linux/x86_64
- depends_on:
- - postgres
- volumes:
- - /root/teamsnap-benchcoach:/app:z
- env_file:
- - ./.envs/.linode/.django
- - ./.envs/.linode/.postgres
- ports:
- - "8000:8000"
- command: /start
-
- postgres:
- build:
- context: .
- dockerfile: ./compose/production/postgres/Dockerfile
- image: benchcoach_production_postgres
- container_name: benchcoach_local_postgres
- volumes:
- - benchcoach_local_postgres_data:/var/lib/postgresql/data:Z
- - benchcoach_local_postgres_data_backups:/backups:z
- env_file:
- - ./.envs/.linode/.postgres
-
- docs:
- image: benchcoach_local_docs
- container_name: benchcoach_local_docs
- platform: linux/x86_64
- build:
- context: .
- dockerfile: ./compose/linode/docs/Dockerfile
- env_file:
- - ./.envs/.linode/.django
- volumes:
- - /root/teamsnap-benchcoach/docs:/docs:z
- - /root/teamsnap-benchcoach/config:/app/config:z
- - /root/teamsnap-benchcoach/benchcoach:/app/benchcoach:z
- ports:
- - "9000:9000"
- command: /start-docs
-
- nginx-proxy:
- image: jwilder/nginx-proxy:alpine
- container_name: nginx-proxy
- ports:
- - "80:80"
- - "443:443"
- volumes:
- - /var/run/docker.sock:/tmp/docker.sock:ro
- - certs:/etc/nginx/certs
- - vhost:/etc/nginx/vhost.d
- - html:/usr/share/nginx/html
- env_file:
- - ./.envs/.linode/.nginx-proxy
- restart: always
- depends_on:
- - django
-
- nginx-proxy-acme:
- image: nginxproxy/acme-companion
- container_name: nginx-proxy-acme
- volumes_from:
- - nginx-proxy
- volumes:
- - /var/run/docker.sock:/var/run/docker.sock:ro
- - certs:/etc/nginx/certs:rw
- - acme:/etc/acme.sh
- env_file:
- - ./.envs/.linode/.nginx-proxy-acme
diff --git a/local.yml b/local.yml
index 5490eeb..1a479fc 100644
--- a/local.yml
+++ b/local.yml
@@ -19,39 +19,22 @@ services:
env_file:
- ./.envs/.local/.django
- ./.envs/.local/.postgres
- ports:
- - "8000:8000"
command: /start
postgres:
build:
context: .
dockerfile: ./compose/production/postgres/Dockerfile
- image: benchcoach_production_postgres
+ image: benchcoach_local_postgres
container_name: benchcoach_local_postgres
+ ports:
+ - "5432:5432"
volumes:
- - benchcoach_local_postgres_data:/var/lib/postgresql/data:Z
- - benchcoach_local_postgres_data_backups:/backups:z
+ - benchcoach_local_postgres_data:/var/lib/postgresql/data
+ - benchcoach_local_postgres_data_backups:/backups
env_file:
- ./.envs/.local/.postgres
- docs:
- image: benchcoach_local_docs
- container_name: benchcoach_local_docs
- platform: linux/amd64
- build:
- context: .
- dockerfile: ./compose/local/docs/Dockerfile
- env_file:
- - ./.envs/.local/.django
- volumes:
- - ./docs:/docs:z
- - ./config:/app/config:z
- - ./benchcoach:/app/benchcoach:z
- ports:
- - "9000:9000"
- command: /start-docs
-
nginx-proxy:
image: jwilder/nginx-proxy:alpine
container_name: nginx-proxy
@@ -64,3 +47,5 @@ services:
restart: always
depends_on:
- django
+ env_file:
+ - ./.envs/.local/.nginx-proxy
diff --git a/nas.yml b/nas.yml
deleted file mode 100644
index 9d0387b..0000000
--- a/nas.yml
+++ /dev/null
@@ -1,66 +0,0 @@
-version: '3'
-
-volumes:
- benchcoach_local_postgres_data: {}
- benchcoach_local_postgres_data_backups: {}
-
-services:
- django:
- build:
- context: .
- dockerfile: ./compose/local/django/Dockerfile
- image: benchcoach_local_django
- container_name: benchcoach_local_django
- platform: linux/x86_64
- depends_on:
- - postgres
- volumes:
- - /volume1/docker/benchcoach_nas:/app:z
- env_file:
- - ./.envs/.local/.django
- - ./.envs/.local/.postgres
- ports:
- - "8000:8000"
- command: /start
-
- postgres:
- build:
- context: .
- dockerfile: ./compose/production/postgres/Dockerfile
- image: benchcoach_production_postgres
- container_name: benchcoach_local_postgres
- volumes:
- - benchcoach_local_postgres_data:/var/lib/postgresql/data:Z
- - benchcoach_local_postgres_data_backups:/backups:z
- env_file:
- - ./.envs/.local/.postgres
-
- docs:
- image: benchcoach_local_docs
- container_name: benchcoach_local_docs
- platform: linux/x86_64
- build:
- context: .
- dockerfile: ./compose/local/docs/Dockerfile
- env_file:
- - ./.envs/.local/.django
- volumes:
- - /volume1/docker/benchcoach_nas/docs:/docs:z
- - /volume1/docker/benchcoach_nas/config:/app/config:z
- - /volume1/docker/benchcoach_nas/benchcoach:/app/benchcoach:z
- ports:
- - "9000:9000"
- command: /start-docs
-
- nginx-proxy:
- image: jwilder/nginx-proxy:alpine
- container_name: nginx-proxy
- ports:
- - "8001:80"
- - "8002:443"
- volumes:
- - /var/run/docker.sock:/tmp/docker.sock:ro
- - /volume1/docker/benchcoach_nas/certs:/etc/nginx/certs
- restart: always
- depends_on:
- - django
diff --git a/production.yml b/production.yml
index 1dc6515..1443183 100644
--- a/production.yml
+++ b/production.yml
@@ -1,5 +1,5 @@
version: '3'
-
+name: benchcoach
volumes:
production_postgres_data: {}
production_postgres_data_backups: {}