Files @ 02efd52c4883
Branch filter:

Location: website/README.md

bsturmfels
Update README - overview, licenses and Ansible
# Software Freedom Conservancy website

This is a Python/[Django](https://www.djangoproject.com/)-based website that
runs [sfconservancy.org](https://sfconservancy.org).


## 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. JavaScript source is generally
[GPLv3](GPLv3)-or-later. See the notices at the top of each Javascript file for
specific 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/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.