forked from pythonindia/junction
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Upgrade to Django 3.2 LTS and Dockerize junction (pythonindia#757)
* Upgrade Junction to Python 3.10 & Django 3.2 along with Social Login Fix (pythonindia#744) * Upgrade Python Version to 3.10 and Django Version 3.2 * Fix Github and Google Login/Signup * new package added to the requirements file * using f-strings Co-authored-by: @rohitchopra-epam * Fix unit tests add gunicorn (pythonindia#748) * Fix failing tests, Add gunicorn Added nox method for running gunicorn * Pin dependencies --------- Co-authored-by: Ananya Maiti <[email protected]> * Dockerize Junction (pythonindia#749) * Initial commit for Dockerization * Fix review comments and dockerignore * Update dev.py.sample with runsslserver * Fixes for using default settings module * Remove Dockerfile.celery and use image from junction web image * Update docker-compose.test.yml to not depend on postgres db * Add static asset compilation in Docker image * Add docker-compose.prod.yml and update server port configuration in application * Add social oauth env vars --------- Co-authored-by: Sanchit Balchandani <[email protected]> Co-authored-by: Ananya Maiti <[email protected]> * Add SITE_PREFIX env variable for site url prefix * Fix smtp setup for sending verification emails * Fix conference moderator filter * Fix template params fro absolute_url and is_proposal_reviewer * Add Django streamhandler logging with DEBUG (pythonindia#763) * Fix proposal comment template parameters Fix userprofile dashboard url * Add restart:always to containers * Fix comment creation error caused sparingly Add review_comments=False for default comment view for logged in user * Add password for Redis DB * Fixes pythonindia#765 Sort ProposalSection in descending order of creation date in ProposalSectionReviewer Add form * Add autocomplete_field for Proposal Reviewer to enable searcheable dropdown in add form * Update DEFAULT_FROM_EMAIL * Update common.py * Added username field in edit profile form (Issue-769) (pythonindia#771) Co-authored-by: Rajat Rajdeep <[email protected]> * Update Devlopment setup docs (pythonindia#773) * Update Devlopment setup docs * Instructions for setting up junction using Docker post junction upgrade. (pythonindia#761) * Added instructions in the ReadMe file for setting up junction using Docker post junction upgrade. * Updated the psycopg version to resolve - SCRAM authentication requires libpq version 10 issue. --------- Co-authored-by: Rajat Rajdeep <[email protected]> --------- Co-authored-by: Ananya Maiti <[email protected]> Co-authored-by: Rajat Rajdeep <[email protected]> Co-authored-by: Rajat Rajdeep <[email protected]> * Rename travis yml * Remove status badges from README --------- Co-authored-by: Bhandari423 <[email protected]> Co-authored-by: Ananya Maiti <[email protected]> Co-authored-by: Sanchit Balchandani <[email protected]> Co-authored-by: Rajat Rajdeep <[email protected]> Co-authored-by: Rajat Rajdeep <[email protected]>
- Loading branch information
1 parent
69afa7a
commit c4d8ba3
Showing
83 changed files
with
907 additions
and
344 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,50 @@ | ||
# .dockerignore | ||
|
||
# Ignore Python bytecode files | ||
__pycache__/ | ||
*.pyc | ||
*.pyo | ||
*.pyd | ||
|
||
# Ignore virtual environment directories | ||
venv/ | ||
*.virtualenv/ | ||
.env/ | ||
|
||
# Ignore Django migration files | ||
*/migrations/*.pyc | ||
*/migrations/__pycache__/ | ||
|
||
# Ignore logs | ||
logs/ | ||
*.log | ||
|
||
# Ignore configuration files | ||
*.ini | ||
|
||
# Ignore user-specific files (e.g., editor settings) | ||
*.swp | ||
*.swo | ||
*.swn | ||
*.bak | ||
*.tmp | ||
*.sublime* | ||
*.vscode/ | ||
|
||
# Ignore local media files | ||
media/ | ||
|
||
# Ignore local database files (SQLite) | ||
*.sqlite3 | ||
*.sqlite3-journal | ||
|
||
# Ignore test coverage reports | ||
.coverage | ||
htmlcov/ | ||
|
||
# Ignore build artifacts and distribution files | ||
build/ | ||
dist/ | ||
*.egg-info/ | ||
*.egg | ||
*.wheel |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,27 @@ | ||
DEBUG=TRUE | ||
POSTGRES_USER=postgres | ||
POSTGRES_PASSWORD=junction | ||
POSTGRES_DB=junction | ||
HOST_NAME=db | ||
DB_PORT=5432 | ||
REDIS_HOST_PASSWORD=password | ||
BROKER_URL=redis://:password@redis:6379/0 | ||
CELERY_RESULT_BACKEND=redis://:password@redis:6379/0 | ||
SITE_PREFIX= | ||
SITE_NAME=junction | ||
SERVER_PORT=8888 | ||
GOOGLE_ANALYTICS_ID=google_analytics_id | ||
FACEBOOK_APP_ID=fb_app_id | ||
EMAIL_HOST_USER=email_host_user | ||
EMAIL_HOST_PASSWORD=email_host_pass | ||
SECRET_KEY=secret_key | ||
GITHUB_CLIENT_ID=github_client_id | ||
GITHUB_CLIENT_SECRET=github_client_secret | ||
GOOGLE_CLIENT_ID=google_oauth_client_id | ||
GOOGLE_CLIENT_SECRET=google_oauth_client_secret | ||
TWITTER_CONSUMER_KEY=twitter_consume_key | ||
TWITTER_CONSUMER_SECRET=twitter_consume_secret | ||
TWITTER_ACCESS_TOKEN_KEY=twitter_access_token | ||
TWITTER_ACCESS_TOKEN_SECRET=twitter_access_token_secret | ||
USE_ASYNC_FOR_EMAIL=boolean | ||
DJANGO_LOG_LEVEL=DEBUG |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -91,3 +91,6 @@ qr_files/ | |
.vscode/ | ||
|
||
tmp/ | ||
|
||
# Env | ||
.env |
File renamed without changes.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,32 @@ | ||
FROM python:3.10-slim-buster | ||
|
||
WORKDIR /code | ||
|
||
RUN apt-get update && \ | ||
apt-get install -y --no-install-recommends \ | ||
gcc \ | ||
postgresql-client \ | ||
build-essential \ | ||
nodejs \ | ||
npm \ | ||
libpq-dev && \ | ||
rm -rf /var/lib/apt/lists/* | ||
|
||
COPY requirements.txt /code/ | ||
RUN pip install --no-cache-dir -r requirements.txt | ||
|
||
# Install requirements for running tests | ||
COPY ./tools/requirements-test.txt /code/ | ||
RUN pip install --no-cache-dir -r requirements-test.txt | ||
|
||
RUN npm install -g yarn | ||
RUN npm install -g grunt-cli | ||
|
||
COPY . /code/ | ||
|
||
RUN chmod +x bin/install-static.sh | ||
RUN bin/install-static.sh | ||
# not getting used at this moment | ||
RUN chmod +x bin/wait-for-it.sh | ||
|
||
ENV PYTHONUNBUFFERED=1 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,5 @@ | ||
#!/bin/bash | ||
cd junction/static | ||
yarn install | ||
grunt less | ||
cd ../.. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,17 @@ | ||
#!/bin/bash | ||
# wait-for-it.sh: Wait for a service to be ready. | ||
|
||
set -e | ||
|
||
host="$1" | ||
port="$2" | ||
shift 2 | ||
cmd="$@" | ||
|
||
until PGPASSWORD="$POSTGRES_PASSWORD" psql -h "$host" -U "$POSTGRES_USER" -c '\q'; do | ||
>&2 echo "Postgres is unavailable - sleeping" | ||
sleep 1 | ||
done | ||
|
||
>&2 echo "Postgres is up - executing command" | ||
exec $cmd |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,46 @@ | ||
version: '3.8' | ||
|
||
services: | ||
db: | ||
image: postgres:15-alpine | ||
ports: | ||
- "5432:5432" | ||
restart: always | ||
volumes: | ||
- postgres_data:/var/lib/postgresql/data/ | ||
env_file: | ||
- .env | ||
|
||
redis: | ||
image: redis:latest | ||
ports: | ||
- "6379:6379" | ||
restart: always | ||
command: sh -c 'redis-server --requirepass ${REDIS_HOST_PASSWORD}' | ||
|
||
web: | ||
image: ananyo2012/junction:1.1 | ||
volumes: | ||
- .:/code | ||
ports: | ||
- "${SERVER_PORT}:${SERVER_PORT}" | ||
restart: always | ||
depends_on: | ||
- db | ||
env_file: | ||
- .env | ||
command: sh -c 'python manage.py migrate && python manage.py collectstatic --noinput --clear && gunicorn -c gunicorn.conf.py' | ||
|
||
celery: | ||
image: ananyo2012/junction:1.1 | ||
depends_on: | ||
- db | ||
- redis | ||
- web | ||
restart: always | ||
env_file: | ||
- .env | ||
command: sh -c 'celery -A junction worker -l info -E' | ||
|
||
volumes: | ||
postgres_data: |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,8 @@ | ||
version: '3.8' | ||
|
||
services: | ||
test: | ||
build: | ||
context: . | ||
dockerfile: Dockerfile | ||
command: sh -c pytest --cov=unit --cov=integrations --cov-report=html -v |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,49 @@ | ||
version: '3.8' | ||
|
||
services: | ||
db: | ||
image: postgres:15-alpine | ||
ports: | ||
- "5432:5432" | ||
restart: always | ||
volumes: | ||
- postgres_data:/var/lib/postgresql/data/ | ||
env_file: | ||
- .env | ||
|
||
redis: | ||
image: redis:latest | ||
ports: | ||
- "6379:6379" | ||
restart: always | ||
command: sh -c 'redis-server --requirepass ${REDIS_HOST_PASSWORD}' | ||
|
||
web: | ||
build: | ||
context: . | ||
dockerfile: Dockerfile | ||
image: junction_local | ||
volumes: | ||
- .:/code | ||
ports: | ||
- "${SERVER_PORT}:${SERVER_PORT}" | ||
restart: always | ||
depends_on: | ||
- db | ||
env_file: | ||
- .env | ||
command: sh -c 'python manage.py migrate && python manage.py runsslserver 0.0.0.0:${SERVER_PORT}' | ||
|
||
celery: | ||
image: junction_local | ||
depends_on: | ||
- db | ||
- redis | ||
- web | ||
restart: always | ||
env_file: | ||
- .env | ||
command: sh -c 'celery -A junction worker -l info -E' | ||
|
||
volumes: | ||
postgres_data: |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.