70 lines
2.1 KiB
Markdown
70 lines
2.1 KiB
Markdown
# maidstone-hackspace
|
|
Repository for the maidstone hackspace website
|
|
|
|
To get started checkout the project to your machine.
|
|
|
|
git clone https://github.com/olymk2/maidstone-hackspace.git
|
|
|
|
To suggest changes to the site hit the fork button on the github page, then make your changes in your own branch when your ready
|
|
push your changes to your github account and create a pull request back into the main branch where it can be reviewed and merged
|
|
if everything is okay.
|
|
|
|
|
|
The simplest way to setup this site is to use docker-compose so please install that from this site https://docs.docker.com/engine/installation/
|
|
and make sure the quick start guide works https://docs.docker.com/machine/get-started/ then you can use the commands below to test and make changes.
|
|
|
|
docker-compose up
|
|
|
|
docker volume create --name sockets
|
|
docker run -it -v /etc/uwsgi/apps-enabled/:/etc/uwsgi/apps-enabled/ -v /var/www:/var/www -v sockets:/data/sockets --name mhackspace olymk2/mhackspace
|
|
|
|
If you plan on making large changes consider discussing it first so you dont waste your own time.
|
|
|
|
Generating static content
|
|
-------------------------
|
|
|
|
Most of the content is generated statically to avoid hitting a database on each request.
|
|
|
|
To generate static content you can run the code below.
|
|
|
|
``` python generate.py ```
|
|
|
|
|
|
Testing the payment systems
|
|
---------------------------
|
|
|
|
Both paypal and gocardless clearly show that you are using the sandbox in the url.
|
|
|
|
for paypal you can use this email and password
|
|
|
|
email = contact-buyer@maidstone-hackspace.org.uk
|
|
password = Mhackspace
|
|
|
|
To test the gocardless integration you can use these card details
|
|
|
|
sortcode = 200000
|
|
account number = 55779911
|
|
|
|
Run locally with uwsgi on port 9090
|
|
|
|
uwsgi --plugins python --http-socket :9090 -w wsgi
|
|
|
|
Run locally with flask
|
|
|
|
python index.py
|
|
|
|
|
|
Developers recommendations
|
|
--------------------------
|
|
|
|
To run the tests you can use one of the following
|
|
|
|
````
|
|
nose2
|
|
python -m unittest discover
|
|
````
|
|
|
|
run this in the root to setup pre commit checks, it will run unit tests and check code
|
|
|
|
ln -s developers/pre-commit.sh .git/hooks/pre-commit
|