68 lines
1.8 KiB
Markdown
68 lines
1.8 KiB
Markdown
# Software Freedom Conservancy website
|
||
|
||
## Contributing
|
||
|
||
The canonical location for this repository is [on Conservancy’s
|
||
Kallithea instance](https://k.sfconservancy.org/website).
|
||
|
||
|
||
## License
|
||
|
||
The software included herein, such as the Python source files, are generally
|
||
licensed [AGPLv3](AGPLv3)-or-later. The Javascript is a hodgepodge of
|
||
licensing, but all of it is compatible with [AGPLv3](AGPLv3)-or-later. See
|
||
the notices at the top of each Javascript file for licensing details.
|
||
|
||
The content and text (such as the HTML files) is currently
|
||
[CC-BY-SA-3.0](CC-By-SA-3.0).
|
||
|
||
|
||
## Server configuration
|
||
|
||
Conservancy's webserver runs on a standard Debian installation. For
|
||
configuration requirements, see `deploy/ansible/install.yml`.
|
||
|
||
|
||
## CDN
|
||
|
||
Requests to any URL starting with `/videos/` are forwarded to our CDN server to
|
||
reduce bandwidth use. These files are uploaded to the CDN manually via the
|
||
Rackspace API. Note that the Apache rewrite rule requires that the file **not
|
||
exist** on disk for the redirect to be applied.
|
||
|
||
|
||
## Local development
|
||
|
||
Python dependencies in `requirements.txt` are tied to the versions available in
|
||
Debian:
|
||
|
||
python3 -m pip install -r requirements.txt
|
||
|
||
To run the tests, install `pytest-django` and run pytest:
|
||
|
||
python3 -m pip install pytest-django
|
||
python3 -m pytest
|
||
|
||
Then run:
|
||
|
||
python3 manage.py migrate
|
||
python3 manage.py runserver
|
||
|
||
There is also a Dockerfile available if that's more convenient. See that file
|
||
for details.
|
||
|
||
|
||
## Deploying
|
||
|
||
To deploy, run `bin/deploy`. This requires SSH access to `hickory.sfconservancy.org`.
|
||
|
||
|
||
## Link checking
|
||
|
||
To check for broken links in production, run:
|
||
|
||
bin/linkcheck
|
||
|
||
Note that the Apache configuration has a significant number of aliases and
|
||
redirects for historic URL changes which means that linkchecker may not run
|
||
cleanly in local development.
|