Skip to content
master
Go to file
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

README.md

Build Status

NaNNaNNaNNaNNaNNaNNaNNaN Hackman!

The Dim Sum Labs payment, door and membership system. Allows members to register their (cash or paypal) payment and receive login credentials. These can be used to open the door via either web interface or rfid card.

The system's workflow

payments

  1. The dsl-accounts repository is updated by the space orga when payments are made.
  2. The hackman-paymentimport service (included here) downloads the dsl-accounts data every hour.

missing payments

If there is an issue with the paymentimport or the space orga have missed an update. You can submit that you have paid.

  1. Go to http://door/ and log in with your credentials.
  2. Go to Account actions
  3. Select the month you are paying for and inform the door of your payment

Note: Informing the door this way is temporary and will only last until the next payment import.

To-Do

  • Continuous deployment based on Travis-ci builds
  • UDEV-based autostart for the components that depend on hardware:
    • hackman-rfidd expects to find a usb serial adaptor
    • dsl-lights expects to find a pimoroni Mote Host USB device

Prerequisites

  • Debian buster or newer (requires Python 3.5)

Installation on raspberry pi

These steps can be quite slow to complete - the ansible system uses quite a lot of CPU and RAM, which can be in short supply on the Raspberry Pi.

The intent is to have a documented process that depends only on the Raspberry Pi hardware and thus can be easily tested or trialed. That being said, there are several ways to speed up or otherwise improve on this in the future.

  1. Start with a fresh raspian lite buster install image, with ssh enabled
  2. Dont forget to change the passwords and set up any extra users on the pi
  3. sudo apt-get update && sudo apt-get -y upgrade
  4. sudo apt-get -y install git ansible
  5. git clone this repo into a convinient place ( e.g ~/hackman )
  6. cd into the repo
  7. ansible-playbook ansible-installer.yml
  8. If replacing an old system, restore the old database to /var/www/hackman/db/db.sqlite3
  9. Add the ~hackman/.ssh/id_ed25519.pub to the root@door-backup.dsl authorised keys
  10. Add the door-backup.dsl ssh host key to the ~hackman/.ssh/known_hosts
  11. reboot to activate all changes
  12. Never run anything manually again \o/

Upgrades

  1. Ensure the CI tests are showing green (See the top of this README)
  2. ssh to door system
  3. cd into the repo
  4. git pull
  5. ansible-playbook ansible-installer.yml
  6. systemctl restart hackman
  7. systemctl restart hackman-doord
  8. systemctl restart hackman-rfidd

About

No description, website, or topics provided.

Resources

Releases

No releases published

Packages

No packages published
You can’t perform that action at this time.