PSU-Base
Reusable Django app specifically for PSU's custom-built web applications.
It encapsulates the common functionality that we would otherwise need to program into each application we build.
Features include:
- PSU Single Sign-On (SSO)
- Authentication and authorization features
- Feature toggles
- Template tags for our static content server
Quick Start
Dependencies
The following dependencies may be REQUIRED in your system:
libpq-devsudo apt install libpq-dev
Start a PSU Base Enabled Project
django-admin.py startproject \
--template=*some-path-to*/psu-base-template.zip \
--extension=py,md,env \
my_project_name
Configuring Your App
After starting a new project from the custom template (above):
cd my_project_namepip install -r requirements.txt- Review/Update the application metadata in settings.py
- Run migrations:
python manage.py migrate
If you have the PSU Secret Key file, your site was configured to access Finti's test server. This will need to be overwritten in local_settings.py eventually. If you do not have the PSU Secret Key file, you'll need to set these prior to running your app.
Usage
Usage of the psu-base app is documented in Confluence.
For Developers
The version number must be updated for every PyPi release.
The version number is in psu_base/__init__.py
Document Changes
Record every change in docs/CHANGELOG.txt Document new features or significant changes to existing features in Confluence.
Publishing to PyPi
- Create accounts on PyPi and Test PyPi
- Create
~/.pypirc[distutils] index-servers= pypi testpypi [testpypi] repository: https://test.pypi.org/legacy/ username: mikegostomski password: pa$$w0rd [pypi] username: mikegostomski password: pa$$w0rd - Ask an existing developer to add you as a collaborator - test and/or prod
python setup.py sdist bdist_wheel --universaltwine upload --repository testpypi dist/*twine upload dist/*- Tag the release in Git. Don't forget to push the tag! Example:
git tag 0.1.2
git push origin 0.1.2
Metadata
Release files for psu-base 1.3.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| psu_base-1.3.1-py3-none-any.whl | Python 3 | none | any | Details |
Release files / psu_base-1.3.1-py3-none-any.whl
| Download URL | psu_base-1.3.1-py3-none-any.whl |
|---|---|
| Size | 151.7 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
a858c47a15ba41c99eb82645b876a724e168f28ca74f19eead27042f3e4c5fd5
|
|
BLAKE2b-256 checksum How to use checksums |
65ece556f921efd4fa7699b0513dd437ad977a52124992ec0c763fa6e37506e9
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.2 CPython/3.8.10
|
Security for psu-base 1.3.1
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.