Skip to content

Commit

Permalink
docs: Better Stela use.
Browse files Browse the repository at this point in the history
Also add missing tests in GitHub Actions
  • Loading branch information
chrismaille committed Dec 27, 2023
1 parent de9a538 commit f34152f
Show file tree
Hide file tree
Showing 7 changed files with 20 additions and 14 deletions.
2 changes: 1 addition & 1 deletion .github/workflows/tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ jobs:
matrix:
os: [ubuntu-latest, macos-latest, windows-latest]
python-version: ["3.10", "3.11", "3.12"]
django-version: ["4.0", "4.1", "4.2"]
django-version: ["4.1", "4.2", "5.0"]
steps:
- uses: actions/checkout@v3
- name: Set up Python ${{ matrix.python-version }}
Expand Down
3 changes: 3 additions & 0 deletions docs/credentials.md
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,7 @@ After that, add them in your `settings.py` file:

```python
# settings.py
GOOGLE_SSO_ALLOWABLE_DOMAINS = ["your domain here"]
GOOGLE_SSO_CLIENT_ID = "your client id here"
GOOGLE_SSO_CLIENT_SECRET = "your client secret here"
GOOGLE_SSO_PROJECT_ID = "your project id here"
Expand All @@ -50,6 +51,7 @@ variables from a `.env.local` file, like this:

```ini
# .env.local
GOOGLE_SSO_ALLOWABLE_DOMAINS=["your domain here"]
GOOGLE_SSO_CLIENT_ID="your client id here"
GOOGLE_SSO_CLIENT_SECRET="your client secret here"
GOOGLE_SSO_PROJECT_ID="your project id here"
Expand All @@ -59,6 +61,7 @@ GOOGLE_SSO_PROJECT_ID="your project id here"
# Django settings.py
from stela import env

GOOGLE_SSO_ALLOWABLE_DOMAINS = env.GOOGLE_SSO_ALLOWABLE_DOMAINS
GOOGLE_SSO_CLIENT_ID = env.GOOGLE_SSO_CLIENT_ID
GOOGLE_SSO_CLIENT_SECRET = env.GOOGLE_SSO_CLIENT_SECRET
GOOGLE_SSO_PROJECT_ID = env.GOOGLE_SSO_PROJECT_ID
Expand Down
2 changes: 1 addition & 1 deletion example_google_app/.env
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
# Add here your settings and fake secrets. You can commit this file.
GOOGLE_SSO_ALLOWABLE_DOMAINS=gmail.com
GOOGLE_SSO_ALLOWABLE_DOMAINS=["gmail.com"]
GOOGLE_SSO_CLIENT_ID=999999999999-xxxxxxxxx.apps.googleusercontent.com
GOOGLE_SSO_CLIENT_SECRET=xxxxxx
GOOGLE_SSO_PROJECT_ID=999999999999
Expand Down
7 changes: 7 additions & 0 deletions example_google_app/.stela
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
[stela]
environment_variable_name = STELA_ENV
evaluate_data = True
show_logs = False
dotenv_overwrites_memory = False
env_file = .env
config_file_path = .
4 changes: 1 addition & 3 deletions example_google_app/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,14 +2,12 @@

## Start the Project

Please create a `.env` file with the following information:
Please create a `.env.local` file with the following information:

```dotenv
GOOGLE_SSO_ALLOWABLE_DOMAINS=gmail.com
GOOGLE_SSO_CLIENT_ID=<your web app client id>
GOOGLE_SSO_CLIENT_SECRET=<your web app client secret>
GOOGLE_SSO_PROJECT_ID=<your google project id>
GOOGLE_SSO_CALLBACK_DOMAIN=localhost:8000
```

Then run the following commands:
Expand Down
14 changes: 6 additions & 8 deletions example_google_app/settings.py
Original file line number Diff line number Diff line change
Expand Up @@ -59,7 +59,8 @@
"django.middleware.common.CommonMiddleware",
"django.middleware.csrf.CsrfViewMiddleware",
"django.contrib.auth.middleware.AuthenticationMiddleware",
"example_google_app.backend.GoogleSLOMiddlewareExample", # Must be after Authentication
# Must be after Authentication
"example_google_app.backend.GoogleSLOMiddlewareExample",
"django.contrib.messages.middleware.MessageMiddleware",
"django.middleware.clickjacking.XFrameOptionsMiddleware",
]
Expand Down Expand Up @@ -171,16 +172,13 @@
GOOGLE_SSO_PROJECT_ID = env.GOOGLE_SSO_PROJECT_ID
GOOGLE_SSO_CLIENT_SECRET = env.GOOGLE_SSO_CLIENT_SECRET

GOOGLE_SSO_ALLOWABLE_DOMAINS = env.get_or_default(
"GOOGLE_SSO_ALLOWABLE_DOMAINS", ""
).split(",")
GOOGLE_SSO_ALLOWABLE_DOMAINS = env.get_or_default("GOOGLE_SSO_ALLOWABLE_DOMAINS", [])
GOOGLE_SSO_AUTO_CREATE_FIRST_SUPERUSER = (
False # Mark as True, to create superuser on first eligible user login
)
GOOGLE_SSO_STAFF_LIST = env.get_or_default("GOOGLE_SSO_STAFF_LIST", "").split(",")
GOOGLE_SSO_SUPERUSER_LIST = env.get_or_default("GOOGLE_SSO_SUPERUSER_LIST", "").split(
","
)
GOOGLE_SSO_STAFF_LIST = env.get_or_default("GOOGLE_SSO_STAFF_LIST", [])
GOOGLE_SSO_SUPERUSER_LIST = env.get_or_default("GOOGLE_SSO_SUPERUSER_LIST", [])

GOOGLE_SSO_TIMEOUT = 10 # default value
GOOGLE_SSO_SCOPES = [
"openid",
Expand Down
2 changes: 1 addition & 1 deletion pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -54,7 +54,7 @@ classifiers = [
"Framework :: Django :: 4.2",
"Framework :: Django :: 5.0",
"Intended Audience :: Developers",
"Development Status :: 4 - Beta",
"Development Status :: 5 - Production/Stable",
"Environment :: Plugins"
]

Expand Down

0 comments on commit f34152f

Please sign in to comment.